Door check-in is a queue problem before it is a software problem. Everything that matters happens in the ten seconds per guest between arriving and getting inside, and almost every failure is either a slow scan, a phone screen that will not read, or a member of staff who cannot find someone on the list.
This guide covers the free approach, then the parts that stop working once the guest count climbs.
The free method: a Google Form and a shared QR code
Print one QR code that opens a Google Form, put it on a sign at the door, and let guests scan it and enter their name. Responses land in a Sheet. It costs nothing and works.
It also has a specific failure mode at events: it is self-service, so the queue moves at the speed of the slowest guest typing their own name on a phone. Thirty guests is fine. Three hundred guests is a bottleneck at the door, which is the one place you cannot afford one.
- No verification. Anyone who has the sign can check themselves in, including people who are not on the list.
- No duplicate handling. The same guest can submit twice, and you will not know at the door.
- No VIP or category handling. Everyone gets the same experience.
- No offline handling. Venue wifi is famously bad, and a failed submission is simply lost.
Per-guest QR codes: what changes
The step up is giving each guest their own code before the event, and having staff scan guests rather than guests scanning a sign. This inverts the queue: the guest does nothing except hold up a phone, and a trained member of staff operates the scanner.
- A scan identifies exactly one person, so the check-in is verified rather than claimed.
- A second scan of the same code can be flagged as an already-arrived duplicate.
- Guest categories such as VIP, press, or staff can drive what the door sees on scan.
- Throughput is roughly one guest per second rather than one per fifteen.
QR to Sheets does this through its Events add-on, so read this section as interested but specific: you import a guest list from a Sheet, it emails every guest a personal QR code, and door staff open a check-in link on their own phone. Check-ins write back to the same Sheet. Pricing is flat, not per attendee.
Comparing the two
| Free / do it yourself | Hosted scanner link | |
|---|---|---|
| Cost | Free | $25/month flat, requires Premium. Not per attendee |
| Who scans | The guest, self-service | Your door staff |
| Verified arrival | No, self-reported | Yes, staff-witnessed |
| Duplicate detection | None | Already-checked-in guests are flagged |
| Throughput | Limited by guests typing | About one guest per second |
| Bad venue wifi | Submission lost | Buffered on device, syncs later |
| Sending codes out | Manual | Emailed per guest, plus reminders |
| Where the data lives | Your Google Sheet | Your Google Sheet |
The details that actually decide how the door goes
Independent of tooling, these are the things that make or break a check-in desk.
- Scanning a code off a phone screen is harder than scanning paper. Screen glare and auto-dimming are the usual culprits. Ask guests to turn brightness up, and prefer a scanner that focuses close-up.
- Some invitations are light-on-dark. Many scanners silently fail on inverted QR codes, so test with a real invitation, not a generated sample.
- Put one member of staff on manual lookup only. They handle the exceptions so the scanning lanes never stall.
- Test the actual venue wifi at the actual door position, not in the lobby. Then assume it will be worse when the room is full of people.
- Decide in advance what happens on a duplicate scan. Turning someone away is a decision, not a default.
- Charge the phones. A door shift is longer than you think, and the camera drains a battery fast.
If your check-in tool records the scan locally before it reaches the network, a wifi outage becomes a delay rather than a lost guest list. Ask about this specifically, because it is the difference between an inconvenience and a ruined door.
After the event
Because check-ins land in a Sheet, the follow-up is ordinary spreadsheet work: actual attendance versus registrations, arrival-time distribution to size next year's door, no-show lists for follow-up, and per-category breakdowns. Keep the raw scan log intact and build every report as a view over it.
Step by step
- 1
Get the guest list into a Google Sheet
One row per guest, with a stable identifier and an email column. Whether the list comes from a form, a ticketing platform, or a spreadsheet someone maintains by hand, normalise it before the event, not on the day.
- 2
Give every guest a unique QR code
Encode a per-guest token, never the guest name. A per-guest code means a scan identifies exactly one person, which is what makes duplicate detection and VIP flags possible.
- 3
Send the codes out ahead of the event
Email each guest their own code a few days before, then send a reminder the day before. Most no-shows at the door are people who cannot find the email, not people without a code.
- 4
Set up the door station
One member of staff per entry lane, each with a phone. Open the check-in scanner link, allow the camera once, and test three real codes before doors open.
- 5
Scan guests in
Each scan writes the check-in back to your Sheet. A guest who is already checked in should be flagged rather than silently written twice, so the door staff can ask a question rather than wave through a duplicate.
- 6
Keep a manual fallback ready
Some guests will arrive with a dead phone, a screenshot that will not scan, or no code at all. Have a way to search the list and check someone in by hand. You will use it.
Frequently asked questions
Do guests need to install an app to check in?+
No. Guests only need to display a QR code, which is usually an image in an email or a screenshot. With a staff-scanning setup they do not interact with any software at all; only the member of staff scanning uses a device, and that runs in a browser.
What happens if the venue wifi fails during check-in?+
That depends on the tool. A Google Form submission with no connection fails and is lost. A scanner that saves each check-in to the device first will keep working through the outage and sync when the connection returns. Test this before the event rather than discovering it at the door.
How fast can you check guests in?+
With staff scanning per-guest codes, roughly one guest per second in practice, so the queue rather than the scanner is the limit. Self-service check-in where guests type their own details is far slower, usually ten to twenty seconds each.
Can you spot someone trying to reuse another guest's code?+
Yes, if each guest has a unique code and the system flags a second scan of an already-checked-in guest. A single shared QR code for the whole event cannot do this, because every scan looks identical.
Is a paid tool worth it for a small event?+
Often not. For under about fifty guests, a printed list and a pen or a free Google Form is genuinely fine. The case for a dedicated tool starts when the queue matters, when you need verified attendance, or when duplicate entry has a real cost.
Can check-in data write back to the same Google Sheet as the guest list?+
Yes, that is the usual setup: the guest list is the source, and check-in status is written back against each guest row so you have one file rather than two that need reconciling afterwards.