iCal to CSV Converter

Drop the .ics file your calendar exported and get one row per event, with start and end as real dates.

Drop your iCal file here or click to choose a file — or paste your data below

What the calendar format hides

  • Dates become dates. 20240315T090000Z is written as a real date, so you can sort events chronologically instead of alphabetically.
  • All-day events are recognised. A date without a time is read as a whole day rather than as midnight in some arbitrary zone.
  • UTC is converted. A timestamp ending in Z is brought back to local time, which is the time you actually had the meeting.
  • Folded lines are rejoined. Long descriptions wrap onto continuation lines; read naively they come out chopped.
  • Organiser and attendees are readable. The mailto: prefix is stripped so the column holds addresses, not URIs.
  • Escapes are decoded. The escaped commas, semicolons and newlines the format requires become real characters again.

Is my file uploaded anywhere?

No. This page has no server side: the file is read and written back by JavaScript running on your own machine. You can check it by opening the page, disconnecting from the network, and converting a file anyway.

What this is useful for

Counting hours spent in meetings, billing time back to clients, or auditing a shared calendar — all of which need the events as rows in a spreadsheet, and none of which a calendar application will give you directly.