Buddy Code
Create account ↗
All tools
Free to use · No sign-up

Calendar conflict checker

Find overlapping events in imported ICS calendars within an inclusive date range and export a structured report.

0 calendars selected · 10 files / 2 MB combined · 366 days. Floating times and all-day events use UTC. Named zones require embedded VTIMEZONE. Recurrences, exclusion dates and individual overrides are supported; future-range overrides are rejected. Cancelled and transparent events do not block time.

What it does

Find overlapping events in imported ICS calendars within an inclusive date range and export a structured report.

How to use it

  1. Import 1–10 ICS files, 2 MB combined, at most 2,000 event definitions. Choose up to 366 inclusive UTC dates.
  2. Expansion is capped at 50,000 steps, 5,000 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.
  3. Review the first 100 overlapping pairs on screen and download all conflicts as JSON. 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 exclusion dates. Individual recurrence overrides replace their original occurrence. A sorted interval scan finds overlapping pairs; cancelled, transparent and zero-duration events do not block time.

Limitations

Floating times and all-day dates are interpreted as UTC. Named zones require embedded VTIMEZONE. THISANDFUTURE and RDATE periods are rejected. Identical UID/start/end occurrences across imports are deduplicated. No remote calendar sync.

Automation

This tool runs in your browser. No upload API or MCP endpoint is available.

View capabilities and documentation

Reference updated

Join the conversation

Helpful tips, questions, and ideas for making this tool better.

Loading discussion…