Back to all posts

How to Fix a Corrupted ICS File (5 Common Errors Solved)

ICS file not importing? Learn how to fix corrupted ICS files with our step-by-step guide. Covers 5 common errors and how to repair them using our free validator.

January 29, 2025

5 min read

A corrupted ICS file can derail your schedule. When you try to import that conference agenda or shared calendar and nothing happens—or worse, you get a cryptic error—knowing how to fix the underlying problem saves hours of frustration.

This guide covers the five most common ICS file errors, how to identify them, and exactly how to repair your file so it imports correctly into Google Calendar, Apple Calendar, or Outlook.

Quick Fix: Validate Your ICS File First

Before diving into manual repairs, run your ICS content through a free ICS validator. It will pinpoint the exact line causing problems and tell you what is wrong.

Error 1: Missing BEGIN:VCALENDAR or END:VCALENDAR

Every ICS file must start with BEGIN:VCALENDAR and end with END:VCALENDAR. Without these markers, calendar apps do not recognize the file as a valid calendar.

What the Error Looks Like

BEGIN:VEVENT
SUMMARY:Team Meeting
DTSTART:20250115T140000Z
DTEND:20250115T150000Z
END:VEVENT

Notice the missing BEGIN:VCALENDAR at the top and END:VCALENDAR at the bottom.

How to Fix It

Add the required wrapper lines:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Your Company//Event//EN
BEGIN:VEVENT
SUMMARY:Team Meeting
DTSTART:20250115T140000Z
DTEND:20250115T150000Z
END:VEVENT
END:VCALENDAR

Error 2: Malformed Date/Time Formats

ICS files require specific date and time formats. The most common mistake is using the wrong format for DTSTART (start time) and DTEND (end time).

Valid Date/Time Formats

UTC timestamps (recommended for compatibility):

DTSTART:20250115T140000Z
DTEND:20250115T150000Z

With time zone:

DTSTART;TZID=America/New_York:20250115T140000
DTEND;TZID=America/New_York:20250115T150000

All-day events:

DTSTART;VALUE=DATE:20250115
DTEND;VALUE=DATE:20250116

Common Mistakes to Avoid

  • Using slashes instead of hyphens: 2025/01/15 (wrong) vs 20250115 (correct)
  • Including timezone in the value when using UTC: 20250115T140000Z+00:00 (wrong)
  • Forgetting the semicolon before TZID: DTSTART:TZID= (wrong) vs DTSTART;TZID= (correct)

Error 3: Missing Required SUMMARY Field

Every event (VEVENT block) must have a SUMMARY field. This is the event title that appears in your calendar.

The Error

BEGIN:VEVENT
DTSTART:20250115T140000Z
DTEND:20250115T150000Z
END:VEVENT

Apple Calendar often fails completely when SUMMARY is missing. Google Calendar may import but show "(No title)".

The Fix

Add a SUMMARY line:

BEGIN:VEVENT
SUMMARY:Quarterly Review Meeting
DTSTART:20250115T140000Z
DTEND:20250115T150000Z
END:VEVENT

Error 4: Invalid Line Folding

ICS files have a 75-character limit per line. Longer lines must be "folded" by inserting a newline followed immediately by a space.

What Broken Folding Looks Like

DESCRIPTION:This is a very long description that goes on and on about the meeting agenda and action items without proper line breaks

Correct Line Folding

DESCRIPTION:This is a very long description that goes on and on about the mee
 ting agenda and action items with proper line breaks

Notice the newline after "mee" and the space at the start of the next line.

Quick Fix

If your description is causing import failures, truncate it or remove special characters:

DESCRIPTION:Meeting to discuss Q1 goals. See email for full agenda.

Error 5: Invalid Characters and Encoding Issues

ICS files must use UTF-8 encoding and avoid certain special characters in specific fields.

Problem Characters

  • Smart quotes: " and " (from Microsoft Word or Apple apps)
  • Em-dashes: — instead of -
  • Line breaks in SUMMARY: SUMMARY fields must be single-line
  • HTML entities: & or < in descriptions (should be literal & or <)

How to Clean Your File

  1. Open the ICS file in a plain text editor (Notepad, TextEdit in plain text mode, VS Code)
  2. Find and replace smart quotes with straight quotes
  3. Remove or replace em-dashes with hyphens
  4. Save the file with UTF-8 encoding

Calendar-Specific Quirks

Different calendar applications handle ICS errors differently. Here is what to watch for:

Google Calendar

  • Most lenient parser
  • Often imports partial data from malformed files
  • Shows "Imported X out of Y events" when some events fail
  • Handles missing VTIMEZONE better than Apple

Apple Calendar

  • Strict parser
  • Fails completely on malformed DTSTART/DTEND
  • Requires proper VTIMEZONE definitions for non-UTC times
  • Less tolerant of encoding issues

Outlook

  • Moderate strictness
  • Strict about character encoding (must be UTF-8)
  • Line ending issues (CRLF vs LF) can cause problems on Windows
  • Requires proper ORGANIZER field structure for meeting requests

Prevention: Best Practices for ICS Files

Follow these rules to avoid corruption in the first place:

  1. Always use UTC timestamps when possible: DTSTART:20250115T140000Z
  2. Include VERSION and PRODID in your VCALENDAR header
  3. Generate unique UIDs for each event: UID:event-12345@yourdomain.com
  4. Test imports in your target calendar before sharing
  5. Validate before sending large calendar files to groups

When to Use a Generator Instead

If you are manually fixing ICS files regularly, consider using a text-to-calendar converter that generates valid ICS files automatically. These tools handle the formatting, encoding, and validation for you.



Summary

ErrorQuick Fix
Missing BEGIN/END VCALENDARAdd wrapper lines
Malformed datesUse YYYYMMDDTHHMMSSZ format
Missing SUMMARYAdd event title
Long linesFold at 75 characters
Invalid charactersRemove smart quotes and em-dashes

Keep this guide bookmarked for the next time an ICS file refuses to import. Most errors fall into these five categories, and each has a straightforward fix once you know what to look for.

For more help, see our ICS file format structure guide or troubleshoot Google Calendar import failures.