When to use it
Event posters, invitations, tickets, school newsletters, gig flyers, appointment cards. One scan and the date, time and place are in the person’s calendar with no typing and no wrong-month mistakes.
How it behaves on phones
iPhone: the Camera app recognises BEGIN:VEVENT and shows an “Add to Calendar” banner. Tapping it opens the event sheet with title, time and location filled in, and the person picks a calendar and saves.
Android: most Android scanners show the parsed event with an “Add to calendar” button that opens Google Calendar or the default calendar app. A few older scanners show the raw text; the person can still read the details from it.
Common mistake
Writing the date the way people do, DTSTART:7 Nov 2026 7pm. The format is strict: eight digits for the date, a capital T, six digits for the time. DTSTART:20261107T190000. Anything else is ignored or lands on the wrong day.
Gotchas
Time zones. A time without a suffix is “floating”: the calendar app treats 19:00 as 19:00 wherever the phone is. For a talk in a town hall that is exactly right. For a webinar with viewers in three countries, write the time in UTC and add a Z, so DTSTART:20261107T190000Z, and every phone converts it to local time. Named zones with TZID=Europe/London are valid but many scanners do not support them.
All day events. Use DTSTART;VALUE=DATE:20261107 with no time. Some scanners handle this, some do not; test.
Line endings and length. Each line is a separate field. The event above is about 100 characters and fits version 5 at level M, 37 modules wide. A long DESCRIPTION quickly doubles that; put the details on a web page and link to it in URL instead.
Special characters. Commas and semicolons in SUMMARY, LOCATION or DESCRIPTION must be escaped with a backslash, LOCATION:Town Hall\, High Street. QR Studio does this for you.
Fixed data. If the date changes, the printed code is wrong forever. For anything that might move, a URL code to a page with the current details is safer.
Try it in QR Studio
QR Studio has a Calendar event type with date and time pickers. It writes the DTSTART and DTEND lines in the right format, escapes the location, and shows the finished block before you export.
Print advice
Level M. Posters are scanned from a metre or so, so 5 to 8 cm is comfortable; on an invitation 2.5 to 3 cm is enough. Print the date, time and venue in plain text as well, prominently. The code saves typing; it should never be the only place the details appear.
Try it yourself
Pick a date and time, add a title and location, and see the VEVENT block the code will carry.