Open ICS File

Information, tips and instructions

Create ICS File

Generated ICS Content:


There are multiple different ways how you can create information in iCalendar format and save it to the ICS file. You can either use one of the applications which allows export of calendar information into ICS file, use development library to write out iCalendar information, convert file in some other format (CSV for example) to ICS, or type ICS file manually.

Use an application to create ICS File

There are many calendar applications which allow export of events into ICS file. These include:

All of the above applications can export and import information in iCalendar (ICS) format. It is possible to move events or entire calendars between these applications.

Use development library to write out ICS file

If you need to create ICS files algorithmically you can use one of the many available development libraries which can output information in iCalendar format. These include:

  • LIBICAL – Free and open-source C++ library which can read, change and write back data in iCalendar format.
  • iCal4j – Java open-source library which can read, process and generate iCalendar data.
  • ical.net- .NET library which has full support for iCalendar protocol. Developed by Markus Minichmayr.

Convert to ICS from another format

Sometimes event information is received in a format different from ICS and iCalendar. In this case it is possible to use a special application which can convert that format into iCalendar. There are websites on the internet like https://manas.tungare.name/software/csv-to-ical/ which can take csv file with events and convert it to ICS files. The input CSV file should be formatted in a specific way and contain following fields:

  • Subject
  • Start Date
  • Start Time
  • End Date
  • End Time
  • All Day
  • Description
  • Location
  • UID

Type ICS file in text editor

Probably most complex but at the same time perfectly doable is typing ICS file manually via text editor. You can either type all the entries based on iCalendar specification or you can just take any ICS file as an example and modify fields that you want. iCalendar specification has many examples with different iCalendar components in it. Also lots of sample ICS files are available on the internet for download so it could be relatively simple to copy an information from an existing ICS file and change it accordingly to your requirements.