Event QR code
Get attendees to the right place — a ticket, a schedule, or a calendar entry. There are two approaches: link to an event page, or encode a calendar event directly. Each has trade-offs in reliability. Here's how to choose and build them.
The link approach (recommended)
The most reliable event code is a URL QR code pointing to an event page — your ticketing platform, an event website, or a registration form:
https://yoursite.example/events/spring-gala
That page can hold everything: date, location, a map, tickets, and an "add to calendar" button that every device understands. Because the heavy lifting lives on the page, the code stays short and the experience is consistent across phones.
The calendar approach (iCalendar)
You can also encode a calendar event directly using the iCalendar VEVENT format, so scanning offers to add it to the calendar:
BEGIN:VEVENT
SUMMARY:Spring Gala
DTSTART:20260620T180000Z
DTEND:20260620T220000Z
LOCATION:1 Market St, Springfield
END:VEVENT
Honest caveat: not every phone camera parses a raw VEVENT from a QR code. Some open it straight into the calendar; others show it as plain text. If a one-tap calendar add is essential, host an .ics file and link to it instead — that's handled far more uniformly. Always test on iPhone and Android before relying on the direct method.
Times use the format YYYYMMDDTHHMMSSZ (the trailing Z means UTC). Get the time zone right — an off-by-one-hour invite is worse than none.
When to use it
- Posters and flyers — link to tickets or registration.
- Badges and signage — link to the live schedule or venue map.
- Invitations — an "add to calendar" link (hosted
.ics) so guests don't forget.
Gotchas worth knowing
- Prefer a link for anything that might change. Times and venues move; a page you control absorbs that, a static calendar code can't.
- Mind time zones. Use UTC (
Z) or include the correct local zone, and double-check daylight-saving boundaries. - Test the calendar add. If you encode a
VEVENTdirectly, confirm it actually opens the calendar on both major platforms. - Keep it short. Long descriptions in a
VEVENTmake a dense code — link out for detail.
Hosting an .ics calendar file
The most reliable "add to calendar" experience comes from hosting a proper .ics file and linking to it, rather than encoding a raw VEVENT. An .ics file is just the calendar block wrapped in BEGIN:VCALENDAR / END:VCALENDAR, saved with an .ics extension and served from your site:
https://yoursite.example/events/gala.ics
When opened, phones and desktops recognize the file and offer to add the event — far more consistently than a camera parsing calendar text. Watch for:
- Recurring events. Repeating schedules use an
RRULEline; get it right or attendees see the wrong dates. - Updates. If details change, re-host the file at the same URL so the link keeps working.
- Time zones. Include the correct zone or use UTC, and double-check daylight-saving boundaries.
Make an event QR code
For the link approach, paste your event URL into the Link tab. For a direct calendar event, build the VEVENT block and paste it into the Text tab.
Generate an event QR code
Use the Event tab to build a calendar entry, or link to your tickets page, then export a print-ready code — free and private.
Open the event generatorFrequently asked questions
Should I link to a page or encode the calendar event?
For most events, link to a page — it's reliable everywhere and can change without reprinting. Encode a calendar event directly only when a one-tap add is the whole point, and test it first.
Why doesn't my calendar QR code add the event?
Not all phone cameras parse a raw VEVENT from a QR code; some show it as text. Host an .ics file and link to it for consistent behavior across devices.
How do I set the time zone?
Use UTC times ending in Z (e.g. 20260620T180000Z) or include the correct local time zone, and watch for daylight-saving shifts.
Can I sell tickets through a QR code?
The code links to your ticketing page; the sale happens there. Point it at a stable checkout or registration URL.