Technologytech

How To Link Google Sheets To Google Calendar

how-to-link-google-sheets-to-google-calendar

To link Google Sheets to Google Calendar, you can use Google Apps Script for a fully custom solution or the Sheets2GCal add-on for a no-code approach. Both methods let you automatically create calendar events from spreadsheet data, saving you from manual entry and keeping your schedule in sync with your planning.

Prepare your Google Sheet data

Start by creating a new sheet or opening an existing one where your event data lives. Format your columns to include key event details such as title, start date/time, end date/time, location, and description. To prevent syncing errors, format date and time cells using Format > Number > Date Time in the Google Sheets menu. This ensures that Apps Script or an add-on can correctly read the values. Organize your data so each row represents a single event, with the first row acting as column headers.

Method 1: Sync with Google Apps Script

This method gives you full control over how events are created, updated, or deleted. It requires writing or pasting a small piece of JavaScript code.

  1. Open your Google Sheet and go to Extensions > Apps Script to launch the editor.
  2. In the Apps Script editor, add the CalendarApp service by clicking the plus sign next to "Services" and selecting "Calendar" from the list. This allows the script to interact with Google Calendar.
  3. Paste a code sample into the editor. A basic script reads data from your sheet, loops through each row, and creates a calendar event using the createEvent() method. The script should reference your sheet’s range and map columns to event fields like title, start time, and end time.
  4. Paste this ID into your script where required.
  5. Run the script by clicking the play button in the editor. Authorize the script when prompted. After execution, check your calendar to confirm events were created.

Apps Script can also update and delete calendar events based on changes made in the sheet. For example, if you modify a row’s date, the script can find the matching event and update it. To manage deletions, the script can compare current sheet data with existing events and remove those no longer present. This makes it easy to undo in Google Calendar by simply editing your sheet and re-running the script.

Method 2: Sync with the Sheets2GCal add-on

If you prefer a no-code solution, the Sheets2GCal add-on from the Google Workspace Marketplace handles the linking for you.

  1. Install Sheets2GCal by going to Extensions > Add-ons > Get add-ons in your Google Sheet, searching for "Sheets2GCal," and installing it.
  2. After installation, go to Extensions > Sheets2GCal > Import Calendar to Sheet. Select the calendar you want to link from the dropdown menu.
  3. Use the add-on’s export features to send events from your sheet to the calendar, or import existing calendar events into your sheet for editing. The add-on maps your columns to calendar fields automatically, though you can adjust the mapping if needed.

This method is ideal for quickly syncing data without coding. To add an event to a specific Google calendar, simply select that calendar during setup. The free version of Sheets2GCal includes daily limits, such as importing up to 5000 events and exporting or updating 200 events per day. If you need to sync Google calendar with multiple accounts, you can install the add-on in separate sheets linked to each account, though each session works with one calendar at a time.

Tips for managing your Google Sheets to Calendar sync

To keep your sync running smoothly, follow these best practices.

Update and delete events via script: When using Apps Script, write functions that check for changes in your sheet and adjust calendar events accordingly. For updates, match events by a unique ID stored in the sheet. For deletions, compare the sheet’s event list against the calendar and remove events that are no longer present. This approach ensures you can undo in Google Calendar by simply reverting your sheet data.

Create a custom menu: In Apps Script, add a function that creates a custom menu item in your sheet (e.g., "Sync to Calendar") using the onOpen() trigger. This lets you run the sync directly from the spreadsheet without opening the editor each time.

Understand API quotas and add-on limits: Google Calendar API, which Apps Script uses, has quotas of 10,000 requests per minute per project and 600 requests per minute per user per project. The free Sheets2GCal add-on limits imports to 5000 events daily and exports to 200 events per day. Plan your sync frequency and data volume to stay within these boundaries.

Sources

The steps on this page were checked against the following documentation. Last verified 17 September 2026.

  1. Racedorsey — https://racedorsey.com/posts/2024/automating-google-calendar-events-from-spreadsheets/
  2. Google Help — https://support.google.com/docs/thread/408535588/create-an-appointment-in-a-calendar-from-googl…
  3. Google — https://workspace.google.com/blog/productivity-collaboration/g-suite-pro-tip-how-to-automatical…
  4. Coursera — https://www.coursera.org/articles/sync-google-sheets-with-google-calendar
  5. Freecodecamp — https://www.freecodecamp.org/news/google-sheets-automatically-post-events-to-google-calendar-wi…
  6. Google — https://workspace.google.com/marketplace/app/sheets2gcal/137564231775

About the author

Loleta Detweiler stands at the forefront of autonomous vehicle exploration, charting the course for future transportation from her base in Boston, Massachusetts.

View all 99 articles by Loleta Detweiler  ·  Our editorial policy

Leave a Reply

Your email address will not be published. Required fields are marked *