Export Google Calendar to Excel or CSV, with durations
Google Calendar has no button that saves your events as an Excel or CSV file. Its own export produces .ics files, the format calendar apps use to exchange events, and Excel cannot read them as a list. The dependable route goes through Google Sheets: put the events in a sheet, add a duration column, then download the sheet as .xlsx or .csv.
What Google Calendar's own export gives you
On a computer, Settings, then Import & export, then Export downloads a .zip with one .ics file per calendar; a single calendar can be exported from its own Settings and sharing page. Google's help page adds two limits: there is no export from the Google Calendar app on a phone, and you need the "Make changes and manage sharing" permission on a calendar to export it.
The file is made for another calendar app, not for counting: a weekly meeting appears once, with its repeat rule, instead of once per week. The guide to exporting Google Calendar to Google Sheets compares this export with the other options.
If all you need is the total number of hours, skip the spreadsheet: the free Google Calendar hours calculator reads that same export in your browser and adds it up by calendar, keyword and week.
Step 1: get the events into Google Sheets
Two free ways, both inside your own Google account:
- A short script. The guide to turning Google Calendar into a timesheet has a ten-line Apps Script that writes one line per event of your main calendar for the month you choose: date, start, end, hours, title and colour. Each occurrence of a recurring meeting gets its own line.
- The free export of Calendar Timesheet. Pick any period up to a year and the calendars to read. It writes one line per event (date, start, end, duration, title, calendar, colour) to an Export tab, with totals by colour and by calendar.
Step 2: make the durations add up
With the start time in column B and the end time in column C:
| You want | Formula | Format of the column |
|---|---|---|
| Hours as a decimal number (1.5 for 1 h 30) | =(C2-B2)*24 | Number |
| Hours as a time (1:30) | =C2-B2 | Custom number format [h]:mm |
Decimal hours are the safer choice for a file you pass on: they stay plain numbers in Excel and in CSV, and multiplying by an hourly rate is direct. If you keep times, the square brackets in [h]:mm stop a total of 26 hours from showing as 2:00. The guide Can Google Calendar calculate hours worked? has the formulas for events that end after midnight and for rounding up.
Step 3: download as Excel or CSV
In Google Sheets, open File, then Download:
- Microsoft Excel (.xlsx) saves the whole spreadsheet, every tab, with its formulas and number formats.
- Comma-separated values (.csv) saves only the tab you are on, as plain text: values only, no formulas, no formatting. Open the tab you want before you download.
| .xlsx | .csv | |
|---|---|---|
| Several tabs in one file | Yes | No, one tab per file |
| Formulas and totals | Kept | Values only |
| Best for | A file a person will open | Importing into another tool |
Three things to check before you send the file
- Dates in a CSV. A CSV stores dates as text, written the way the sheet displays them, and Excel reads that text with the computer's regional settings: 05/10/2026 can become 5 October or May 10. Format the date column as
2026-10-05(Format, Number, Custom date and time) before you download, and every computer reads the same day. - Time zone. Times are shown in the spreadsheet's time zone (File, Settings), which is not always your calendar's. Set the sheet to the zone you bill in before you export.
- Events that should not count. All-day events, declined invitations and a meeting copied into two calendars all inflate a total. The pitfalls that make calendar totals wrong are listed with their fixes.
Skip the copying. Calendar Timesheet's free export puts any period of your calendars in a tab, with durations and totals by colour and by calendar, ready to download as Excel or CSV.