Organization · 8 minute guide
How to Merge ICS Files Without Duplicate Events
Combining calendar files is easy if every event is unrelated. Real exports are harder: the same event may appear in several files, one copy may be a newer revision, and recurring exceptions can share an identifier with their master series without being duplicates. A safe merge preserves those relationships and asks before discarding anything.
Published and reviewed by Whitle · September 26, 2026
Quick answer
What matters most.
- Merge complete calendar components rather than rebuilding events from only their visible fields.
- UID plus RECURRENCE-ID identifies a recurrence instance; a shared title is not enough to prove duplication.
- Review exact duplicates, same-identity revisions and similar-looking events as different categories.
01
Why copying all events is not enough
An ICS calendar can contain timezone definitions, reminders, attendees, tasks and app-specific properties in addition to event titles and dates. Flattening files into a simple list and rebuilding them can remove data that is not visible in a basic agenda.
A loss-conscious merge carries the source components forward, reconciles calendar-level metadata and timezone definitions, and reports conflicts instead of silently selecting one value.
02
Three kinds of apparent duplicate
| Group | What it means | Safe default |
|---|---|---|
| Exact copy | Same identity and equivalent content | Keep one after review |
| Same-identity revision | Same UID and occurrence, but content or revision metadata differs | Compare and choose the intended revision |
| Lookalike | Similar title, time or location, but different identity | Do not remove automatically |
03
Calendar event identity
- UID is the persistent identifier for an event or recurring series.
- RECURRENCE-ID distinguishes a changed or cancelled occurrence inside a series.
- SEQUENCE can indicate revision order, but exporters do not all maintain it consistently.
- DTSTAMP records calendar-object revision metadata and is not the event's scheduled start.
- SUMMARY, location and date similarity are useful review clues, not definitive identity.
04
A safe merge workflow
- 1Keep untouched copies of every source file.
- 2Load the files into an ICS merger and confirm their names and event counts.
- 3Review timezone-definition conflicts and same-identity revisions.
- 4Create the merged calendar without deleting fuzzy lookalikes automatically.
- 5Run the result through Duplicate Finder and inspect each proposed removal group.
- 6Compare the final event and recurrence counts, then test-import into a new calendar.
05
Preserve recurring families
The master event and its RECURRENCE-ID exceptions belong together. If one source contains the master and another contains a modified occurrence, the merged result needs both. Removing the exception can restore the original generated occurrence; removing the master can orphan the exception.
A merge should also retain EXDATE values and cancelled instances. These records may look like missing events in a simple count even though they are intentionally shaping the series.
06
Avoid duplicate imports afterward
- Import the merged file into a new destination calendar first.
- Do not import both the source files and the merged result into the same calendar.
- If you need future synchronization, use a calendar-sharing or subscription workflow instead of repeated snapshot imports.
- After validation, keep the original exports until you have confirmed the destination calendar.
Common questions
A few direct answers.
Can I combine two ICS files into one?
Yes. A merge tool can combine their calendar components into one new ICS file. Review duplicate identities, recurrence relationships and timezone conflicts before importing it.
Why do two calendar events have the same UID?
They may be copies, revisions of the same event, or separate exceptions in one recurring series. RECURRENCE-ID and revision details are needed before deciding.
Can matching event titles be removed automatically?
They should not be. Different events can have the same title and time, while a real revision may change its title. Treat title similarity as a review hint only.
Primary sources.
- RFC 5545 section 3.8.4.7: Unique Identifier ↗
- RFC 5545 section 3.8.4.4: Recurrence ID ↗
- RFC 5545 section 3.8.7.4: Sequence Number ↗
Provider interfaces and limits can change. We review official documentation when this guide is materially updated.
Tools for this job.
Merge ICS
Combine calendars while preserving event components and timezone data.
Smart Merge + Deduplicate
Combine files with explicit exact-duplicate and revision handling.
Duplicate Finder / Remover
Separate exact copies, same-UID revisions and potential lookalikes.
Calendar Diff
Compare added, removed and semantically changed calendar events.