# Calendar Mirror — One-way sync with busy blocks

> One-way sync with busy blocks (iPhone/iPad app by Matthew Baylor.)

- Source: https://appshunter.io/ios/app/calendar-mirror/id6787358036 (this page in markdown: same URL + `.md`)
- Developer: [Matthew Baylor](https://appshunter.io/developer/6787358038)
- Category: Productivity, Utilities
- Price: $2.99
- Age rating: 4+
- Requires: iOS 17.0 · 1 MB
- Languages: American English
- Released: 2026-07-08
- Data updated: 2026-09-07
- User reviews in markdown: https://appshunter.io/ios/app/calendar-mirror/id6787358036/reviews.md

## What is Calendar Mirror?

Some calendars you can see but cannot reshare. A subscribed work schedule. A read-only team feed. An account that is not yours.

Calendar Mirror makes an editable copy of one calendar inside another calendar you own — one direction only, so the original is never touched. And because the copy lives in your own account, it reaches your other devices on its own.

PICK TWO CALENDARS

Choose the calendar to copy from and the calendar to copy into. That is the setup. Add as many pairs as you like; two pairs can share one destination without disturbing each other, and anything you add to the destination by hand is left alone.

Repeating events, all-day events and moved occurrences all come across correctly.

CHOOSE HOW MUCH CROSSES OVER

Each pair decides for itself:

• Full copy — titles, locations and notes as written.
• Just the basics — real titles and locations, nothing else.
• Busy only — every event becomes a plain block reading "Busy". Your time is visible; nothing else is.

Put a label in front of copied titles, too — "[Work] Standup", or even "[Work] Busy" on a pair that hides the details. A pair can also carry the source event's meeting link into the copy's notes, so a mirrored meeting is one you can actually join.

CHOOSE WHICH EVENTS

Not everything in a calendar is worth copying. A pair can skip:

• Meetings you declined, or have not answered yet
• Events the organiser cancelled
• All-day events, and anything marked free
• Anything shorter or longer than a set number of minutes
• Titles containing words you choose, such as "Lunch" or "Focus time"
• Anything outside a window of the day, on the weekdays you pick

This works on calendars you do not control, which is the point — tagging individual events is only possible on events you wrote yourself.

OR DECIDE ONE EVENT AT A TIME

Type a tag into a source event's notes and that event gets its own rule:

• #nomirror — never copy this one
• #private — copy it as a busy block with no details
• #public — copy it in full, even on a pair that normally hides things

You can also point a whole pair at a tag and copy only the events you have marked.

IT TELLS YOU WHEN SOMETHING BREAKS

A healthy pair is silent. If one stops syncing, an all-day warning appears in the destination calendar itself — so you find out on your phone, without opening anything. It clears the moment the pair recovers.

ON IPHONE AND IPAD

Every pair in one list, grouped by the calendar it copies into, with its health and how many events it manages. Pull down to sync immediately.

Background refreshes are scheduled at the interval you choose, but iOS decides when they actually run — treat the setting as the earliest a sync may start, not a guarantee. Pull to refresh whenever you want it now.

SHORTCUTS

A Sync Now action for the Shortcuts app. Drop it into an automation and sync when you arrive somewhere, at a set time, or when a Focus turns on — it runs without opening the app and reports what changed.

WHAT IT DOES NOT DO

Being straight with you before you buy:

• No booking or scheduling links.
• No unified calendar view — it makes copies; your calendar app shows them.
• No team, admin or SSO features. It is a single-person utility.
• Attendees are never copied. Apple's calendar framework has no way to set guests on an event, so a copy carries the time and whatever else you allow, but never the guest list.
• It cannot sync a calendar your device cannot already see.

PRIVACY

No account. No server. No analytics, no tracking, no telemetry, no ads. There is nothing to sign up for and no password to hand over, because it works through the calendars already configured on your device.

Once a copy lands in an account like iCloud, Google or Exchange, that provider syncs and stores it under their policies, exactly as it would for any event you added yourself. That is the honest boundary.

Open source under the MIT licence. One purchase covers iPhone, iPad and Mac.


## Version history (last 5 releases)

### 1.4.1 — 2026-09-01

Shortcuts.

Calendar Mirror now has a Sync Now action for the Shortcuts app, on iPhone, iPad and Mac.

Put it in a Shortcut, on your Home Screen, or in an automation: sync when you arrive at the office, every weekday at eight, or when a Focus turns on. It runs in the background without opening the app.

It reports what actually changed rather than just "done" — "3 added, 1 updated", or which pair failed and why. Siri understands "Sync my calendars with Calendar Mirror" without you building anything first.

### 1.4.0 — 2026-08-31

Version 1.4 is mostly about giving you control over which events get copied, rather than just how much of each one crosses over.

CHOOSE WHICH EVENTS GET COPIED

A pair can now skip events on their own properties, with no tagging involved:

• Meetings you declined, or have not answered yet
• Events the organiser cancelled
• All-day events, and anything marked free
• Anything shorter or longer than a set number of minutes
• Titles containing words you choose, such as "Lunch" or "Focus time"
• Anything outside a window of the day, on the weekdays you pick

This is the part that works on calendars you do not control — a subscribed work feed, an assigned-shifts calendar — where tagging individual events was never an option.

A LABEL IN FRONT OF COPIED TITLES

Set a prefix such as "[Work]" and every copy carries it. It applies to hidden titles too, so a busy-only pair can still say where a block came from: "[Work] Busy".

CARRY THE MEETING LINK

A pair can now copy the source event's link into the copy's notes, so a mirrored meeting is not a dead end you can see but cannot join. It is off by default, and it is never added to an event you marked #private — a meeting link says plenty about a meeting whose title you chose to hide.

THE IN-CALENDAR NOTE IS NOW A WARNING

Previously a pair could write an all-day "last synced" note into the destination on every successful run. It no longer does. A healthy pair writes nothing at all, and a note appears only when a pair actually stops syncing.

Destination calendars are usually ones you share with other people, and a daily "still working" marker was an artefact all of them could see that told nobody anything they would act on. Old notes are removed automatically on the first sync after updating.

CLEARER SETTINGS

Each pair's settings now fold down to a single line describing what they are set to, so a pair with a dozen options still reads at a glance.

FIXED

• Copies were rewritten on every run when a source calendar reissued its identifier for an event that had not otherwise changed. Nothing was lost, but the copies churned needlessly — and on a shared destination, that churn was visible to everyone.

Event filters are covered thoroughly by the test suite, but they have had less exercise against real declined and cancelled invitations than the rest of the app. If a filter drops something it should not, or keeps something it should not, please open an issue on GitHub — the source is public.

### 1.3.0 — 2026-08-27

Choose exactly what each mirror copies

Every mirror now has its own privacy setting. Copy events in full, copy just the title and location, or replace the details with a plain "Busy" block. Location, notes and alarms can each be turned on or off individually, and any mirror can force its copies to show as busy.

Control individual events with tags

Type a tag into an event's notes to change how that one event is handled: • #nomirror — never copy this event • #private — copy it as a busy block, with no details • #public — copy it in full, even on a mirror that normally hides details

Copy only the events you choose

A mirror can now copy only the events carrying a tag you name, or skip the ones carrying it. Useful for pulling just the commitments that matter out of a busy shared calendar.

Carry tags across without the note

Notes can now be copied in full, not at all, or as tags only — which puts the event's tags on the copy and leaves the note text behind.

Set your background sync interval

You can now choose how often cal-mirror syncs in the background: 15 minutes, 30 minutes, 1 hour or 2 hours. Previously the app reset itself to 30 minutes after every background run and ignored the setting entirely. Note that iOS decides when background refreshes actually run, so this is the earliest a sync may start rather than a promise — pull down on the mirror list any time for an immediate sync.

Fixes

• Events from subscribed calendar feeds are no longer re-copied on every sync. They could previously be re-identified each time they were fetched, causing repeated updates and duplicate copies. • Copies no longer get rewritten every cycle when the source calendar reports no availability information.

### 1.0.1 — 2026-07-10

Bug Fixes

### 1.0 — 2026-07-09

No release notes.

---

*Data collected daily from the US App Store and indexed by [AppsHunter](https://appshunter.io/). User reviews are verbatim App Store reviews. Ratings, prices and chart positions refresh continuously; this snapshot is from 2026-09-07.*
