Skip to content
Generate Online

Event QR Code Generator

Get the date into someone's calendar while they are still holding the invitation.

Interpreted in your own timezone and converted for the calendar.

A full address lets the calendar app offer directions.

QR code options

Generated on your device. Nothing you type is sent anywhere.

What a Event QR code does

An event QR code adds an entry to the scanner's calendar with the name, time and location already filled in. Its value is entirely about the moment it is used: someone holding an invitation is far more likely to save the date right then than to remember to add it later, and the calendar entry then does the reminding for you. The format carries one significant complication worth understanding before printing anything, which is timezones — the times you enter are converted to a universal reference, and how a calendar displays them depends on where the person scanning happens to be.

When to use one

  • Printed invitations and save-the-date cards for weddings and parties
  • Conference programmes listing individual sessions people want to attend
  • Posters for one-off performances, screenings and community events
  • Class and course timetables handed out at the start of a term
  • Trade show stands advertising a demonstration at a specific time
  • Appointment cards handed out by clinics, salons and garages

Why it works well

  • Saved at the moment of intent

    People decide to attend while holding the invitation, and forget by the evening. A code captures that decision immediately, and the calendar entry then handles the reminding without anyone having to remember anything.

  • No transcription of dates

    Copying a date, a start time and an address into a phone by hand invites errors, and a wrong date is not noticed until someone arrives on the wrong day. Encoding removes every step where that can happen.

  • Directions come attached

    With a full address in the location field, most calendar apps offer navigation straight from the entry, so the attendee does not have to find the invitation again on the day.

  • Works offline once saved

    The event details are inside the pattern rather than fetched from a server, so the entry saves without a connection and there is no page that could go offline before the event happens.

Worked examples

Evening launch event

A three-hour evening event with a full address, as printed on an invitation card. The most typical use of this generator.

Encoded as

BEGIN:VEVENT SUMMARY:Spring Product Launch DTSTART:20260914T123000Z DTEND:20260914T153000Z LOCATION:Northwind HQ\, 12 Rivington Street\, London DESCRIPTION:Doors at 6pm. Drinks and demos. END:VEVENT

Conference session

A single talk within a larger programme, printed beside its listing so attendees can build their own schedule.

Encoded as

BEGIN:VEVENT SUMMARY:Keynote — Designing for Trust DTSTART:20261002T040000Z DTEND:20261002T044500Z LOCATION:Hall B\, Excel London END:VEVENT

How to create a Event QR code

  1. Name the event clearly

    The Event name is what appears in the calendar, often truncated to a few words in a month view. Put the distinguishing detail first so it remains recognisable when the person looks at it weeks later among other entries.

  2. Set the start and end times

    Enter Starts and Ends in your own local time. They are converted to a universal reference so that a calendar in another timezone shows the correct local equivalent rather than the raw numbers you typed.

  3. Add a full address as the location

    A complete postal address in the Location field lets most calendar apps offer directions directly from the entry. A room name alone gives the attendee nothing to navigate towards.

  4. Scan it and check the saved entry

    Save the event to your own calendar from the code and confirm the time is right. Timezone conversion errors are invisible in the payload and only appear once an entry actually lands in a calendar.

What goes wrong, and how to avoid it

  • Timezone confusion

    Times are converted to a universal reference before encoding, so a calendar in another timezone shows the correct local equivalent. That is right for an international audience but surprising if you expected the literal numbers you typed. For an event where everyone is physically present it works correctly either way, but always verify by saving the entry yourself.

  • Long descriptions producing a dense pattern

    Every field goes into the payload, and a paragraph of detail can push the pattern past what prints comfortably on an invitation. Keep the description to a line and put the full details on a web page, linked separately or printed alongside.

  • Expecting recurring events to work

    The format supports a single occurrence. A weekly class or a monthly meeting cannot be expressed as one code that populates a whole series, and attempts to fake it produce entries that only some calendar apps interpret correctly. Use a link to a subscribable calendar instead.

  • No reminder or alarm is set

    The entry saves with whatever default reminder the person's calendar applies, which may be none at all. The code cannot force an alert, so for anything where attendance matters, print the date in text as well rather than relying entirely on the entry.

  • Changing the event after printing

    The date, time and location are fixed inside the pattern. A rescheduled event means every printed code adds the wrong entry, and worse, it does so silently — the attendee has a confident calendar entry for a time that no longer applies.

Device and app compatibility

iOS reads calendar payloads from the Camera app and offers to add the event to Apple Calendar with the fields populated. Android support is less consistent: some camera apps and Google Lens handle it directly, while others display the raw text and leave the person to copy it, which is a poor experience. Dedicated scanner apps generally cope better than built-in cameras on Android. Desktop scanners usually download an .ics file that opens correctly in Outlook, Apple Calendar and Google Calendar. Because Android handling varies, an event code is worth testing on both platforms before any significant print run.

The payload is a bare VEVENT rather than a full VCALENDAR wrapper, which both platforms accept and which saves around sixty bytes — meaningful when capacity determines the printable size. Timestamps are emitted in UTC basic format with a Z suffix, and text fields escape commas, semicolons and newlines as the iCalendar specification requires.

Common questions

What timezone are the times saved in?

You enter times in your own local timezone and they are converted to a universal reference before encoding. A calendar app then displays the correct local equivalent for wherever the person scanning is. For an event where everyone attends in person this behaves correctly, but always confirm by saving the entry to your own calendar from the finished code.

Can I create a recurring event?

No. The format encodes a single occurrence, and a weekly class or monthly meeting cannot be expressed as one code that fills in a whole series. Attempts to encode recurrence rules are interpreted inconsistently across calendar apps. For a repeating schedule, link to a subscribable calendar instead using the URL generator.

Does it work on Android?

Usually, but less consistently than on iOS. Some Android camera apps and Google Lens handle calendar payloads directly, while others display the raw text for the person to copy manually. Dedicated scanner apps generally cope better. Test on an Android handset before any large print run rather than assuming parity with iPhone.

Will the person get a reminder?

Only whatever default their calendar applies, which is sometimes nothing. A QR code cannot force an alarm to be set. For anything where attendance genuinely matters, print the date and time in readable text beside the code as well, rather than depending on the saved entry alone.

What if the event is rescheduled?

Every printed code continues adding the original date, and does so silently — the attendee ends up with a confident calendar entry for a time that no longer applies. There is no way to update a static code, so a change of date means reprinting and, ideally, contacting anyone who already saved it.

Are the event details uploaded anywhere?

No. The calendar entry is assembled in your browser and the pattern drawn on your device, with nothing transmitted while you type. That includes the location and description, which for a private event such as a wedding are details you would reasonably not want passing through anyone else's server.

Read before you print

Other QR code generators

This generator is part of location & venue QR codes — see the whole group, and what to decide before you generate one.