An event QR code holds a calendar entry: a title, a start, an optional end, a location and a description, in the iCalendar format that calendar apps import. Scan it and the phone offers to add the event, with every field already filled in, so nobody copies a date off a poster and gets the month wrong.
This tool builds that code in your browser. The event details go into the image you download and nowhere else. Nothing is sent to a server, and the page keeps no record of it.
What the code contains
The string is a small iCalendar file: BEGIN:VCALENDAR, VERSION:2.0, then one VEVENT with SUMMARY for the title, DTSTART and DTEND for the times, LOCATION and DESCRIPTION when you fill them in, and the matching END lines. It is the same format a .ics attachment uses, cut down to the lines a phone needs.
Commas, semicolons and backslashes inside your text are escaped with a backslash, and a line break in the description is written as \n, both as the format requires. The readout under the preview shows those backslashes; they are correct, and the calendar app removes them when it imports the event.
Entering dates and times
The Starts field takes a date and time as 2026-09-12T10:00, or a date alone as 2026-09-12 for an all-day event. A space in place of the T and an optional seconds part are also accepted. Any other shape, such as 12/09/2026, is rejected with the message: A start date should look like 2026-09-12 or 2026-09-12T10:00.
The end is optional. If you give one, it has to match the start: both dates, or both date-times, or the tool reports that start and end must both be dates, or both be date-times. An end earlier than the start is rejected too. An all-day event with no end is a single day.
Times are written without a time zone. A calendar app reads 10:00 as 10:00 in the phone's own zone, which is right for a venue event, since the person scanning is in the room and their phone is on local time. For an online event with attendees in several countries, state the time zone in the description, because the code cannot carry it.
What a scanner does with it
Support for calendar codes is less uniform than for links. The iOS Camera app recognises a VEVENT and offers to add it to the calendar. On Android it depends on the camera app: some offer to add the event, others show the text and leave the person to create the entry by hand. A dedicated QR scanner app usually handles it on either platform.
Nothing is added without the person confirming, and they can change the calendar or the alert before saving. The code holds a single occurrence with no reminder, no repeat rule and no attendees; those are things the person sets in their own calendar afterwards.
Printing and using it
Event codes suit invitations, posters, tickets, conference programmes and course timetables. Put the address in the Location field so the calendar app can map it, and keep the description to a line or two: an iCalendar string is long compared with a link, and a paragraph of description makes a dense code that needs more space on the page to scan.
Download the SVG for print; it scales to any size without blurring. Keep the quiet zone at two modules or more and keep dark modules on a light background. Scan the printed proof on your own phone and check the saved entry's date, time and duration before ordering the run.
Frequently asked questions
Does scanning add the event to my calendar automatically?
No. The phone shows the event details and offers to add them. The person confirms, and can choose the calendar and an alert first.
Which time zone does the event use?
None is stored. The time is read as local time on the phone that scans it. For an in-person event that is what you want. For an online event across time zones, write the zone into the description, since the format used here cannot carry one.
Can I make an all-day event?
Yes. Enter the start as a date alone, 2026-09-12, with no time. An end date, if you give one, must also be a date alone and is the last day the event covers; the tool writes the calendar's exclusive end (the day after) for you, which is what the iCalendar standard expects. A start date with no end is a single all-day event.
Can I set a reminder, or make it repeat weekly?
No. The code carries one event with a title, times, a location and a description. Reminders, repeats and invitations are added by the person in their own calendar after saving.
Why does the readout show backslashes in my text?
iCalendar requires commas, semicolons and backslashes in text fields to be escaped with a backslash, and line breaks to be written as \n. The calendar app strips them on import, so the saved event reads exactly as you typed it.
Are my event details sent anywhere?
No. The code is generated inside your browser, and the event details are only placed into the image file you download. There is no upload, no account and no history kept on this page.
Related Utilities You Might Need
URL Slug Generator
Generate clean, search engine optimized slugs from title strings or written copy.
QR Code Generator
Create a custom QR code with your own foreground and background colours and a centred logo, then download a high-resolution PNG up to 2048px.
UTM Campaign URL Builder
Build tagged campaign URLs and catch what splits your reporting: duplicate UTM parameters, capital letters and stray spaces. Runs in your browser.
