📅CSV→ICS

CSV to iCal Converter — Turn a Spreadsheet Into a Calendar File

Use this page to convert CSV to iCal in one pass: drop a spreadsheet of events, check the column mapping, preview, then download. Everything runs 100% client-side in your browser — the file is never uploaded. An iCal file and an .ics file are the same thing — iCalendar format, RFC 5545. “iCal” is the old name of Apple's calendar app that stuck to the format.

📅
Written by Casey Marlin · Last updated
This update: generateICS output covered by scripts/test-ics.mjs and scripts/test-rrule.mjs
📅 CSV / Excel → ICS converter
100% in your browser — your file never leaves your device
Drop your CSV or Excel file here, or click to choose
.csv, .xlsx, .xls or .json — exports from Google Calendar, Outlook, Excel, Google Sheets and APIs
Download sample.csv template

.ical vs .ics — is there a difference?

People type “iCal” into a search box because Apple named its calendar app iCal from 2002 until 2011, and the name stuck to the file format. There is no format difference between a file named events.ical and one named events.ics. Both are iCalendar, the text format defined by RFC 5545. The bytes inside are the same: a VCALENDAR wrapper, VERSION:2.0, and one or more VEVENT blocks.

The extension .ics is the standard one. RFC 5545 section 8.1 registers the media type text/calendar with the .ics suffix. That is what Google Calendar, Outlook, Apple Calendar and every other app that implements the spec look for. Some apps and old exports still write .ical or .ifb. .ical is leftover from Apple's original iCal; .ifb is the free/busy sibling (VFREEBUSY instead of VEVENT); .icalendar shows up in a handful of older exporters that spelled the format name out as a suffix.

The file this tool downloads is .ics, and every app that asks you to import an iCal file accepts it. If a dialog says “iCal” and a file picker is looking for .ics, you are looking at the same format under two names.

ExtensionWhere you see it
.icsThe standard suffix. RFC 5545 §8.1 registers text/calendar with .ics. What this tool downloads, and what Google, Outlook and Apple Calendar import.
.icalLegacy Apple iCal and some older Mac exports. Same iCalendar bytes as .ics — only the filename differs.
.ifbiCalendar free/busy files (VFREEBUSY). Same media-type family, different component. Not an event calendar.
.icalendarRare full-word suffix used by a handful of older exporters. Still iCalendar text if the file starts with BEGIN:VCALENDAR.

How to convert CSV to iCal

The converter at the top of this page is the same engine as the CSV to ICS tool — because the output is the same format. Four steps, all in the tab:

1

Drop the file. A CSV export from Excel, Google Sheets, Google Calendar or Outlook all work. The first row should be headers; every row after it is one event. Only a start-date column is required; a row without a title becomes '(untitled event)'.

2

Check the mapping. The converter auto-detects Subject, Start Date, Start Time, End Date, End Time, All Day, Location and Description — including the header variants Google and Outlook use. A mis-detected column takes one dropdown click to fix.

3

Preview the events and read the validation report. The first cards show dates, times, timezone and all-day badges as they will land in a calendar. The report flags unreadable start dates, end-before-start rows, missing titles, ambiguous 03/04-style dates and timezone tokens mixed into cells.

4

Download the .ics. Pick an IANA timezone (it defaults to your browser's zone) and save the file. Timed events get a real VTIMEZONE block; all-day events are written as VALUE=DATE with the DTEND-exclusive +1 day convention handled for you.

The downloaded file is RFC 5545 iCalendar with CRLF line endings, 75-octet folding and a unique UID per event. That is the interchange format every calendar app already speaks — the filename just happens to end in .ics, which is the registered suffix for the format people still call iCal.

Importing the file into Apple Calendar (iCal)

Apple Calendar on a Mac still answers to “iCal” in a lot of muscle memory, and it has no CSV import at all. Converting the spreadsheet to an iCalendar file is the only path in. After you download the .ics:

  • File → Import in Calendar on macOS. Point it at the downloaded file and choose which calendar the events should land on.
  • Double-click the .ics.macOS opens it in Apple Calendar and offers to add the events. That is the same file a dialog asking for an “iCal file” is waiting for.

On iPhone the usual route is to AirDrop or mail the file to yourself and tap it — iOS hands it to Calendar. For the full walkthrough (Mac, iPhone, which calendar the events join, and what to do when a duplicate appears) see CSV to Apple Calendar.

If an app insists on the .ical extension

A few older importers, scripts and file pickers filter on *.ical and refuse to show *.ics. Renaming file.ics to file.ical is safe. The content is identical: same VCALENDAR, same VEVENTs, same DTSTART values. No conversion happens. Calendar apps key off the text inside the file (BEGIN:VCALENDAR), not the three or four letters after the last dot.

Do the rename in Finder, Explorer or any file manager — do not open the file in a word processor and Save As, which can wrap the text in rich-text formatting and break the import. If you are unsure the renamed file still parses, drop it on the ICS viewer on this site: it reads .ics and .ical the same way, because they are the same format.

Building the file by hand instead of from a spreadsheet? The ICS file creator makes an .ics from a simple form — and either way, the ICS validator runs it through our ICS lint — structure, dates, UIDs, timezones and RRULE basics.

CSV to iCal — frequently asked questions

Is iCal the same as ICS?

Yes. iCal, ICS and iCalendar are three names for one format: RFC 5545. An .ics file is an iCal file. Apple's old calendar app was named iCal, and that name stuck to the file type. The converter on this page downloads .ics, which is what every calendar app that asks for an iCal file actually opens.

How do I convert a CSV file to iCal for Apple Calendar?

Drop the CSV into the converter at the top of this page, check the column mapping, preview the events, and download the .ics file. On a Mac, open Apple Calendar and choose File → Import, or double-click the file — it opens in Calendar. Apple Calendar has no CSV import of its own, so converting to iCal/ICS is the only route. The CSV to Apple Calendar page on this site walks through Mac and iPhone in more detail.

Does this upload my file?

No. The conversion is 100% client-side. JavaScript in your browser tab parses the CSV and builds the iCalendar file. Nothing is sent to a server, stored, or logged. After the page has loaded you can go offline and still convert.

Can Google Calendar and Outlook open iCal files too?

Yes. Google Calendar, Outlook (classic, new Outlook and Outlook.com) and Apple Calendar all import RFC 5545 iCalendar files. The .ics this tool writes is that format: CRLF line endings, 75-octet folding, a UID per event and a VTIMEZONE block for timed events. If an app's import dialog says iCal, ICS or iCalendar, it is asking for this file.

Why does my exported file end in .ics and not .ical?

Because .ics is the registered extension. RFC 5545 section 8.1 binds the media type text/calendar to .ics. Calendar apps, mail clients and operating systems look for that suffix. The bytes inside are iCalendar either way; renaming events.ics to events.ical does not change the content, and every major app still opens it.

Can I convert iCal back to CSV?

Yes. Use the ICS to CSV tool on this site: drop the .ics (or .ical — same format) and download a spreadsheet with one row per event. From there you can edit in Excel or Google Sheets and convert back if you need a calendar file again.

Keep reading