November 24, 2016 - Technic

Free ICS to CSV converter

Privacy Notes

Please do not use the service, if you don't accept the following:

  • When debugging, I log geolocation and the size of the original ics file.

If You Do Choose To Convert

  • To protect the privacy of your data, the converted file has a generic title.
  • You will be prompted to save it on your machine as soon as conversion completes.
  • Data encryption (https) is enabled.
  • I don't keep copies of your ics files.
  • I don't collect or resale your events' information.
  • This is a private hobby and I don't receive any financial benefits.

Please select the ics file(s) to be converted in csv
20 max

Or enter a URL

Include Columns

DUE (required for Reminder Events)
DURATION (calculated as DTEND - DTSTART in hours)

Additional Options

Repeats (until the end of next year)
Remove CANCELLED repeated events
Do not convert UTC times
Conversion range

Conversion Notes

You may select a separator, the desired date format and how time in events should be handled. If you don't need all possible columns from the calendar file, you can omit them. This makes the conversion quicker and the resulting csv file smaller.

  • Comma separated csv files open easily in EXCEL.
  • Tab separated csv files are easier to be viewed in simple text editors.
  • Converted file will be a double quoted in Unicode (UTF-8) text file, ending in '.csv'.

Feel free to send your issues or feedback hereto…

BMC logo Buy me a coffee

302821 files converted so far…
Last modified on: December 2021

Last Changes

  • Better fix for issue where the option 'Current Month' would omit sometimes events on the last day of the month. Thanks Julie for letting me know that is still not always working.
  • In calendars where there was no time zone info, time conversion happened according to the time zone of the web server (Europe/London). Now the converter first searches for the time zone of the browser and defaults to the time zone of the web server only if the info couldn't get retrieved. Thanks Jason for reporting it.
  • New column: 'CATEGORIES' of the event. Thanks Adelle for suggesting it.
  • Sometimes, when many events were scheduled on the same date and time some rows might get omitted. Thanks Jonathan for reporting this.
  • The option 'Current Month' would omit sometimes events on the last day of the month. This is fixed now. Thanks Mauricio for letting me know.
  • Inserted a conversion range option of 'Current Quarter'. It will deliver events of the last 3 months until the end of the current month. Complying to a request of Gustavo.
  • Inserted an option to convert the complete or just some range of the calendar. Suggested by Funny.
  • The option 'Remove CANCELLED repeated events' removes now also events which had been moved and replaced by another event on other dates. Thanks Frank for suggesting this.
  • Moved recurring events show now in an extra column 'REPLACES RECURRENT EVENT FROM' the date of the event they replace. Thanks Frank for your feedback.
  • Events with a SUMMARY starting with uppercased strings followed by ':' could create rows with "untitiled" events. This should be fixed now. Thanks James for reporting it.
  • Handling event without a UID could lead to issues, of the UID columns was enabled. This should be fixed now.
  • Events or Todos without DTSTART, DTEND or DUE would get a nill date - ie Jan 1st, 1970 - in the according columns. This should be now working better.
  • New column: 'DURATION (calculated in hours as DTEND - DTSTART)' which calculates the difference in hours between DTEND and DTSTART.
  • New column: 'ORGANIZER' of the event. Thanks Göran for suggesting it.
  • There is a limit of 20 to the amount of files you can convert at once. Now the converter reflects the limit and warns if you exceed it by your selection. Thanks Tim for pointing this out.
  • Long DESCRIPTION texts could show up in the converted NOTES columns without required spaces between some words. Thanks Russ for your feedback, this should work much better now.
  • Sometimes the CALENDAR name wasn't correctly outputted in repeated rows. Thanks Bruce for pointing this out.
  • Inserted the option 'Remove CANCELLED repeated events' to control omitting deleted events in the CSV. If disabled, the deleted events will be outputted along with a note that those events were CANCELLED.
  • Excluded dates in repeat rules (EXDATE) are now also supported and deleted events will be omitted in the CSV. Thanks Bruce for mentioning this missing feature.
  • Handling for DESCRIPTIONS with custom 'Description' tags (such as 'CUST CONTACT', 'PHONE #', 'ADDRESS', 'UNIT #', etc) as requested by Perry and Evan.
  • Inserted an option to convert files by their URL. Currently it only converts URLs containing the 'ics' string. Please contact me, if it should also work for other endings.
  • Increased the limit for Repeats by one year. Thanks Jacque for asking this.
  • Sometimes, sorting the rows by their DTSTART didn't work. This should be fixed now.
  • Some Repetition rules without INTERVAL would cause the conversion to stall. This is fixed now. Thanks Corné for sending me your ics file to debug the issue.
  • Better RRULES logging in the Notes by disabled 'Repeats (until the end of this year)' option.
  • Custom repetition rules such as every 2 month on the 3rd Thursday of the month wouldn't create repetitions. Conversion now creates repeats. Thanks Lisa Marie for reporting it.
  • New option: 'Do not convert UTC times' which leaves UTC times as they have. Suggested by Eric.
  • You can now optionally also output the UID of the event. Thanks Levin for suggesting it.