Preview every change
See exactly what will be created, changed and removed before your calendar is touched. Then click Apply.
Google Sheets add-on
Turn a spreadsheet of events or a staff shift roster into Google Calendar events. Edit the sheet, sync again, and only what changed is updated. No duplicates, ever.
| Name | Mon | Tue | Wed | Thu |
|---|---|---|---|---|
| Alice | M | M | E | OFF |
| Ben | E | E | M | M |
| Chen | N | OFF | OFF | E |
Copying schedules into a calendar by hand doesn't scale. And most sync tools duplicate events or break when you edit the sheet.
See exactly what will be created, changed and removed before your calendar is touched. Then click Apply.
Each row remembers its event. Change a time or a shift and sync again: the same event moves. No duplicates.
Names down the side, dates across the top, a shift code in each cell. Overnight shifts, days off and staff invites are handled.
Only removes events it created itself. Syncs into a separate calendar by default, so your own events stay untouched.
Your own Google Sheet with Schedule Sync built in. Use Insert example sheets to start from a sample event list or roster.
Extensions → Schedule Sync → Open, pick Event list or Shift roster, choose a calendar, and click Preview changes.
Click Apply. Edit the sheet any time and sync again; only what changed is updated.
While our Google Workspace Marketplace listing is under review, Google may show an "unverified app" notice. Choose Advanced → Go to Schedule Sync to continue. The code runs only inside your own Google account; see the privacy policy.
Start free. Upgrade when your schedule has more than 50 events.
Forever
or $39 / year, save $21
Payments are processed by our reseller and Merchant of Record, Creem. Prices exclude applicable taxes. Cancel anytime; 14-day refund, see our refund policy.
No. Each row (or roster cell) remembers the event it created. Syncing again only updates what changed; unchanged rows are skipped.
No. It only removes events it created itself, and only after you confirm them in the preview. By default it syncs into a new, separate calendar.
For an event list: Title and Date, plus optional Start, End (or Duration), Location, Description and Guests. No start time means an all-day event. For a roster: names in column A, dates across row 1, and a Shift codes sheet with Code, Title, Start and End.
Times are read in the spreadsheet's time zone (File → Settings). If your calendar displays a different time zone, the preview tells you before you sync.
No. The add-on runs inside your own Google account; your sheet and calendar data are never sent to our servers. See the privacy policy.
Email winghuo19820628@gmail.com. We usually reply within 2 business days.
Keep the schedule in a sheet. Let the calendar follow.
Get started free