Before: back up (5 minutes, non-negotiable)
Settings → Import & export → Export. You get an .ics snapshot of everything — the insurance that makes aggressive deletion safe. Also worth knowing: deleted events sit in Calendar’s Trash (gear menu → Trash) for 30 days. Between the export and the trash, nothing in this guide is irreversible; detox timidity comes from not knowing that.
Pass 1 · Layers (15 minutes)
The left sidebar first, because deleting a whole layer beats deleting its events one by one. For every calendar in the list, three options: keep visible (you act on it weekly), hide (occasional reference — untick it), unsubscribe (holidays for a country you left, the 2023 project, sports seasons past). Be ruthless with birthday layers and "interesting" public calendars — they are wallpaper that costs glance-speed daily. Target state: three or fewer visible layers on an ordinary day.
Pass 2 · Recurring series (30 minutes, the core)
Recurring events are where calendars rot. Week view, scan Monday to Friday, and for every repeating item ask the zombie question: what did this produce in the last month? Sort into: keep (it earns its slot — also shrink it a notch, 60→45, 30→25, while you’re there), reshape (weekly→fortnightly is the single most valuable edit in this entire guide), end (edit series → Ends → today’s date — kills the future, preserves the history), or exit (others’ meetings: decline the series with the standard one-liner). Expect to touch 10–20 series; expect 30–40% to fall into the last three buckets.
Pass 3 · The next four weeks (25 minutes)
Now the one-off residue. Scan 28 days forward and delete or decline: events you already know you’ll skip, placeholder holds that never confirmed, duplicates from sync mishaps, and the aspirational blocks ("Learn Rust??") that have become guilt décor. Apply the honesty test to each survivor: would I schedule this today? If no, and it involves others — decline with the note now, while there’s lead time; the decline you send today at 9 is courtesy, the same decline on the morning-of is flakiness.
Pass 4 · Defaults, so it doesn’t regrow (15 minutes)
The cruft came from somewhere; close the pipes. Settings: Speedy meetings on, default duration 25, Add invitations to my calendar → "Only if the sender is known" (ends calendar spam at the source), notification defaults tiered sanely. And adopt the two standing rules that keep detoxed calendars clean: every new recurring series gets an 8-week end date, and every new layer subscription costs an old one.
After: the weekly rinse
A detoxed calendar needs five minutes of Friday maintenance — delete next week’s fictions, decline what you know you’ll skip — or it re-silts within a quarter. The full detox is a once-or-twice-a-year event; the rinse is what makes the next one boring.
The clearest post-detox dividend is glance speed: three layers and only-true events make any calendar surface instantly readable. A toolbar view like Calendar Extension for Google Calendar™ compounds that — the day strip now answers in two seconds because there’s nothing on it that lies.
Frequently asked questions
Your subscriptions and visibility are yours to prune freely — hiding a shared calendar affects only you. Deleting events on shared calendars is different: propose the cleanup to the owner ("this still needed?") rather than acting. No owner findable? That calendar is a zombie layer; unsubscribe and let it die of neglect.
Storage: no — calendar history is negligible. Privacy: the history is a record of who you met and when, which matters if the calendar is broadly shared. Rather than mass-deleting the past, tighten sharing going forward; deleting history also destroys your own most useful dataset for time estimates.
Politeness attendance is precisely what the exit bucket is for: decline the series with the standard note ("stepping back to protect focus — notes catch me"). If three people do this after a detox, the meeting owner gets the signal the meeting itself was due for.
With the Friday rinse and the two standing rules: yearly, and it takes 45 minutes instead of 90. Without them: quarterly, painfully. The detox frequency you need is a direct readout of whether Pass 4 stuck.