Export Google Calendar to Google Sheets automatically
Google Calendar has no "export to Sheets" button. What it offers is an export of your calendars as .ics files, the standard calendar format, meant for moving events into another calendar app. Getting events into a spreadsheet, and keeping them there up to date, takes one of the approaches below.
Option 1: Google Calendar's own export
In Google Calendar, open Settings, then Import & export, then Export. You download a zip with one .ics file per calendar (Google's help page describes it).
- Good: complete, official, works for any account.
- Not so good: Google Sheets cannot open
.icsfiles. You need a converter, and the result has one line per event series, with recurrence rules instead of actual dates. It is a snapshot: next week, you do it again.
Option 2: a script with a timer
Apps Script, built into Google Sheets, can read your calendar and write rows, and a time-driven trigger can run it every hour. Start from the short script in the timesheet guide, then, in the Apps Script editor, open Triggers, click Add Trigger, choose your function, "Time-driven" and "Hour timer".
- Good: free, exactly what you want, stays in your account.
- Not so good: you maintain it. Re-running it rewrites the sheet, so notes you add next to the rows get misaligned. Reading several calendars, skipping declined invitations, splitting meetings across midnight and avoiding duplicates are all yours to write.
Option 3: an add-on from the Google Workspace Marketplace
Add-ons install into Google Sheets in two clicks and do the reading for you. They fall into two families:
- Raw exporters copy events into a sheet, often with a schedule. They suit people who want the data and will build their own reports.
- Timesheet add-ons go further: they turn events into hours per client or project, with totals. Calendar Timesheet is one of them, and it is ours.
Before installing any add-on, look at what Google asks you to allow. A tool that only reads should ask to view your calendars, not to edit them, and to access only the spreadsheet you use it in.
Side by side
| .ics export | Script with timer | Calendar Timesheet | |
|---|---|---|---|
| Opens in Sheets | No, needs a converter | Yes | Yes |
| Stays up to date | No | Yes, hourly | Yes, hourly |
| Several calendars | One file each | If you code it | Yes |
| Real occurrences of recurring events | No, series rules | Yes | Yes |
| Keeps your notes next to rows | No | Not by default | Yes |
| Totals per client, amounts | No | If you code it | Yes (Pro) |
| Cost | Free | Free, plus your time | Free export; Pro from $49 a year |
The free export in Calendar Timesheet
Calendar Timesheet's export is free without time limit: pick any period up to a year and the calendars to read, and it writes one line per event (date, start, end, duration, title, calendar, colour) to an Export tab, with totals by colour and by calendar. It never edits your calendar and sends nothing out of your Google account.