What is an ICS file?
An ICS file is the universal exchange format for calendar events. The standard is called iCalendar (RFC 5545) and practically every calendar understands it: Google Calendar, Outlook, Apple Calendar, Thunderbird and many more.
How an ICS file is built
An .ics file is plain text. It starts with BEGIN:VCALENDAR and holds one BEGIN:VEVENT … END:VEVENT block per event, with title (SUMMARY), start and end (DTSTART/DTEND), location, description and a unique ID (UID).
Recurring events aren't stored one by one but as a rule (RRULE), in the example "weekly, 4 times". To keep times right everywhere, the time zone comes along (TZID), ideally with its DST rules in a VTIMEZONE block.
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Kalender Sync//ICS-Werkstatt//DE
BEGIN:VEVENT
UID:4f1c…@kalender-sync.de
DTSTART;TZID=Europe/Berlin:20261020T100000
DTEND;TZID=Europe/Berlin:20261020T110000
RRULE:FREQ=WEEKLY;COUNT=4
SUMMARY:Jour fixe
LOCATION:Büro München
END:VEVENT
END:VCALENDAR Where ICS files come from
- Invitations: Meeting requests by email often carry an invite.ics attachment.
- Calendar exports: Google Calendar, Outlook and Apple Calendar export whole calendars as .ics.
- Bookings & tickets: Flights, trains, doctor's appointments, concerts: the event arrives as an "add to calendar" file.
- Schools & clubs: Holidays, fixtures and events are often offered as ICS downloads.
Opening an ICS file on each device
- Windows: Double-click opens it in Outlook or the Windows Calendar app. To look without importing, use our ICS viewer.
- Mac: Double-click opens Apple Calendar and asks which calendar to import into.
- iPhone & iPad: Tap the file in the mail attachment, then "Add All".
- Android: The Google Calendar app doesn't import files. Import on a computer via calendar.google.com, or view the file here in the browser.
ICS file, calendar subscription or sync?
- ICS file: a one-off copy. If an event changes later, you won't know.
- Subscription (webcal://): reloads the same file periodically but is read-only. Google sometimes takes many hours to refresh.
- Sync: keeps two or more calendars aligned continuously, even both ways. That's what Kalender Sync is for.
Common import problems
- Wrong time: The time zone is missing or a Windows name like "W. Europe Standard Time". The ICS viewer flags this.
- Duplicate events: Events without a UID, or importing the same file twice, create everything again.
- Unwanted reply emails: Files with METHOD:REQUEST are invitations; some calendars reply automatically on import.
- Only part of a series: Exceptions of a series (moved single occurrences) need the series' UID, otherwise they get lost.