Most congregations and small nonprofits count attendance on a clipboard, and most of the time that is fine. It stops being fine when a funder asks for twelve months of numbers, when a safeguarding process requires knowing which children were present, or when the volunteer rota depends on remembering who actually turned up.
The obstacles here are specific: the budget is small or nil, the people scanning are volunteers who change every week, and nobody will install an app for a Sunday morning. Any solution that requires training or accounts fails on contact with reality.
Start with the free route
A Google Form linked to a Sheet costs nothing and works. Print a QR code that opens the Form, put it by the door, and people scan it with their own phone camera and submit. For a simple headcount this may be all you ever need, and we would rather say so than sell you something.
- Free permanently, with no cap on responses.
- Works with any phone camera and no install.
- Relies on each attendee having a phone, being willing to use it, and having signal in the building.
- No way to stop the same person submitting five times, or to tell that they did.
- A hall with thick walls and no wifi will silently lose submissions.
Church halls are unusually prone to dead signal — stone, steel and basements. If your building has a dead spot, test there specifically before relying on anything that submits over the network at the moment of scanning.
Where a scanner link fits
We build one, so read this as interested. The difference that matters for this setting is who does the scanning: instead of every attendee submitting a form on their own phone, one greeter holds a phone and scans people as they arrive. That inverts the reliability problem — you depend on one known device rather than two hundred unknown ones — and it keeps working with no signal because scans are stored on the device and sync later.
The cost shape matters for a nonprofit budget. QR to Sheets is free for 300 scans, one link and one device, then $7 per registered device per month with unlimited scans. A single door phone is one device. Two doors on a Sunday is two. Nobody pays per volunteer, which is the point — volunteers change constantly and per-user pricing would be unworkable.
| Capability | Google Forms / Apps Script (DIY) | QR to Sheets |
|---|---|---|
| Cost | Free (Google Form) | Free to 300 scans, then $7 per device per month |
| Who needs a phone | Every attendee | One greeter |
| Works with no signal | No | Yes, syncs later |
| Duplicate submissions | Unrestricted | Held codes rejected until re-presented |
| Volunteer onboarding | Explain the form | Send them the link |
| Where data lives | Your Google Sheet | Your Google Sheet |
Children's check-in needs more care
Children's ministry check-in is the one use here with real safeguarding weight, and a spreadsheet is only part of the answer. If you use scanning for it, the record needs to show who collected a child as well as who dropped them off, which means scanning at both ends rather than only on arrival.
- Scan in and scan out. An arrival-only record cannot answer the question that matters.
- Encode a family or child ID, never a name, on anything printed and carried.
- Restrict who can open the Sheet, and review that list when volunteers change.
- Agree how long you keep records before you start collecting them.
- Check your denomination or governing body's own safeguarding policy first — it may specify a method.
Data protection, briefly and honestly
An anonymous headcount is not personal data and carries no obligations. The moment you record names, or anything that identifies a person, it is personal data under GDPR or your local equivalent, and a church is not exempt. Collect the minimum that answers your actual question, keep the Sheet in an organisation-controlled Drive rather than a volunteer's personal account, set a retention period, and be able to say what any third-party tool can reach. A tool restricted to the single spreadsheet you selected is far easier to justify to a trustee than one with broad access to your Drive.
What to put in the sheet
- Timestamp, automatically, in your own timezone.
- What was scanned — a person ID, a role, or just a marker for an anonymous count.
- Which door or station, if you have more than one.
- Service or session, so twelve months of rows are still separable in a year's time.
Keep it append-only. One row per scan, never edited, with totals derived by pivot. A grant report built from an append-only log can be checked; one built from a column somebody has been overwriting cannot.
Step by step
- 1
Decide who you are counting and why
Headcount for a grant report, named volunteers for a rota, or children for safeguarding. These need different levels of identification, and collecting more than you need creates an obligation you do not want.
- 2
Choose anonymous or named
A single QR by the door gives you a headcount with no personal data at all. Named check-in needs a code per person and turns the sheet into personal data. Pick the lightest option that answers your question.
- 3
Print a code per role, not per person, where you can
For volunteer rotas, one code per station — welcome desk, kitchen, sound — is often more useful than one per volunteer, and much less admin to maintain.
- 4
Put one person on the door with the link
A greeter with the scanner link open on their own phone is the whole system. No account, no install, nothing to hand over but a URL.
- 5
Reconcile weekly, not annually
Five minutes after each service beats reconstructing a year of attendance the week a grant report is due.
Frequently asked questions
Can we track church attendance for free?+
Yes. A printed QR code that opens a Google Form linked to a Sheet costs nothing and has no response cap. It relies on attendees having phones and signal, and cannot prevent duplicate submissions, but for a straightforward headcount it genuinely works.
Do volunteers need to create accounts?+
Not with a scanner link — a greeter opens a URL on their own phone and scans. With a Google Form nobody needs an account either. Avoid anything that requires an account per volunteer; volunteer turnover makes that unmanageable.
What if our hall has no mobile signal?+
Then avoid anything that submits at the moment of scanning, because a Google Form will silently lose those submissions. Use a tool that saves each scan on the device and syncs when signal returns, and test in the dead spot specifically.
Is scanning appropriate for children's ministry?+
It can be, but only if you scan both drop-off and collection — an arrival-only record does not answer the safeguarding question. Encode IDs rather than names, restrict who can open the Sheet, and check your governing body's policy first.
Do we need names, or is a headcount enough?+
Most grant reporting needs numbers, not names. A headcount is not personal data and carries no data-protection obligations, so if numbers answer your question, collect only numbers.
How much does this cost for a small congregation?+
The Google Form route is free forever. QR to Sheets is free for 300 scans and one device, then $7 per device per month — one door phone is one device, and volunteers are never charged for individually.