Sync Your Personal Calendar to Work Without Sharing the Details
Your coworkers should see that you are busy — not that it is a therapy appointment. Here is how I keep my work calendar accurate but private.

Jakub Beneš
Founder, CalendarPipe · June 11, 2026 · 9 min read
To sync your personal calendar to work without sharing the details, send a rewritten copy instead of sharing the calendar itself. A one-way rule reads each personal event, replaces the title with something generic like "Personal Commitment", clears the description and the location, marks the copy private and busy, and writes only that onto your work calendar. Coworkers see an occupied hour and learn nothing else, and because the sync runs in one direction, your personal calendar is never modified and nothing on the work side can read it. The one thing this can't hide is timing: the busy block has to land exactly when your commitment is, or it wouldn't stop anyone booking over you.
The Thursday thing
The first time I connected my personal calendar to my work one, I did it the lazy way — shared the whole thing — and forgot about it. Weeks later, a coworker hunting for a slot mentioned they'd "work around my Thursday thing." My Thursday thing was a therapy appointment. The title was sitting right there in the calendar they'd opened.
Nothing came of it. But it stuck with me, because it named the real problem. I wanted my work calendar to know when I'm unavailable. I did not want it narrating my personal life to the office. Those are two different things — and almost every quick fix mashes them together.
That's the line this post is about. If you're trying to sync your personal calendar to work without sharing details — to hide personal calendar details at work while still showing when you're genuinely busy — here's how I draw that line, and how I make it hold.
Availability is not the same as content
Here's the distinction the whole post hangs on.
Every event on your calendar is really two pieces of information. There's the availability — you're busy from 3 to 4 on Tuesday. And there's the content — the title, the location, the notes, the people. The why behind the block.
Your coworkers need the first one. They genuinely benefit from knowing when you're free, because that's how they avoid booking over you. They almost never need the second one. "Dentist, 123 Main St, bring insurance card" is not information that helps anyone schedule a standup.
Most calendar sharing treats those two as a single package — hand over a calendar and it carries everything. So you either overshare your life or share nothing and get double-booked. A private calendar sync to work splits the package: availability crosses over, content stays home.
Why you don't just share your personal calendar
The instinct is to share your personal calendar with your work account and call it done. Don't.
Sharing over-shares, and the gap between "safe" and "everything" is one dropdown item wide. Google offers five sharing permission levels, and the difference between "See only free/busy (hide details)" and "See all event details" is a single click in a menu you configured once and forgot. One slipped permission and someone in a standup is reading "Couples therapy, 4pm."
It's also the wrong direction. You don't want your work account reading your personal life. You want a one-way flow: personal commitments quietly become busy blocks on the work side, and your personal calendar is never touched.
Here's how the options actually compare on what work ends up seeing:
| Approach | Work sees the title | Work sees location and notes | Work can read your personal calendar | Keeps itself current |
|---|---|---|---|---|
| Share your personal calendar with work | Yes | Yes | Yes | Yes |
| Share it with "free/busy only" permission | No | No | Free/busy only | Yes |
| Copy busy blocks across by hand | Whatever you type | No | No | Only while you keep it up |
| One-way sync rule with a privacy gate | No, it's replaced | No, they're cleared | No | Yes, 15 min free / 5 min Pro |
That last row is what I run. It's the only one that gets both halves right: work stays accurate, and my personal calendar stays mine.
That's exactly how CalendarPipe works. A sync rule connects a source calendar to a target calendar and runs a small gate function on every event — a tiny piece of logic that decides whether each event passes and how it should look on the other side. For this use case the source is your personal calendar, the target is your work calendar, and the sync is strictly one-way. Work gets a copy; your personal calendar is never modified.
The privacy transform, in detail
The gate is where availability and content get separated. When a personal event passes through, the gate rewrites it before it lands on the work side. Concretely, it does four things:
- Replaces the title. "Dentist" becomes something generic like "Personal Commitment" or just "Busy." The original title never reaches work.
- Clears the description. No notes, no agenda, no "remember to ask about the crown" — gone.
- Clears the location. No address, no clinic name, no Zoom link from your therapist leaking across.
- Sets it private and busy. The event is marked private and set to show as busy, so it reads as occupied time and nothing more.
What lands on your work calendar is a clean, anonymous block. Same time as your real event, none of the substance.
The honest caveat: you hide the what, not the when
Now the part I'd rather you hear from me than discover later. A gate cannot change an event's start time, end time, or duration. It can rewrite everything about an event, but it can't move it. So the busy time block is always visible — your colleagues can see that you're occupied from 3 to 4 on Tuesday.
This isn't a CalendarPipe quirk; it's how calendar privacy works everywhere. Google's own event visibility settings do the same thing: marking an event private hides its details from people who can see your calendar, and the block still sits there on the grid.
That's not a bug. It's the entire point. "I'm unavailable then" is the one thing you do want them to know — it's what stops the double-booking. What they can't see is that it's a dentist, or daycare pickup, or a job interview, or anything else.
So be clear-eyed about the trade: you hide the what, never the when. If the timing itself is sensitive — if a block at 2pm on Thursday would raise eyebrows on its own — no privacy tool fixes that, and anyone who claims otherwise is selling you something. For nearly everyone the trade is exactly right. "Busy then" is information you want to share. "Here's my dentist's address" is not.
How to set it up
The whole thing takes a few minutes, and you don't have to write a line of code.
- Connect both calendars. Add your personal calendar as the source and your work calendar as the target. CalendarPipe supports Google Calendar, Microsoft Outlook (personal and work/school), Apple Calendar over CalDAV — which iCloud opens to third-party apps with an app-specific password — and read-only ICS feeds. So personal Gmail into a work Outlook, a common pairing, works fine.
- Create a one-way sync rule pointing personal (source) at work (target). Your work calendar gets the busy blocks; your personal calendar is never modified.
- Start from the "Busy as 'Personal Commitment'" template. Out of the box it syncs only your busy events, replaces each title with "Personal Commitment," and clears the description and location — every transform from the section above, ready to go. Want different wording? Open it in the code editor and swap "Personal Commitment" for "Busy" or "Out of office." Not into code? Build the same thing in the visual builder, or describe it in plain English and let the AI generator (Pro) write the gate for you.
- Activate it. From then on it runs on a schedule and keeps the work side current.
One thing worth saying plainly: this fits the free plan. Two calendar connections, one sync rule, syncing every 15 minutes — that's the free tier. You only step up to Pro ($4/mo, or $40 a year) if you want faster 5-minute syncs, the AI generator, or more rules and connections later. For "make my work calendar respect my personal life," free is genuinely enough.
You probably don't want every personal event crossing over — a 7am gym slot doesn't need a work block. Because the gate is just logic, you decide which events are eligible (by calendar, by keyword), but I cover that filtering in depth in block personal time on your work calendar automatically. A simple version: keep a dedicated "Appointments" calendar in your personal account and point the rule at that one, so only the things that should block work ever come across.
What your coworkers actually see
Here's the payoff from their side of the screen.
They open your work calendar looking for a slot. Tuesday 3 to 4 shows a tidy "Personal Commitment" — busy, private, no description, no location. They book around it. Nobody asks why. Nobody knows it's a filling.
That's the whole job. Your calendar tells the truth about your availability and keeps quiet about your life. They get exactly what they need to schedule, and not one detail more.
If your need runs the other way — you want to share your availability with someone outside your org and still strip the details — the same privacy thinking applies, and I wrote that up separately in hide event details when sharing a calendar.
Wrapping up
I built CalendarPipe because I couldn't find a tool that drew this line where I wanted it: respect my personal life on the work calendar without narrating it to the office. Split availability from content, show busy, hide the rest, one direction only — and never touch the original.
If your work calendar keeps lying about when you're free, or telling everyone more than they need to know, try the "Busy as 'Personal Commitment'" template on CalendarPipe. It's a few minutes to set up, and it fits the free plan.
— Jakub
Frequently asked questions
How do I sync my personal calendar to work without sharing the details?
Send a rewritten copy instead of sharing the calendar. Create a one-way sync rule from your personal calendar to your work calendar that replaces each title with something generic like "Personal Commitment", clears the description and the location, and marks the copy private and busy. Your work calendar receives an anonymous block at the right time, and the original event keeps every detail on your personal calendar.
Will my coworkers see what my personal events are?
No. With a privacy transform the synced copy shows only a busy block with a generic title, and the original title, location, and notes never leave your personal calendar. What your coworkers can see is that you are occupied during that time, which is the part that stops them booking over you.
Can my employer see my personal calendar with this setup?
No. The sync runs in one direction only, from personal to work, so your work account is never given read access to your personal calendar. It receives copies that have already been stripped down. Nothing on the work side can query the original events, and your personal calendar is never modified by the sync.
Can I choose which personal events reach my work calendar?
Yes. The rule filters events before it copies them, so you can send only one specific personal calendar, only events whose titles contain a keyword, or only events carrying a tag you add yourself. A 7am gym slot can stay entirely private while appointments that genuinely need to block work time come across.
Do I need a paid plan to sync my personal calendar to work privately?
No. This setup fits the CalendarPipe free plan, which includes two calendar connections, one sync rule, and a 15-minute sync interval. Pro at $4/month or $40/year adds a 5-minute interval, unlimited rules and connections, and AI rule generation, but the privacy transform itself costs nothing.
Keep reading
Set this up in CalendarPipe
Connect Google, Outlook, or Apple Calendar and build a pipe that filters and transforms your events exactly how you want — in a couple of minutes.
Get started free