BlogHow-to Guides
How-to Guides

The Event Check-In Guide: QR Passes, Guest Lists, and Day-Of Chaos (No App Required)

Most check-in problems aren't really check-in problems. They're "we bought a scanner app nobody installed," "someone got checked in twice at two different doors," and "half our registrations bounced because of a typo'd email." The actual fix for all three has less to do with hardware and more to do with how the system behind the QR code is built. Here's what that system needs to get right.

You shouldn't need to buy hardware for a one-day event

A lot of check-in systems assume you'll install a dedicated scanner app, provision a handful of devices for it, and train whoever's at the door on software they'll use once. That's a reasonable trade-off for a recurring trade show with a fixed check-in team. It's a lot of overhead for a wedding, a gala, or a one-time conference where the "check-in team" is three volunteers using their own phones.

The alternative is a check-in flow that lives entirely in the browser on both ends — a guest's pass is a plain link with a QR code, and the person scanning it is using their phone's camera through a normal web page, not a separate installed app. Nobody provisions a device. Nobody deletes an app after the event. It works the same on a borrowed phone as it does on your own.

The two-door problem

Run check-in at more than one entrance and you'll eventually hit the same failure: someone gets scanned in at door A, walks around, and gets scanned again at door B — and if the two doors aren't talking to each other in real time, you either double-count them or a volunteer has to manually reconcile two lists after the fact.

The fix is a check-in system where every scan — and every manual check-in from the entries list — broadcasts to everyone watching the guest list live, not just the device that scanned it. Door B sees the guest as already checked in the instant door A scans them. A duplicate scan doesn't throw an error or create a second entry either — it just confirms "already here," which matters in practice more than it sounds: bag checks, re-entry after stepping outside, or a nervous guest scanning twice all hit this exact path.

A registration is only as good as the email behind it

A registration with a typo'd or fake email address is worse than no registration at all — it looks like a real headcount until the confirmation, the pass, and every reminder bounce silently. Verifying the email at the moment of registration, before the pass is issued, catches this at the source instead of the door.

The standard way to do that is a short verification code sent to the address the guest provided — they can't get a pass until they enter it correctly. The part worth getting right is what happens when someone gets it wrong repeatedly: a registration's code should lock after a handful of wrong attempts and require a fresh one, rather than allowing unlimited guesses against the same code indefinitely.

In-person, virtual, and hybrid shouldn't be three different tools

A hybrid event has two audiences that need two different things from the same registration: an in-person guest needs a QR pass to scan at the door, and a virtual attendee needs a join link that shows up at the right time. Running these through separate registration tools means maintaining two guest lists and reconciling headcounts by hand.

One registration flow that adapts based on the event's format — showing a check-in QR for in-person guests and a join link for virtual or hybrid ones on the same pass page — means a single guest list covers the whole event, regardless of how any individual guest is attending.

Capacity you buy once shouldn't disappear at the end of the month

Most subscription tools reset your usage every billing cycle, which works fine for a steady monthly volume and works badly the one month you're running a wedding, a gala, and a reunion at the same time. If you buy extra registration capacity for that month, it should still be there in month two if you don't use it all — a standing balance, not a monthly allotment that expires whether or not you needed it.

None of this replaces having a real plan for who's staffing the door — see our guide to coordinating volunteers and staff for that half of the problem. But the check-in system itself should be solving the failure modes above, not creating new ones on the day.


Running check-in for an event with more than one door, or more than one way to attend? Create a free Programleaf account and issue QR passes, verify registrations, and check guests in live — or see the full toolset on the guest engagement page.

Ready to try it?

BUILD YOUR FIRST PROGRAM FREE.

No credit card. No app for guests. Live in minutes.