Calendar conflict checker
Find overlapping ICS events and trace generated, excluded or overridden occurrences to their source calendar lines.
What it does
Find overlapping ICS events and trace generated, excluded or overridden occurrences to their source calendar lines.
How to use it
- Import 1–10 ICS files, 2 MB combined, at most 2,000 event definitions. Choose up to 366 inclusive UTC dates.
- Expansion is capped at 50,000 steps, 5,000 occurrence explanations, 5,000 busy occurrences and 10,000 conflicts, with a cancellable 15-second worker deadline. Unsupported or over-limit input returns an error rather than a partial report.
- Review overlapping pairs and the first 200 occurrence explanations, following source lines for recurrence rules, exclusions and overrides. Download the complete bounded JSON report. Inputs remain on your device.
Example
Events 10:00–11:00 and 10:30–11:30 conflict; an event beginning exactly at 11:00 does not overlap the first.
Methodology
ICAL.js expands recurrence rules and explicit dates; individual recurrence overrides replace their original occurrence. An explanation timeline links generated, excluded, moved, cancelled, transparent, duplicate and zero-duration occurrences to source properties and original physical lines. A sorted interval scan compares only busy occurrences.
Limitations
1–10 files / 2 MB combined upload and 2 million text characters; 2,000 definitions, 366 inclusive UTC dates, 50,000 expansion steps, 5,000 explanation rows, 5,000 busy occurrences and 10,000 conflicts. UIDs need 1–512 characters; EXDATE/RDATE values total at most 5,000 per series. Cancellable 15-second worker; unsupported/over-limit inputs fail without a partial report. Floating/all-day values use UTC; named zones require embedded VTIMEZONE. THISANDFUTURE and RDATE periods are rejected. Identical UID/start/end occurrences are deduplicated. No remote sync.
Automation
This tool runs in your browser. No upload API or MCP endpoint is available.
View capabilities and documentationReference updated
Join the conversation
Helpful tips, questions, and ideas for making this tool better.
Loading discussion…