Event ticket QR codes: unique codes and fast door scanning
Paolo Matias Tonello8 min read
A ticket QR code has one job: identify exactly one ticket, fast enough that a queue of two hundred people keeps moving. Everything that goes wrong at the door comes from breaking one of those two requirements — a code shared by many tickets, or a code that takes five attempts to read.
One code per ticket, always
A single code reused across a batch of tickets cannot be checked in: the first scan is indistinguishable from the two hundredth. Each ticket needs its own reference — a ticket id or an opaque token — so the door system can mark that specific ticket as used.
- Use an opaque, non-sequential reference: TCK-9F2A7C, not 1, 2, 3
- Sequential ids are guessable; someone will try the next number
- Keep the payload short so the modules stay large on a small ticket
- Store the mapping (reference to buyer, tier, seat) in your own system, never inside the code
Barcode or QR code at the door
Both work; they fail differently. A 1D barcode needs a laser or a linear scanner aimed correctly and a wider label. A QR code is read by any phone camera from any rotation, which is why nearly every modern door setup uses QR — the staff device is usually a phone.
| Aspect | 1D barcode | QR code |
|---|---|---|
| Reader | Dedicated linear scanner | Any phone camera |
| Orientation | Must be aligned | Any rotation |
| Damage tolerance | Low | High (error correction) |
| Space on the ticket | Wide strip | Compact square |
| Payload length | Very limited | Comfortable |
Preventing screenshots and reuse
No QR code can stop a screenshot — the image is meant to be copied. Anti-duplication happens in the validation step, not in the graphic. The door system records the first successful scan and refuses every later scan of the same reference.
- Scan the code and extract the ticket reference.
- Look up the ticket: does it exist, is it for this event, is it already checked in?
- Mark it as used, with a timestamp and the gate that scanned it.
- Show a clear accept or reject state to the staff member — one glance, no reading.
- Log rejections: repeated attempts on one reference is exactly the signal you want.
Printing tickets that scan first time
Door scanning happens in bad light, on crumpled paper, sometimes on a cracked phone screen. Give the scanner margin.
- 25-30 mm minimum on a printed ticket or wristband tag
- Pure black on white — no brand colour, no tint, no photo behind the code
- Quiet zone of at least four modules, kept clear of the perforation
- Matte stock; gloss tickets glare under entrance lighting
- On digital tickets, tell the buyer to raise screen brightness
The other codes around an event
Ticket codes should stay static and unique — they encode an identity that never changes. The promotional codes around the event are the opposite case: posters, flyers and stage screens should carry dynamic codes, so one printed poster can point at the ticket shop before the doors open and at the after-event gallery the next morning.
Put it into practice
Keep reading
- Bulk QR code generation: from CSV to print-ready filesA practical workflow for batch QR generation: how to structure the CSV, name the exported files so prepress can find them, and decide between static and dynamic rows.
- How to print QR codes: size, format and best practicesPrinting a QR code is not just about dropping a PNG into a layout. Format, size, contrast and material all decide whether the code scans reliably.
- Static vs dynamic QR codes: the definitive guideThe difference isn't a marketing tier, it's a difference in what is physically encoded in the pixels — and it decides whether you can ever change the destination.