Free online ICS to CSV converter
Convert calendar events from ICS into editable CSV rows for spreadsheets and data tools.
Convert ICS to CSV online - free
Column separator
Excel in many European languages expects a semicolon; with commas it puts everything into one column.
Character encoding
If Excel shows broken accents, choose UTF-8 with BOM or the Windows code page.
Your file is processed instantly and deleted as soon as you download it.
Import a file from a URL
Paste a direct link to the file. We download it to our server and it is converted exactly like an upload.
How it works
-
1/3
Upload your .ics file
Click to browse to select your file you want to convert or simply drag & drop your file into selected area.
-
2/3
Perform .ics to .csv conversion
After successful file upload, click to convert when you are ready.
-
3/3
Download converted .csv file
Conversion result is ready to download.
Conversion statistics: ICS to CSV
Updated November 10, 2026, from conversions on 101convert.com
How to convert ics to csv file
- Contacts and address books
- No ratings yet.
Spreadsheets, databases, and reporting systems often require CSV when a calendar application supplies only an ICS export. Converting the file creates one row per event for filtering, editing, archiving, or importing into software that does not support iCalendar.
What the ICS format is
ICS is the common file extension for iCalendar, a structured plain-text calendar format defined by RFC 5545. Microsoft Outlook, Apple Calendar, Google Calendar, Mozilla Thunderbird, and scheduling systems can create or import it.
ICS files commonly contain VEVENT records with subjects, start and end times, locations, descriptions, attendees, organizers, alarms, time zones, recurrence rules, and unique identifiers. They can also contain VTODO tasks or VJOURNAL entries. Most calendar exports primarily contain events.
What the CSV format is
CSV is a delimited text table: each row represents a record and each column represents a field. Microsoft Excel, LibreOffice Calc, Google Sheets, database tools, and data-analysis software can open CSV files.
CSV makes event data easy to sort, filter, deduplicate, edit in batches, and use in reports. It does not preserve the complete iCalendar data model. Typical columns include Subject, Start, End, Location, Description, UID, RRULE, and TimeZone.
How to convert an ICS file to CSV
For a one-time conversion without installing software, upload the .ics file to the free converter on 101convert.com and download the resulting .csv file. Open the output in a spreadsheet and check dates, times, descriptions, and delimiters before importing it elsewhere.
For private, repeatable, or customized conversions, Python and the icalendar package provide control over the output fields:
- Install Python and the parser package:
python -m pip install icalendar
- Save this script as
ics_to_csv.py:
import csv
import sys
from datetime import date, datetime
from icalendar import Calendar
def text(component, name):
item = component.get(name)
if item is None:
return ""
value = item.dt if hasattr(item, "dt") else item
if isinstance(value, (datetime, date)):
return value.isoformat()
return str(value).replace("\r", " ").replace("\n", " ")
def timezone(component, name):
item = component.get(name)
return str(item.params.get("TZID", "")) if item is not None else ""
with open(sys.argv[1], "rb") as source:
calendar = Calendar.from_ical(source.read())
fields = [
"Subject", "Start", "End", "Location", "Description",
"UID", "RRULE", "TimeZone"
]
with open(sys.argv[2], "w", newline="", encoding="utf-8-sig") as target:
writer = csv.DictWriter(target, fieldnames=fields)
writer.writeheader()
for event in calendar.walk("VEVENT"):
writer.writerow({
"Subject": text(event, "SUMMARY"),
"Start": text(event, "DTSTART"),
"End": text(event, "DTEND"),
"Location": text(event, "LOCATION"),
"Description": text(event, "DESCRIPTION"),
"UID": text(event, "UID"),
"RRULE": text(event, "RRULE"),
"TimeZone": timezone(event, "DTSTART"),
})
- Run the script with the input and output filenames:
python ics_to_csv.py calendar.ics calendar.csv
Open calendar.csv in LibreOffice Calc using File → Open. Select UTF-8 encoding and comma separation if prompted. Excel can use the operating system's list separator instead of a comma, so select the delimiter manually when columns appear in one field.
Quality and compatibility limits
- Recurring events: The script exports the recurrence rule but does not expand it into separate occurrences. Use a calendar application's export options or recurrence-aware code when each occurrence must become its own row.
- Time zones: ICS supports UTC, named time zones, and floating local times. CSV has no standard time-zone type; retain the UTC offset and, when available, a separate
TimeZonecolumn. - All-day events: These normally use dates rather than timestamps. An iCalendar end date is commonly exclusive, so do not automatically treat it as an additional calendar day.
- Multiple values and related records: Attendees, categories, alarms, recurrence exceptions, and other properties may be flattened or omitted by a simple table export. Add dedicated columns or preserve the original ICS alongside the CSV.
- Data loss: CSV cannot retain calendar behavior such as alarms, invitations, recurrence logic, and exception relationships. Keep the original ICS as the authoritative calendar copy.
- Privacy: Descriptions, attendee addresses, organizer information, and meeting URLs may appear in the CSV. Remove sensitive columns before sharing it.
ICS vs CSV: format comparison
How the ICS and CSV formats compare on the properties that matter most for this conversion.
| Property | .ICS vCalendar/iCalendar file | .CSV Comma-Separated Values |
|---|---|---|
| Plain-text readable | Yes | Yes |
| Data types | Typed | Typed |
| Nested structures | Yes | No |
| Formulas | No | No |
| Multiple tables or sheets | No | No |
| Typical file size | Small | Small |
| Open standard | Yes | Yes |
| Best used for | Sharing and distribution | Data exchange |
| Introduced | 1998 | — |
| Developer | Internet Engineering Task Force (IETF) | — |
| MIME type | text/calendar | text/csv |
Information about file extensions and file types is provided by File-Extensions.org
Suggested software and links: ics to csv converters
Frequently asked questions
Is the ICS to CSV converter free?
Yes, converting ICS to CSV on 101convert.com is completely free. No registration, email address or installation is required. If you need a higher file size limit or want to convert more files at once, see our plans.
How large can my ICS file be?
You can upload ICS files up to 3 MB and convert up to 3 files at once in a single batch. With a paid plan the limit is up to 15 MB per file and 100 files at once, see our plans.
What happens to my uploaded files?
Files are processed automatically and deleted from our servers within a few minutes after conversion. We never view or share your files.
Do I need to install any software to convert ICS to CSV?
No. The ICS to CSV conversion runs entirely online in your browser and works on Windows, Mac, Linux, Android and iPhone.
Did the conversion fail?
In most cases, the cause is an incorrect file format. Please upload a valid ICS file for this ICS to CSV conversion. Occasionally, the issue may be on our side. We analyze recurring conversion failures and disable or fix the converter if we detect a defect.
Will my ICS calendar events become separate rows in CSV?
Usually, each calendar event becomes a row and its fields, such as title, start time, end time, location, and description, become columns. Calendar features that do not fit naturally into table cells may be flattened into text or omitted.
Are recurring events preserved when converting ICS to CSV?
Recurring events may not remain fully editable as recurrence rules in CSV. The rule might be stored as text, or repeated occurrences might be written as separate rows, depending on how the conversion handles recurrence data.
Will ICS time zones and all-day events change in CSV?
Time zones and all-day status are represented as date or text values rather than calendar-aware objects, so they can be easier to misread in spreadsheet software. Check the time-zone information and date formatting, especially when events use UTC offsets or span daylight-saving changes.
Why are some ICS details missing or shifted in my CSV?
CSV has no standard fields for features such as alarms, event attachments, attendee responses, calendar permissions, or rich descriptions, so those details may be flattened or left out. Commas, quotation marks, and line breaks inside event descriptions can also make a CSV look misaligned if they are not escaped correctly.