CSV to ICS Converter
Last reviewed on November 11, 2026
Have a spreadsheet of dates (class schedules, shift rotas, match fixtures, project deadlines) and
want them in your calendar? This tool turns a CSV file into an .ics file, the
standard calendar format that Google Calendar, Apple Calendar, Outlook, and almost every other
calendar app can import. It works with exports from Excel, Google Sheets, and Numbers.
How to set up your CSV
The first row should hold column names, and each row after that is one event. The tool recognizes
the column names Google Calendar and Outlook use, plus common alternatives like "Title", "Date",
"Time", "Notes", and "Venue". If your columns have other names, match them by hand in step 2.
| Column | Required? | Example | Notes |
| Subject | Recommended | Dentist appointment | The event title. Rows without one become "Untitled event". |
| Start Date | Yes | 12/03/2026 | Can also hold the time, e.g. 12/03/2026 2:15 PM. |
| Start Time | No | 2:15 PM | Leave blank for an all-day event. |
| End Date | No | 12/03/2026 | For all-day events, the last day of the event (inclusive). |
| End Time | No | 2:45 PM | If it's earlier than the start time, the event runs past midnight. |
| All Day Event | No | True | True / Yes / 1 makes it all-day even if a time is filled in. |
| Description | No | Bring insurance card | Line breaks inside the cell are kept. |
| Location | No | 123 Main St, Springfield | Commas are fine. Spreadsheet apps quote the cell for you. |
Date and time formats the tool reads
- Numeric dates:
11/26/2026, 26/11/2026, 26.11.2026, 11-26-26. Whether the day or the month comes first is detected from the whole file. If every date could be read either way, it assumes the US order and tells you.
- Year first:
2026-11-26 (ISO 8601), 2026/11/26, 20261126.
- Written out:
November 26, 2026, Nov 26 2026, 26 Nov 2026, Thursday, November 26, 2026.
- Times:
14:00, 2:00 PM, 2pm, 9:30:00 AM, noon.
- Full timestamps:
2026-11-26T14:00:00Z or with an offset like -05:00. These keep their own time zone and ignore the time zone setting.
Saving a spreadsheet as CSV
- Excel: File → Save As → choose CSV UTF-8 (Comma delimited). The plain "CSV" option also works, and the tool reads it, but UTF-8 keeps accented letters and symbols intact.
- Google Sheets: File → Download → Comma Separated Values (.csv).
- Numbers (Mac): File → Export To → CSV.
Semicolon- and tab-separated files, which Excel produces in many European locales, are detected automatically.
How to import the .ics file
Tip: make a new, empty calendar first and import into that. If anything looks
wrong, you can delete that one calendar and try again without touching your existing events.
Google Calendar
- Open Google Calendar on a computer. The phone app can't import files.
- Click the gear icon → Settings → Import & export.
- Click Select file from your computer and choose the .ics file.
- Pick which calendar the events go into, then click Import.
Apple Calendar (Mac, iPhone, iPad)
- Mac: in Calendar, choose File → Import, select the .ics file, and pick a calendar.
- iPhone or iPad: email the .ics file to yourself, open the attachment in Mail, and tap Add All.
Outlook
- Outlook on the web and the new Outlook: go to Calendar → Add calendar → Upload from file, browse to the .ics file, pick a calendar, and click Import.
- Classic Outlook for Windows: File → Open & Export → Import/Export → Import an iCalendar (.ics) or vCalendar file (.vcs). Choose Import to add the events to your main calendar, or Open as New to keep them in a separate calendar.
Time zones, explained
Timed events are saved with the time zone you pick, converted to UTC (Coordinated Universal Time)
in the file. That way a 2:00 PM meeting in New York shows as 11:00 AM for a colleague in Los
Angeles, which is what you want for meetings and calls. Daylight Saving Time is handled date by
date. A 9:00 AM event stays at 9:00 AM local time on both sides of the
clock change.
Choose No time zone if an event should happen at the same clock time wherever
the viewer is, such as "take medication at 8:00 AM" while traveling. All-day events never shift,
whichever setting you choose.
Troubleshooting
Every event is off by a few hours
The time zone setting doesn't match the times in your spreadsheet. Pick the zone the times were
written in, not necessarily the one you're in now, and download again.
Days and months are swapped
A file where every date is ambiguous, such as 03/04/2026, can't be detected reliably. Set
Date format to the right order by hand.
An all-day event is one day short or one day long
In this tool the End Date is the last day of the event, so an offsite from March 10 to March 12
covers three days. The .ics file stores the day after the last day, which is how the
format works. That's why the file says March 13 even though the calendar shows March 12.
Accented letters show up as strange symbols
Save the spreadsheet as CSV UTF-8 in Excel and convert it again.
Events appear twice
Importing the same file more than once can add every event again, depending on the calendar app.
Import into a fresh calendar so you can delete it in one step and start over.
Reminders didn't come through
Apple Calendar and Outlook use the reminder stored in the file. Google Calendar usually applies
your calendar's own default notifications to imported events instead.
Do I need to convert at all?
Not always. Google Calendar can import a CSV directly if the columns use its exact names (the same
ones as the template above), and classic Outlook for Windows can import a CSV through its
Import/Export wizard. Apple Calendar, the new Outlook, and Outlook on the web only take .ics files.
An .ics file is also easier to share: send it once and anyone can add the events, whichever
calendar app they use.
Related