Static vs Dynamic QR Codes
What the redirect actually buys you, measured on real encoded codes, and which payloads are worse off for it.
16 min readSomebody reads your poster, points a camera at it, and the event is in their calendar with the date, the time and the venue already filled in. No ticketing account in the middle.
The details live inside the code, not on a server. That is why it works with no signal, and why changing the date means reprinting.
Your code appears here as you type.
A poster that says 7pm means 7pm at the venue. If the code converted that to UTC, a phone set to another country would show a different hour, and somebody would arrive at the wrong time holding a calendar entry that disagreed with the poster they photographed.
So the time is written as what RFC 5545 calls a floating time: no timezone, no conversion, the same clock reading on every phone. That is correct for a printed poster at a physical venue. It is wrong for a webinar with an audience in four countries, and for that case you want a link to an event page that can do the conversion properly.
The name, both timestamps, the venue and any description all sit inside the symbol. That makes an event code one of the densest things on this site, and density decides how large it has to be printed to stay readable.
| What you enter | What the scanner reads | Version | Modules | Print at least |
|---|---|---|---|---|
| Name and times onlyThe minimum a calendar entry needs. Already denser than a link. | BEGIN:VEVENT
SUMMARY:Summer Fair
DTSTART:20260815T110000
DTEND:20260815T160000
END:VEVENT89 characters | 7 | 53 | 21.2 mm |
| With a venueWorth the modules: without it the entry is a time with no place. | BEGIN:VEVENT
SUMMARY:Summer Fair
DTSTART:20260815T110000
DTEND:20260815T160000
LOCATION:Victoria Park\, Bethnal Green
END:VEVENT128 characters | 9 | 61 | 24.4 mm |
| With a short descriptionAbout as much as is practical on a printed poster. | BEGIN:VEVENT
SUMMARY:Summer Fair
DTSTART:20260815T110000
DTEND:20260815T160000
LOCATION:Victoria Park\, Bethnal Green
DESCRIPTION:Free entry. Dogs welcome. Cash only at the food stalls.
END:VEVENT196 characters | 12 | 73 | 29.2 mm |
| A link to the event page insteadEvery detail, none of the modules, and it needs a connection. | https://example.com/summer-fair31 characters | 3 | 37 | 14.8 mm |
The last row is the argument against doing this at all. A link to an event page carries every detail you like and encodes tiny, because the details are on the page rather than in the code. What it does not do is work when the signal in the venue is bad, and it stops working entirely if the page goes away.
A reasonable compromise on a poster is both: the calendar code for the date and place, and a printed link for tickets. If you are selling tickets, the check-in tool handles scanning people in at the door.
Two codes that often sit beside this one on the same poster: a map code for getting there, and a donation code if the event is raising money. The donation one has safety rules of its own, because it moves money.
If the event is a permanent exhibit rather than a dated one, the museum label sizing is the more useful starting point.
Their phone reads the calendar entry and offers to add it, with the name, times and venue already filled in. Nothing is added until they agree, and it goes into their own calendar rather than anywhere you can see.
It deliberately does not. The time is written as a floating local time, so a code that says 7pm shows 7pm on every phone that scans it. That is right for a printed poster at a venue, and wrong if your audience is spread across countries. For those, link to an event page.
Because a calendar entry carries a lot of text. The name, both timestamps, the venue and any description all sit inside the symbol, which pushes the module count up. The table on this page shows the difference against a plain link.
No. A static code carries the details themselves, so a change means reprinting. If the date might move, encode a link to an event page and change the page instead. That is the honest trade between the two approaches.
Quartile, which is where this page starts. Posters get handled, folded and rained on, and Quartile rebuilds about a quarter of the symbol. If the payload is long enough that the code will not fit your poster, drop to Medium and print it larger rather than cutting the venue out.
Invitations, RSVPs, guest photos, and scanning people in at the door.
What the redirect actually buys you, measured on real encoded codes, and which payloads are worse off for it.
16 min readThe usable square inside a round sticker is 70% of its diameter. Measured minimum sizes for real links, against every common sticker size.
8 min readWhat each platform already ships, the measured cost of each payload type, and how to check an offline claim yourself.
26 min read