Integration workflow · Updated September 2026

Volunteer Hours to Google Sheets: Review and Totals

The hours form records a claim about one activity and date. Google Sheets receives that submission for coordinator review. Reliable totals require a separate decision about which entries count, particularly when someone corrects an earlier entry or the delivery is repeated.

Prepare the hours form

Use Volunteer Hours Submission for one activity and calendar date at a time. It accepts decimal hours greater than zero and no more than 24. One hour and thirty minutes is 1.5 hours; an entry of 1.30 represents 1.3 hours, not a clock-style duration. Split activity spanning dates into separate entries.

Save the form, authorize Google Sheets in Integrations and open the spreadsheet Zunoform creates. The destination contains Responses, with automatic question columns. This integration is available on Free. Test a saved form with sample data; the public template preview does not send rows.

Keep source data and review data separate

Scroll sideways to read all three columns.

Incoming valueCoordinator review fieldRule to agree
Response IDSource referenceCount each accepted source response only once.
Volunteer name and contactVolunteer referenceResolve spelling differences through the coordinator; a name alone is not a reliable unique ID.
Activity date and programReviewed activity date and programConfirm which period and activity the entry belongs to.
Hours contributedNumeric reviewed hoursValidate the decimal value before including it in a total.
New entry or correction; correction explanationReplaces response ID and review statusExclude the superseded entry when accepting a replacement.

Convert hours deliberately before totaling

The current delivery writes answer values as text using Google Sheets RAW input. A number question therefore does not guarantee a numeric destination cell. In a separate Review tab, convert a verified decimal value to a number using the spreadsheet’s normal conversion tools, then check the result before aggregation. Check the spreadsheet locale when interpreting decimal separators.

Keep activity dates separate from submission timestamps. A volunteer can submit today for work completed earlier. If you report activity by month, group by the reviewed activity date rather than the date the response arrived. Preserve the original string so an unexpected conversion can be investigated.

Illustrative reconciliation before a monthly total

Scroll sideways to read all three columns.

Source entryReview decisionHours included
Response A: two hours on 4 SeptemberAccepted initially, then replaced by Response B0 after the replacement is accepted.
Response B: correction of A to 1.5 hoursAccepted; replacement reference recorded1.5.
Another delivery with Response ID BDuplicate delivery of the same source response0 additional hours.
Response C: one hour on 6 SeptemberAccepted as a separate activity1.0.
Response D: three hours awaiting clarificationPending coordinator review0 in an accepted-hours total; show separately as pending.

Explain the total and its limits

The illustrative accepted total is 2.5 hours: B plus C. Summing every received row would count the replaced entry, the duplicate and the pending claim. A useful report states the period, review status included and how corrections were handled. Receiving a form response does not certify service.

The correction branch collects an explanation; it does not overwrite an earlier row or find the original automatically. Give the coordinator a clear way to link the replacement. If the original cannot be identified, hold the correction for clarification instead of choosing a similar-looking row.

Validate the workflow

Why destination types need a check

Google documents RAW input as storing values without parsing them. Zunoform’s current Sheets worker sends strings, so conversion belongs in a reviewed calculation workflow.

Source: Google Sheets API: ValueInputOption

Start with the matching form

Questions people ask

Will a correction replace the original row?

No. It is a new response. A coordinator must link the original and exclude it when accepting the replacement.

Can I sum the incoming hours column directly?

First verify cell types and exclude pending, replaced and duplicate records. Keep the original source values and perform reviewed calculations separately.

What if a response is saved but no row appears?

Check that delivery is enabled and the correct spreadsheet is open. Provider failures can retry, but misconfiguration may skip delivery. Use the saved Response ID to reconcile any manual recovery.

Keep reading

Ready when you are

Better forms.
Better data.

Start with a conversation, a document or a single page. Unlimited forms and 500 responses per month on Free. No card required.