CSV Format Reference
Complete documentation of all supported columns in the CSV-to-iCal converter.
Column Names
Column headers are case-insensitive and leading/trailing whitespace is ignored. Both Start Date and start date are accepted.
Required Columns
Subject
The event title displayed in the calendar.
Subject Team standup Doctor appointment Start Date
The date on which the event begins. See Supported Date Formats below.
Optional Columns
Start Time, End Date, End Time
Start Time: The time the event begins. Optional. If omitted, the event is treated as an all-day event.End Date: The date on which the event ends. Defaults to the same value asStart Dateif omitted.End Time: The time the event ends. If provided,Start Timemust also be present.
| Subject | Start Date | Start Time | End Date | End Time |
|---|---|---|---|---|
| New Year’s Eve | 2026-12-31 | 6:00pm | 2027-01-01 | 3:00am |
| Valentine’s Day Party | 2026-02-14 | |||
| Labor Day | 2026-05-01 |
All Day Event
Set to True or Yes to mark an event as all-day regardless of whether time columns are present.
| Subject | Start Date | All Day |
|---|---|---|
| New Year’s Eve | 2026-12-31 | false |
| Valentine’s Day Party | 2026-02-14 | true |
| Labor Day | 2026-05-01 | true |
Availability
Set to Free or Busy to show whether you can be available for other events at that time, or not.
Freetells others that you are available for overlapping event appointments.Busyindicates that your time has been blocked off.
Note that some Calendar apps, notably Apple Calendar, do not support free/busy information.
| Subject | Start Date | Availability | All Day |
|---|---|---|---|
| New Year’s Eve | 2026-12-31 | busy | false |
| Valentine’s Day Party | 2026-02-14 | free | true |
| Labor Day | 2026-05-01 | true |
Location
The physical address or virtual meeting link for the event.
Location 123 Main Street, Any City, CA 90000 or
https://meet.example.com/room/abc Category
One or more event categories. Separate multiple values with semicolons.
Category Work;Important;Follow-up URL
A link associated with the event. Many calendar apps display this as a meeting URL or event URL.
URL https://example.com/meeting Classification
Set event privacy or classification. Examples:
PUBLICPRIVATECONFIDENTIAL
Priority
Set event priority using common labels or numeric values.
High,Medium,Low1through9
Duration
Specify event duration when End Date and End Time are omitted.
Example:
Duration 30 minutes Organizer
The organizer for the event, parsed as a Mailto organizer address.
Example:
Organizer Alice <alice@example.com> Required Attendees, Optional Attendees
Semicolon- or comma-separated attendee lists. Each attendee may be a single email or Name <email>.
Required Attendees,Optional Attendees Alice <alice@example.com>;bob@example.com,carol@example.com Recurrence
Set a recurrence frequency using plain text like Daily, Weekly, Monthly, or Yearly.
Recurrence End Date
Use this when a recurring event has a final date.
Number of Occurrences
Use this to stop recurrence after a fixed number of events.
Recurrence Interval
Use this to repeat every N periods. For example, 2 with Weekly means every two weeks.
Reminder Date, Reminder Time
Set either a date-based reminder or a relative reminder interval.
Reminder Dateaccepts a date.Reminder Timeaccepts a duration like30 minutes.
Full Example
| Subject | Start Date | Start Time | End Date | End Time | Availability | All Day | Description | Location | Category | URL | Classification | Priority | Time Zone | Required Attendees | Optional Attendees | Organizer | Recurrence | Recurrence End Date | Number of Occurrences | Recurrence Interval | Reminder Date | Reminder Time |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| New Year’s Eve | 2026-12-31 | 6:00pm | 2027-01-01 | 3:00am | busy | false | Longer Description | San Francisco CA | Work | https://example.com/event | PRIVATE | High | America/New_York | Alice alice@example.com;bob@example.com | carol@example.com | David david@example.com | Weekly | 2027-01-31 | 6 | 1 | 2026-12-30 | 30 minutes |
| Valentine’s Day Party | 2026-02-14 | free | true | Missing Times are OK | New York NY | Personal | PUBLIC | 5 | America/Los_Angeles | Yearly | 2028-02-14 | 3 | 1 | |||||||||
| Labor Day | 2026-05-01 | true | Holiday | PUBLIC | Low |
Supported Date Formats
| Format | Example |
|---|---|
YYYY-MM-DD | 2026-03-14 |
MM/DD/YYYY | 03/14/2026 |
DD-MM-YYYY | 14-03-2026 |
DD/MM/YYYY | 14/03/2026 |
Supported Time Formats
| Format | Example |
|---|---|
24-hour HH:mm | 14:30 |
24-hour HH:mm:ss | 14:30:00 |
12-hour hh:mm AM/PM | 2:30 PM |
Delimiters
The delimiter is auto-detected from the first line of the file. Supported delimiters:
| Name | Character |
|---|---|
| Comma | , |
| Semicolon | ; |
| Tab | \t |
| Pipe | | |
Encoding
UTF-8 is recommended. Files with a UTF-8 BOM are also accepted.