Skip to content

For schedule coordinators · free · no login

Check planned bookings against your current schedule.

Compare the two lists you already maintain. Get a review draft showing missing bookings, unexpected entries, changed resources or times, and overlaps in the scheduled list.

Your lists stay in this browser. This page does not connect to Calendar, import ICS files, create events or send invitations. Usage events exclude booking IDs, resource names, times and draft text.

1. Paste both booking lists

Prepare four columns in this order: booking ID, resource or person, start, end. Copy literal tab-separated rows from Sheets, without a header or blank lines. Use the same stable ID for the same booking in both lists. IDs and resource names match exactly, including case and spaces; each ID must be unique within its list.

Start and end need explicit ISO timezones: for example 2026-10-07T09:00:00-04:00 or 2026-10-07T13:00:00Z. End must be later than start. Equivalent offsets compare as the same UTC instant; touching intervals do not overlap. No timezone or daylight-saving offset is guessed.

These are manually prepared lists, not a native Calendar export. Match the calendars and date window yourself. Give recurring instances distinct stable IDs. All-day and recurring events need explicit rows and times; attendee availability, omitted events and resource aliases are not checked. Maximum 500 rows and 100,000 characters per list; 1,000 conflict pairs and 300,000 draft characters. Excessive results reject the whole draft. Smaller batches must retain bookings crossing their boundaries.

Need a current booking list from Google Calendar?

The optional Apps Script helper reads one calendar and an explicit time window in your own Google account. It exports timed bookings into these four columns. You review and run it manually with Calendar read-only permission; this page still has no Calendar connection.

For two snapshots, keep the same calendar, resource label and window, and retain the earlier list yourself. A current export does not create an independent plan. Map planned IDs to event IDs yourself. A moved recurring occurrence appears as missing plus unexpected; all-day events and oversized exports reject the whole output.

Event identifiers and times remain private work data, including in your Google execution log. Titles, descriptions and attendees are excluded. The source has offline fixture checks; actual Google execution and time savings are unmeasured.

Read setup, read-only scope and output limits · Download Calendar input helper

Example edits remain sample use. Choose “Start with my own booking lists” before entering your work.

Leave blank only when no bookings are scheduled in your checked window.

Resolve findings in your normal scheduling process

Confirm each source booking before adding, editing or removing an event yourself. Refresh both lists and compare again after resolving differences. A clean result only covers the supplied rows; it does not confirm a complete calendar or available attendees. Comparing lists manually is the existing alternative; no time saving has been measured.

Read the exact agent task packet

Only need overlapping bookings? Open the free Workbench.

Download standalone reconciliation source · Executable example and MIT license

Existing guide for creating a Calendar event from a Sheet row

Have a question about this job? Email Bulldogs. No booking data is added to the email.