CSV to ICS
Documentation

How to use CSV-to-ICS Converter

CSV-to-ICS Converter is a simple and free tool for converting text files (CSV or TSV) into ICS calendars - all in the privacy of your own computer. The basic features are very easy to use and the following sections will help get you started.

CSV-to-ICS Converter also includes some advanced capabilities which could be overlooked. This documentation will help you get the most out of CSV-to-ICS Converter.

We hope you'll find this documentation useful. If you have any ideas or suggestions on how the documentation could be improved, please let us know.

How to install and start CSV-to-ICS Converter

CSV-to-ICS Converter runs on Windows XP, 7, 8.x, and 10. It requires .NET Framework 4.0 or later, which is already included on most Windows installations. If you're using Windows XP, you'll need to also make sure KB2468871 has been installed.

CSV-to-ICS Converter doesn't need to be installed like a traditional Windows app. It downloads as a single file that can be run from any location you'd like, including a local drive, network folder, cloud drive, etc. It doesn't need any elevated permissions and won't modify the Windows registry or do anything else to your system.

  1. If you haven't already, download CSV-to-ICS Converter. We won't ask your email address, there's no sign up required, and the download is completely free.
  2. After downloading, open the Downloads folder. Look for the file name is CsvToIcs.exe. You can copy this file somewhere else, or run it directly from the Downloads folder. Double-click the file or right-click the file and select Open.
  3. The first time CSV-to-ICS Converter is started, a license agreement will appear. It's a bunch of legal mumbo-jumbo our lawyers force us to show you - but basically it just means you agree to not do something crazy like try to reverse engineer the software or sue us if the software causes your computer to explode. There's also an option to create a CSV-to-ICS Converter shortcut on your desktop, so you won't have to hunt for the file location the next time you want to run the software.
  4. Click the Next button to continue loading CSV-to-ICS Converter, or Exit if you really did plan to sue us and the license agreement foiled your plans.
  5. The main CSV-to-ICS Converter window will appear. If this is the first time the app has been started, a webpage will also appear with some information to help you get started. From this point, you can start converting CSV and TSV files to ICS files. The following sections explain how to do that.

How to format a text file to be capable of being converted into an ICS file

CSV-to-ICS Converter can process text files that are formatted with comma-separated values (CSV) or tab-separated values (TSV). These files can be created in any spreadsheet editor, such as Excel. The first row can be a header, defining the field names for data in the following rows. If a header row isn't specified, you'll need to first specify how the column indices map to data fields. The Free Edition can convert files that contain 100 or fewer events (rows). The Pro and Ultimate Editions have no file size limitation.

An example CSV file is shown below:

An example CSV file that can be converted into an ICS file.

The table below defines the default field names supported by CSV-to-ICS Converter, along with the possible field name variations. The fields can be defined in any order and the only mandatory fields are Title and Start (or Start Date and Start Time). All other fields are optional. If your fields have different names or if your file doesn't include a header row, the column mappings can be customized when using the Ultimate Edition.

Additional custom fields can also be present. The values in those fields will be processed when using the Ultimate Edition, or ignored when using the Free or Pro Editions. Custom field labels and values will appear in the event descriptions of the generated ICS file.

Software-specific extention properties, such as X-MOZ-GENERATION, can also be present. Any field name that has an X- prefix will be treated as an extension property. If a value is specified, the extension property will be included within the corresponding VEVENT of the generated ICS file. This is an advanced feature and is only supported in the Ultimate Edition.

Field Name Variations Description
Title Subject, Summary, Event The event title text.
Location Address, Room The event location.
Category Categories The event category. If there are multiple categories, separate them with semicolons. Example: "Work; Important; Follow-up"
Priority Priority Level, Importance The event priority ("High", "Medium", "Low", or blank).
Description Body, Message, Detail, Details, Notes, Memo The event description.
Start Start Date/Time, Starting Date/Time, Begin The event starting date and time. For an all-day event, just the date is needed. The format should match the date/time format used by Windows, as specified in the Control Panel, under "Clock, Language, and Region > Change date, time, or number formats".

Use this field when you want to combine the starting date and time into a single field. If you want to separate the date and time fields, use the Start Date and Start Time fields instead.
Start Date Starting Date, Begin Date The event starting date.
Start Time Starting Time, Begin Time The event starting time. Leave blank for all-day events.
End End Date/Time, Ending Date/Time, Finish, Due The event ending date and time. For an all-day event, just the date is needed. The format should match the date/time format used by Windows, as specified in the Control Panel, under "Clock, Language, and Region > Change date, time, or number formats".

Use this field when you want to combine the ending date and time into a single field. If you want to separate the date and time fields, use the End Date and End Time fields instead. If none of these fields are included, the Duration field will be used to calculate the ending date/time.
End Date Ending Date, Finish Date, Due Date The event ending date.
End Time Ending Time, Finish Time, Due Time The event ending time. Leave blank for all-day events.
Duration Length The event duration. The value should be formatted as "N span", where N is a number of span is "minutes", "hours", "days", "weeks", or "months". Example: "30 minutes".

This field can be used as an alternative to the End, End Date, and End Time fields. The ending date/time will be calculated when this field is present.
Time Zone Timezone, Time-Zone, Timezone Name, Timezone ID, TZ, TZID The event time zone. The value should be one of the time zone names supported by Windows, such as "Central Standard Time". Each event can have a time zone specified. A mix of multiple time zones is supported.

If not specified, the default time zone specified in the Options will be used. Unless you've changed the default time zone option, it will be the same as the local time zone used by Windows.
All Day All Day Event, Entire Day, All-Day, All-Day Event An all-day flag used for events that occur over the span of an entire day, such as birthdays and holidays.

Values that are blank, "No", or "False" will be treated as non all-day events, while values of "X", "Yes", or "True" will be treated as all-day. This format is also used by the Reminder, Recurs Daily, Recurs Weekly, Recurs Monthly, and Recurs Yearly fields.
Free/Busy Busy, Busy Status The busy status of an event. This status will be generated to a X-MICROSOFT-CDO-BUSYSTATUS property in the output. Compatible software, such as Outlook, will show the event status accordingly.

Supported values are "free", "tentative", "busy", and "OOF" (out of office).
Reminder Popup, Popup Reminder, Popup Reminder Time, Reminder Time, Alert, Alert Time, Notification, Notification Time The time before the event starts when a reminder should appear. If blank, there will be no reminder. Otherwise, specify the length of time as "N span", similar to the Duration field's format.
Required Attendees Attendee, Attendees, Recipients, Required, To Required attendees for a meeting request. Multiple attendees can be separated with semicolons. Attendees can be specified with a name followed by an email address (example: "John Doe <johndoe@gmail.com>") or just an email address.

Note: CSV-to-ICS Converter won't automatically send a meeting notice. This will be up to the software used to import the resulting ICS file. For example, if importing into Outlook, each imported meeting will need to be opened and the Send button clicked in order to send the converted meeting notices.
Optional Attendees Optional, CC Optional attendees for a meeting request, formatted the same as Required Attendees. These attendees will be on the CC line when a meeting notice is sent.
Organizer Meeting Organizer, From The meeting organizer, formatted the same as Required Attendees. If left blank, the account or profile used in the software that imports the meeting notices from the ICS file will be the meeting organizer.
Recurrence Recurrence Summary, Recurs, Repeat, Repeats This field specifies a basic recurrence pattern for the event. The first occurrence of the series is specified by the Start field. Supported values are "Daily", "Weekly", "Monthly", and "Yearly". This field should be blank for events that don't recur.

This field can be used as an alternative to the separate Recurs Daily, Recurs Weekly, Recurs Monthly, and Recurs Yearly fields.
Recurs Daily Daily, Recur Daily A flag indicating an event that recurs daily. The first occurrence and day-of-week are determined by the Start field.
Recurs Weekly Weekly, Recur Weekly A flag indicating an event that recurs weekly. The first occurrence and day-of-week are determined by the Start field.
Recurs Monthly Monthly, Recur Monthly A flag indicating an event that recurs monthly. The first occurrence and day-of-month are determined by the Start field.
Recurs Yearly Yearly, Recur Yearly A flag indicating an event that recurs yearly. The first occurrence and day-of-year are determined by the Start field.
ID UID, Unique ID, Key A unique identifier for the event. Specifying unique identifiers will help ensure events aren't duplicated when importing updated ICS files into other calendar programs.
X-label   Software-sprecfic extension properties can be specified. These fill map directly to corresponding extension properties in the generated ICS file. Any column that begins with a X- prefix will be treated as an extension property. Example: ICS X-MOZ-GENERATION. Note, this feature requires the Ultimate Edition. Extension properties will be ignored when using the Pro or Free Edition.

How to customize the mapping of input columns to ICS data fields

If you have column headers that don't match the column names CSV-to-ICS Converter is expecting, or if your files don't include a row header, the mapping of input columns to data fields can be customized when using the Ultimate Edition.

To map column names, make sure the box labeled Input files include a header row containing column names is checked. Next, enter your column names in the list and pick the mapped data fields from the drop-down. You don't need to override the mapping of column names that CSV-to-ICS Converter already recognizes. To delete a mapping, select the row and then press the Delete key.

If your files don't include a header row, you can map fields based on column index, where the left-most column has an index of 1. Uncheck the Input files include a header row containing column names box. Enter the column index values and select the mapped data fields from the drop-down. The index values don't need to be in any particular order and you can skip index values for columns you don't want processed. Note: processing of custom fields and extension properties won't be performed when a column header isn't present.

Column mappings and other settings, such as the folder to monitor for automatic ICS generation, can be saved using the Save Settings button, or loaded using the Load Settings button. Settings are also saved automatically, but this feature makes it possible to transfer settings from one computer to another.

How to convert a CSV or TSV file into an ICS file

You can follow these simple steps to convert a single CSV or TSV file into an ICS file:

  1. Activate the Convert a single file tab, if it's not already displayed.
  2. Select an input CSV or TSV file by entering the full path and file name in the Input file field, or by clicking the "..." button to browse for a file to open. The file needs to have a .csv, .tsv, or .txt extension. Recently selected files can be accessed by clicking the drop-down arrow.
  3. Specify an output ICS file by entering the full path and file name in the Output file field, or by clicking the "..." button to enter a file to save. If the output file or folder doesn't already exist, it will be created. Otherwise, the previous file will be overwritten.
  4. After specifying the input and output file names, the Convert button will become enabled, as shown in the example below:
    The 'Convert a single file' tab is where an input CSV file and output ICS file can be specified. Click the Convert button to perform the file conversion.
  5. Click the Convert button to perform the conversion. Depending on the size of the input file, this might take a few seconds. When the conversion completes, the window will update to show the result.
    After clicking the Convert button, the window will refresh to show whether the file conversion was successful.

The generated ICS file can be imported into almost any calendar app, including Google Calendar, Outlook, VueMinder, PrintableCal, and more. You can send it by email to other people, put it on a website, or do anything else you'd like with the ICS file. If you haven't purchased a license, a small note will appear in the description of the converted events, indicating the ICS file was generated using the Free Edition of CSV-to-ICS Converter. This note can be removed by upgrading to the Pro or Ultimate Edition.

How to automatically convert multiple CSV/TSV files into ICS files

If you have many files to convert, doing them one at a time might become tedious. The Ultimate Edition can convert an entire folder containing CSV/TSV files into ICS files. CSV-to-ICS Converter can run in the background and continue to monitor the specified folder. If any files are added or modified within the folder, updated ICS files will be automatically generated. This automated processing could save untold hours of performing single file conversions. It's a premium feature, but one that could easily pay for itself by freeing up your time to do other more important things.

You can follow these steps to convert an entire folder of CSV/TSV files into corresponding ICS files:

  1. Activate the Ultimate Edition free trial or purchased license, if you haven't already.
  2. Select the Automatically convert files tab if it's not already displayed.
  3. The first time the tab is displayed, the input and output folder fields will be empty and will need to be specified. CSV-to-ICS Converter will remember the specified folder names.
    The 'Automatically convert files' tab is where an input folder containing CSV files can be specified. The files will be automatically converted into ICS files and stored in the specified folder or uploaded to your website.
  4. To specify a folder, enter the folder name or click the "..." button to browse for the folder. Previously specified folders can be selected by clicking the drop-down button. The output folder doesn't need to be on your local hard drive. It could also be a network folder, cloud drive folder, or other external folder. If the output folder doesn't exist it will be created.
  5. Click the Convert Now button to perform the conversion. The Log will refresh to show the conversion results.
    A log will show when CSV files have been automatically converted into ICS files.
  6. If you leave CSV-to-ICS Converter running, the specified input folder will be monitored for changes. Any new or updated CSV/TSV files will be automatically converted into corresponding ICS files in the specified output folder.

CSV-to-ICS Converter can be minimized to the notification area rather than the task bar. While minimized, it will continue to run in the background, monitoring the input folder for new or modified CSV/TSV files and generating updating ICS files as needed. To configure CSV-to-ICS Converter to be minimized to the notification area, select the Options tab and check the box labeled Minimize to notification area instead of the task bar.

CSV-to-ICS Converter can be configured to run in the background, where it will quietly monitor your CSV files for changes and automatically generate corresponding ICS files.

To redisplay the CSV-to-ICS Converter window, click the icon in the notification area, or right-click and select Open CSV-to-ICS Converter. You can review the Log to see if and when ICS files were automatically converted while CSV-to-ICS Converter was running in the background.

The CSV-to-ICS Converter tool can be minimized to the Notification Area. Double-click the icon to re-open the CSV-to-ICS Converter window.

How to automatically upload converted ICS files to a website

If you have a website or an external server where your converted ICS files need to reside, CSV-to-ICS Converter Ultimate Edition can be configured to automatically upload your converted ICS files via an FTP server. This works just like automatically converting CSV/TSV files into ICS files in a folder, except the ICS files will be uploaded.

You can follow these steps to configure CSV-to-ICS Converter to automatically upload converted ICS files to an FTP server:

  1. Activate the Ultimate Edition free trial or purchased license, if you haven't already.
  2. Select the Automatically convert files tab if it's not already displayed.
  3. The first time the tab is displayed, the input folder will be empty and will need to be specified. CSV-to-ICS Converter will remember the specified input folder. To specify an input folder, enter the folder name or click the "..." button to browse for the folder. Previously specified folders can be selected by clicking the drop-down button
  4. Click the Output to FTP server option.
  5. Enter your FTP server name (or IP address). Also include the path on the FTP server where the generated ICS files should be uploaded. Example: "ftps://csv-to-ics.com/calendars".
  6. Enter your FTP server port number, username, and password. The port number is usually 20 or 21, but might be different. Contact your network administrator if you're not sure.
  7. Click the Convert Now button to perform the conversion and upload the files. The Log will refresh to show the results. If you minimize CSV-to-ICS Converter or leave it running, the input folder will continue to be monitored for new or updated CSV files. Corresponding ICS files will be automatically uploaded to your FTP server as needed.
    An FTP server can be specified. Whenever a CSV file is automatically converted into an ICS file, the generated ICS file will be uploaded to the specified FTP server.

How to request a fully-functional trial of CSV-to-ICS Converter Ultimate

The Free Edition is free for both personal and business use. It's capable of converting CSV and TSV files into ICS files and provides more functionality than any other free converter. However, event descriptions will include a small notification stating the ICS file was generated using CSV-to-ICS Converter Free Edition. Also, files containing more than 100 events cannot be converted by the Free Edition. The Pro Edition removes the notification and file size limitation. The Ultimate Edition provides many additional features:

  • You can specify a folder to be monitored for updated CSV/TSV files. ICS files will be automatically generated whenever changes are detected.
  • Generated ICS files can be automatically updated to a website using FTP.
  • User-defined custom fields and software-specific extension properties will be processed when present in the input files.
  • The mapping of column names to output data fields can be specified.
  • Files that lack a header row can be processed after defining how the column indices map to output data fields.

If you'd like to try these features before deciding whether to purchase, you can request a free trial license. The trial license will be fully-functional for 30 days and will enable you to access all the features of the Ultimate Edition. If you decide not to purchase, the trial will automatically revert back to the Free Edition at the end of the 30 days.

We'll send you a trial license key within 24 hours. After you receive the license key, you can activate your trial period by clicking the Activate license tab and pasting your key.

How to activate or upgrade a license

The Free Edition can perform standard conversions of CSV to ICS files contaning fewer than 100 events. For many people, that's all that is needed. You're welcome to use the Free Edition and we hope it will help you out.

If you need more, here's a quick comparison of the features provided in each edition:

Feature Free
Edition
Pro
Edition
Ultimate
Edition
Convert CSV and TSV files to ICS files
Convert files containing more than 100 events.
Remove the CSV-to-ICS Converter "Free Edition" notification from event descriptions.
Receive technical support directly from the people who built the product
Convert user-defined custom fields.
Convert software-specific extension properties (X-prefix).
Monitor folders for updated CSV/TSV files and automatically generate ICS files.
Customize how columns in input files are mapping to data fields in output files.
Automatically upload ICS files to an FTP server.
Price (per license, in USD) Free $79.95
Buy Now
$199.95
Buy Now

After purchasing or requesting a free trial, you'll receive an email containing a license key within 24 hours. To activate your license, start CSV-to-ICS Converter, click the Activate tab, and paste your license key in the space provided. After entering your license key, the license will be activated. This might take a few seconds. The screen will update after successful activation. Additional features will be immediately unlocked. When using a trial license, the features will be available for 30 days before the license reverts to the Free Edition.

How to update to a newer version.

By default, CSV-to-ICS Converter will automatically check for updates when started. If an updated version is available, the Check for Updates tab will be displayed. Recent changes will be shown and you can choose if you'd like to update. To perform the update, click the Download Update button. The latest version will be downloaded and CSV-to-ICS Converter will be automatically updated. After updating, it will restart. The whole process should only take a few seconds, depending on your connection speed.

CSV-to-ICS Converter can be configured to automatically check for updates, so you'll always have access to the latest and best CSV-to-ICS Converter.

If you prefer CSV-to-ICS Converter to not automatically check for updates when started, this option can be disabled by unchecking the box near the bottom of the Check for Updates tab. You can manually check for updates at any time by clicking the Check for Updates button.

How to specify a different directory for the application data and settings.

By default, CSV-to-ICS Converter will save its application data and settings to the "\Users\CurrentUserName\AppData\Local\VueSoft\CsvToIcsConverter" folder. This folder is tied to the account profile of the currently logged in Windows user. If you'd like to use a common folder for all user profiles, or if you'd like to run the application as a service, a different data folder can be specified via a "-dataDir" command-line option.

Example:

CsvToIcs.exe -dataDir C:\CsvToIcs\Data

How to get CSV-to-ICS Converter customized for your specific needs

CSV-to-ICS Converter already provides a lot of flexibility. It doesn't expect the fields in the input files to be in any specific order, it provides a mechanism to customize how input fields map to output fields, it supports a large variety of field types, and can also handle custom fields it doesn't recognize. However, we realize there may be cases where the format of your CSV file isn't quite compatible and can't be easily modified. There could be other cases where CSV-to-ICS Converter comes really close to what you need, but some minor tweaks would make it a perfect fit.

For those reasons, we offer a service where we can customize CSV-to-ICS Converter for your specific needs. Please contact us with details about your requirements. We'll analyze your requirements and provide you with an estimate on what it would cost to customize CSV-to-ICS Converter for your needs.

Since we're the team that CSV-to-ICS Converter, we're very familiar with how it works and what it would take to be customized. We can perform the customization at a fraction of the cost that paying your own in-house development team would require to implement something else from scratch. We'll also stand behind our work and correct any bugs - free of charge.

If you like what you see in CSV-to-ICS Converter, we can custom develop other software as well. It doesn't need to be a modification to CSV-to-ICS Converter. We're experts at modern Windows app development and can code up just about anything you can imagine. If you have an idea and a budget, but nobody to do the work, please contact us with the details. We'd be happy to help!

How to get additional help

Still need help? Please contact us. One of the team members that developed CSV-to-ICS Converter will be happy to assist. If you've purchased a license, your support request will move to the front of the queue.

How to uninstall CSV-to-ICS Converter

If you decide you no longer want to use CSV-to-ICS Converter, there's nothing to uninstall. You can simply delete the downloaded file and the desktop shortcut if one was created.

If you're really OCD or like to count the free space on your hard drive in units of KB instead of GB, open your AppData\Local folder and delete the VueSoft\CsvToIcsConverter subfolder and any other folders that start with CsvToIcs.

No other trace of the software will be left on your system - nothing in the Windows registry or anywhere else.

Contact Us


We're here to help. Please let us know if you have any questions, suggestions, or customization requests. You can contact us directly at support@csv-to-ics.com, or by submitting the form below. We'll respond as soon as we can.