CalBatch

A Google Workspace™ add-on for Google Sheets™.

CalBatch turns rows of a Google Sheet into Google Calendar™ events — hundreds at a time — and reads existing calendar events back into the sheet so they can be edited in bulk.

It runs entirely inside your own Google account as a Google Apps Script add-on. There is no server.

What it does

How it works

You open the add-on from the CalBatch menu inside a Google Sheet. It reads the rows of that one spreadsheet, and writes to the Google Calendar you pick from a list.

Long jobs are processed in resumable batches with a progress bar, so a run of a thousand rows does not hit the Apps Script execution time limit. If a run is interrupted, it continues from where it stopped. Rate limits returned by Google are retried automatically with backoff.

Every event CalBatch creates is recorded against its row in a hidden column of your sheet. That is what makes a second run safe: rows that already have an event are skipped rather than duplicated, and rows that previously failed are retried.

What it accesses

PermissionWhy CalBatch needs it
spreadsheets.currentonly Read the rows you want to turn into events, and write the event ID and status back into two hidden columns. Limited to the single spreadsheet you opened the add-on in — it cannot see any other file in your Drive.
calendar.events Create, update, delete and read the events you ask it to.
calendar.calendarlist.readonly List your calendars so you can choose a destination, and read that calendar's time zone in order to warn you about a mismatch before anything is written.
script.container.ui Show the add-on's side panel inside Google Sheets.
script.external_request Verify a Pro licence key with Gumroad. This is the only outbound request the add-on can make, and it sends nothing but the licence key and product ID.

CalBatch does not request the full calendar scope, which would allow sharing and permanently deleting entire calendars, and does not request any drive scope. Full details are in the Privacy Policy.

Pricing

Free: unlimited preview, and up to 100 events written per day. The daily allowance resets each day, and a job that stops at the limit continues from the same place the next day — rows already created are never created twice.

Pro: a single payment of $19 USD removes the daily write limit. There is no subscription.

Not in this version

Recurring events and automatic Google Meet™ links are not supported yet.

Documents

Support

Email se.sato614@gmail.com. Please include what you were trying to do and, if the add-on reported an error on a row, the text of that error.

Uninstalling

Open Google Workspace MarketplaceManage apps → CalBatch → Uninstall. This revokes every permission you granted.