ICS Calendar Merger

Combine multiple .ics files into one calendar without duplicates

Ad placeholder (leaderboard)

An ICS merger combines several iCalendar files into one. When you subscribe to multiple calendars or export the same events from different tools, you often end up with separate .ics files and duplicate entries. This free tool stitches the events and tasks together into a single valid calendar, optionally removing duplicates, all in your browser.

How it works

The merger reads each pasted file and extracts the text between every BEGIN:VEVENTEND:VEVENT and BEGIN:VTODOEND:VTODO pair, preserving the original lines inside each block. For deduplication it reads the UID property of each block and keeps a set of UIDs already seen:

  1. Parse every file into a list of component blocks.
  2. For each block, find its UID line.
  3. If deduplication is on and that UID was already added, skip the block; otherwise keep it and record the UID.
  4. Wrap all surviving blocks in one fresh VCALENDAR with a new VERSION and PRODID header.

Because the inner lines are copied verbatim, properties, alarms, and recurrence rules inside each event are kept intact.

Tips and notes

  • Put your most authoritative calendar in the first box; on a UID clash the first occurrence wins.
  • Blocks without a UID are always kept, since there is no key to compare them by.
  • For best results across time zones, export source calendars in UTC, since this tool does not carry over VTIMEZONE definitions.
  • Run the output through an ICS validator if a strict app rejects it.
Ad placeholder (rectangle)