What Is an ICS File? A Complete Guide to iCalendar
Learn what ICS files are, how they work, and why they're the universal standard for sharing calendar data across apps and platforms.
An ICS file is a plain-text file that stores calendar events in the iCalendar format — a universal standard (RFC 5545) for exchanging scheduling data. If you've ever exported a Google Calendar event, received a meeting invite, or hit "Add to Calendar" on a website, you've encountered one.
What's Inside
An ICS file is a hierarchy of components wrapped in BEGIN: / END: blocks:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//My App//EN
BEGIN:VEVENT
UID:[email protected]
DTSTART:20250415T090000Z
DTEND:20250415T100000Z
SUMMARY:Team Standup
END:VEVENT
END:VCALENDAR
The key components are VEVENT (events), VTODO (tasks), VTIMEZONE (timezone definitions), and VALARM (reminders). Every VEVENT needs at minimum a UID, DTSTART, and SUMMARY.
Recurring Events
The RRULE property handles repeating events in a single line — for example, RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR;COUNT=10 means every Monday, Wednesday, and Friday for 10 occurrences. It supports daily, weekly, monthly, and yearly frequencies with fine-grained controls.
Where ICS Files Are Used
- Calendar apps — Apple Calendar, Google Calendar, Outlook all import and export ICS natively
- "Add to Calendar" buttons — ticketing sites, conference pages, and booking platforms generate ICS files on demand
- Calendar subscriptions — a URL pointing to an ICS file lets apps subscribe to a live-updating calendar
- Rental platforms — Airbnb, Booking.com, and Vrbo use ICS feeds to sync availability across platforms
Because it's plain text, you can read an ICS file in any text editor — but for a proper visual layout, drop it into ICS Viewer for an instant month/week/agenda view with no account required.
Want to preview an ICS file right now?
Open ICS Viewer →