An ICS validator checks that an iCalendar file follows RFC 5545 before you rely on it. A malformed .ics may import silently wrong, drop events, or be rejected outright by strict apps. This free tool parses the file structure and the required properties of each component, then lists exactly what is missing or malformed — all in your browser.
How it works
The validator unfolds the file (joining continuation lines that begin with a space or tab), then walks it line by line:
- Structure. It maintains a stack of
BEGIN:components and matches eachEND:. Mismatched or unclosed components are errors, and the outermost component must beVCALENDAR. - Calendar properties.
VERSIONandPRODIDare required directly insideVCALENDAR. - Component requirements. A
VEVENTneedsUIDandDTSTAMP; aVTODOneeds the same; aVTIMEZONEneedsTZIDand at least oneSTANDARDorDAYLIGHTsub-component. - Value checks. Date and date-time values are tested against the allowed patterns, and lines without a property name before the colon are flagged.
Each issue is reported with the line number and component so you can jump straight to it. Warnings cover non-fatal style issues like bare-newline line endings.
Tips and notes
- A file can be valid yet still describe the wrong event — the validator only checks form, not intent.
- If you exported from a tool that used plain newlines, expect a line-ending warning; most calendars accept it anyway.
- The most common real error is a missing
UID, which makes calendars duplicate the event on every re-import. - Pair this with the ICS builder to generate compliant files from scratch.