An ICS builder creates the standard calendar file that lets anyone add an event to their own calendar with one click. The .ics (iCalendar) format is defined by RFC 5545 and understood by Google Calendar, Apple Calendar, Outlook, and almost every other app. This free tool turns a simple form into a valid file, entirely in your browser.
How it works
The tool wraps a single VEVENT inside a VCALENDAR envelope and fills in the required and optional properties:
UID— a unique identifier so re-importing updates the same event instead of duplicating it.DTSTAMP— when the file was created, in UTC.DTSTART/DTEND— the start and end, as a UTC date-time (...Z) for timed events or a plainDATEfor all-day events.SUMMARY,LOCATION,DESCRIPTION— your text, with commas, semicolons, and newlines escaped as the spec requires.RRULE— an optional recurrence rule likeFREQ=WEEKLY;COUNT=8.VALARM— an optional reminder with aTRIGGERsuch as-PT15M.
Long lines are folded at 75 octets with a leading space on continuation lines, and line endings use CRLF, both of which the standard mandates.
Common use cases for ICS files
“Add to Calendar” buttons on websites. If you are running an event, a webinar, or a product launch, linking to a downloadable .ics file lets visitors add it to their own calendar instantly without needing to copy-paste details. The downloaded file opens directly in the visitor’s calendar app and presents an import prompt.
Sharing one-off events without creating a shared calendar. Rather than inviting someone via a calendar application (which requires knowing which system they use), you can send an .ics attachment in email. The recipient can accept it in any calendar client regardless of platform.
Automating recurring event creation. If you need to generate a series of recurring events — for example, a weekly standup with specific exceptions — building the ICS file gives you precise control over the RRULE, which calendar-app UIs sometimes do not expose fully.
Archiving event records. An .ics file is a durable, plain-text record of event details. For legal or compliance purposes, a directory of ICS files can serve as an audit trail of scheduled activities.
The RRULE recurrence syntax
The RRULE property is one of the most powerful features of the iCalendar format. Common patterns:
| Rule | Meaning |
|---|---|
FREQ=DAILY;COUNT=5 | Repeats daily for 5 occurrences |
FREQ=WEEKLY;BYDAY=MO,WE,FR | Every Monday, Wednesday, Friday |
FREQ=MONTHLY;BYDAY=1MO | First Monday of each month |
FREQ=YEARLY;BYMONTH=3;BYDAY=SU | Every Sunday in March |
FREQ=WEEKLY;UNTIL=20261231T235959Z | Weekly until end of year |
The UNTIL date ends the series at a specific date; COUNT caps the number of occurrences. If neither is provided, the series repeats indefinitely.
All-day versus timed events
For timed events, DTSTART and DTEND use the format YYYYMMDDTHHMMSSZ (UTC). The tool converts your local time to UTC before writing the file.
For all-day events, the format is YYYYMMDD with VALUE=DATE and no time component. RFC 5545 specifies that DTEND for an all-day event is the day after the last day — a one-day event on 1 June ends on 2 June in the file. This is not an error; it is how the standard defines all-day event boundaries. Most calendar apps handle this correctly when displaying the event.
Tips and notes
- Special characters in text are escaped automatically — you do not need to add backslashes yourself.
- Keep the
UIDstable if you re-export an edited version, so calendars treat it as an update rather than a new event. - For all-day events remember
DTENDis exclusive, so the tool sets it to the day after your chosen end date. - The generated file is plain text — open it in any editor to inspect exactly what your calendar will import.