Skip to content
Y
YAS.SH
Case Study

EventFlow: Dynamic QR Check-in That Cut Friction and Costs

How an events company replaced paper check-in and static QR with dynamic QR badges — 1,200 scans, zero reprints, and a 22-minute faster door.

yas-team4 min readeventsqrcheckin
EventFlow: Dynamic QR Check-in That Cut Friction and Costs
Featured imageEventFlow: Dynamic QR Check-in That Cut Friction and Costs

The company

EventFlow runs conferences and trade events across Europe — 14 events a year, from 300-person workshops to a 3,000-attendee flagship conference with 40 sessions over two days.

The problem

Check-in was a paper-and-sticker operation. Attendees queued at the door while staff matched names against printed lists; badges carried a static QR that pointed at the event homepage — informative, but useless for session-level operations. Three failures were chronic:

1. The door. Peak-hour queues ran 25–40 minutes. The bottleneck was the name lookup, not the scanning.

2. Session updates. Every agenda change (room swaps, speaker changes, sold-out sessions) required updated signage — and printed signage couldn't be updated at all. Static QRs on session boards pointed at a generic page that never changed.

3. Zero session data. The organizers knew how many tickets sold and almost nothing about what attendees actually did: which sessions pulled, when people arrived, where the door was busiest.

The requirements

  • One gesture for attendees — scan, move, done.
  • Dynamic targets — badge and signage codes must be re-targetable without reprinting.
  • Session-level measurement — scans per session, per hour, per device.
  • Offline tolerance — door staff operate in halls with flaky Wi-Fi; the scan itself must never depend on the venue network.

The solution

EventFlow rebuilt check-in around dynamic QR codes on the existing infrastructure: badge printers, a hallway of posters, and yas.sh behind the scenes.

Badges: each badge carried a code pointing at a short link per attendee group (speaker, sponsor, general). Session doors used one code per session board:

# one link per session board, re-targetable any time
curl -X POST https://yas.sh/api/v1/links \
  -H "Authorization: Bearer yas_live_..." -H "Content-Type: application/json" \
  -d '{"originalUrl":"https://event.flow/session-14-agenda","customAlias":"s14","title":"Session 14"}'

# agenda change at 09:40 — re-target, no reprint
curl -X PATCH https://yas.sh/api/v1/links/<id> \
  -H "Authorization: Bearer yas_live_..." -H "Content-Type: application/json" \
  -d '{"originalUrl":"https://event.flow/session-14-updated"}'

The door: staff scanned badges with a generic scanner app pointed at the code — the redirect itself resolved to a per-session check-in URL carrying the attendee ID in the path. Because the redirect is a plain HTTP call, it worked on the venue's flaky network; the check-in write happened client-side in the venue app.

Print quality: session board codes were generated at 1024px with generous quiet zones (the print rules) — readable from 3 meters on poster board.

Results

Metric Before After
Peak door queue 25–40 min 3–8 min (22 min faster)
QR reprints per event 6–10 (signage) 0 — all retargeted digitally
Session attendance data none scans per session, per hour
Agenda change turnaround print + staff walk 40 seconds in a dashboard
Total scans (flagship) n/a 1,200+

The data surprised the organizers: the "must-see" keynote pulled only 60% of its registered audience, while a breakout on AI tooling hit 110% (standees). Next year's session planning runs on that evidence instead of gut feel.

The per-hour scan series also showed the door's true peak was 09:20–09:40 — the team moved the welcome coffee earlier and rebalanced staff, cutting the worst queue further.

What the team says

"The badge is the same plastic card as before. The difference is that every code on it is alive — it points where we need it to point, when we need it to point there, and it tells us who scanned what. We will never print a static QR again."

— Head of Operations, EventFlow

Lessons for event teams

  1. Dynamic beats static everywhere in events — sessions, agendas, and schedules change; codes that can't change force reprints.
  2. The door bottleneck is name lookup, not scanning — remove the lookup, not the scanner.
  3. Scan data is attendance data — per-session series replaces anecdote with evidence for the next year's program.
  4. Print discipline pays at the door — size and quiet zone decide whether a 3-meter poster code works.

Run your event the same way

The QR endpoint generates print-grade codes in one call; short links make them dynamic; analytics turns scans into decisions. The QR for business guide has the print specs EventFlow used.

Frequently asked questions

How did dynamic QR fix check-in?

Badge codes pointed at short links that could be re-targeted per session — agenda changes, room swaps, and add-ons were updated in the dashboard, not by reprinting badges.

What analytics did the event team get?

Scan counts per session, per-hour series, and device mix — enough to see which sessions actually pulled attendees and when the door was busiest.

Did attendees notice the change?

No — scanning stayed one gesture. The change was invisible to them and transformative for the ops team.

Was this helpful? Share
🍪 Cookies & privacy. yas.sh uses only essential cookies to keep you signed in and remember your preferences. We do not run third-party trackers. See our cookie policy and privacy policy.
Settings