Logo StartupKit
EN

Calendar Integration

Connect Google Calendar to prevent double-booking and automatically detect scheduling conflicts when candidates book interviews.

Why It Matters

Without calendar integration, you’d manually block out every meeting in your availability schedule. Connect Google Calendar once, and Kit automatically:

  • Hides time slots when you have conflicting meetings
  • Reads your calendar in real-time — new conflicts appear instantly
  • Sends a calendar invite (.ics file) by email when a candidate books, so the interview lands on everyone’s calendar
  • Sends an updated or cancellation invite by email when an interview is rescheduled or cancelled

Don’t use Google Calendar? You can connect any calendar (Outlook, Apple, Proton, etc.) via an ICS link instead. See Calendar Feeds (ICS).

Connecting Google Calendar

Navigate to Integrations > Google Calendar and click Connect Google Calendar.

Authorization Flow

  1. Select your Google account (or sign in)
  2. Grant Kit permission to read your calendar availability
  3. Kit lists all calendars associated with your account
  4. You’re redirected back to Kit

Permissions

Kit requests a single Google Calendar scope:

Scope What It Allows
calendar Read event start/end times and busy status to detect conflicts

Kit reads only the start time, end time, and busy status of calendar events. Event titles, descriptions, and attendee lists are not accessed. This protects privacy for personal events. Kit does not create, edit, or delete events on your Google Calendar — interview invites are sent to you by email as a calendar file (see How Interview Invites Are Sent).

Selecting Calendars to Check

After connecting, you’ll see all your Google Calendars on the Google Calendar Settings page.

Primary vs. Secondary Calendars

  • Primary calendar — Your main Google Calendar (usually your email address)
  • Secondary calendars — Additional calendars you’ve created or subscribed to (team calendars, shared calendars, etc.)

Enabling Calendars for Conflict Detection

By default, Kit checks your primary calendar. To add more:

  1. Navigate to Integrations > Google Calendar
  2. Find the calendar in the list
  3. Click Enable for Conflict Detection

Kit now checks all enabled calendars when determining your availability. If any calendar has a conflicting event, that time slot is hidden from candidates.

Common Setup

Scenario Which Calendars to Enable
Solo employee with one calendar Primary calendar only
Employee with work + personal calendars Both — prevent candidates from booking during personal appointments
Manager with team calendar Primary + team calendar — avoid conflicts with team meetings
Part-time consultant Work calendar + client-specific calendar — block out all commitments
Do This Don’t Do This
Enable all calendars where you have genuine conflicts Enable holiday calendars or read-only calendars you don’t actually attend
Keep personal calendar connected to avoid work/life conflicts Manually add date overrides every time you have a personal appointment

How Interview Invites Are Sent

When a candidate books an interview, Kit does not write an event into your Google Calendar. Instead, it emails a standard calendar invite — a .ics file attachment — to the candidate and to every assigned interviewer. Your email client (Gmail, Outlook, Apple Mail, etc.) recognizes the attachment and offers to add it to your calendar. When the interview is rescheduled or cancelled, Kit emails an updated or cancellation invite the same way.

This means the integration works the same regardless of which calendar app you use — Google Calendar is only ever read for conflict detection, never written to.

Invite Details

Each .ics invite includes:

  • Title — “Interview: [Job Title] at [Company]”
  • Time — The slot the candidate selected, in the recipient’s time zone
  • Description — The job title, company, and duration; plus the meeting URL if one is configured. The interviewer copy also lists the candidate’s name
  • Attendees — The recipient (candidate or interviewer)

If the interview includes a meeting URL, Kit adds it to the invite’s join link automatically.

How Conflict Detection Works

Every time a candidate views available slots, Kit:

  1. Fetches your weekly hours and date overrides from your availability schedule
  2. Queries all enabled Google Calendars for events in that date range
  3. Removes time slots that overlap with any calendar event marked as “busy”
  4. Applies meeting limits and buffers
  5. Returns only the slots where you’re genuinely available

Real-Time Updates

Calendar checks happen on-demand, not on a schedule. If you add a new meeting to Google Calendar and refresh the candidate booking page 10 seconds later, that slot disappears.

All-Day Events

All-day events (e.g., “Vacation” or “Conference”) block out the entire day. Kit won’t show any slots on days with all-day events, even if your weekly hours say you’re available.

Free vs. Busy Status

Google Calendar events can be marked as “free” or “busy”. Kit only blocks out “busy” events. If you create a tentative hold on your calendar and mark it as “free”, candidates will still see that time as available.

Multiple Interviewers

When an interview stage includes multiple interviewers, Kit checks all of their calendars. You choose how slots are combined with the scheduling strategy setting in Hiring Settings:

  • Maximize Availability (default) — Kit checks conflicts individually and assigns each interview to an available interviewer. A slot is offered whenever any interviewer is free.
  • Balanced Workload — Same as Maximize Availability, but prioritizes the least-loaded interviewers so interviews are distributed evenly across the team.

If one interviewer has a conflict at 2 PM, that slot is simply assigned to a different available interviewer rather than being hidden.

Troubleshooting

Slots Still Showing Despite Conflicts

Possible causes:

  1. The conflicting event is on a calendar that’s not enabled for conflict detection
  2. The event is marked as “free” instead of “busy”
  3. Calendar sync is delayed (rare — usually under 5 seconds)

Fix:

Disconnected Calendar

If you revoke Google permissions or change your password, Kit loses access to your calendar. You’ll see a warning banner at Integrations > Google Calendar. Click Reconnect to re-authorize.

Interview Invite Not Appearing on Your Calendar

Remember that Kit sends interview invites by email as a .ics attachment — it does not write directly to your Google Calendar. You (or your email client) need to accept the invite for it to show up.

Possible causes:

  1. The interview hasn’t been scheduled yet, so no invite has been sent
  2. The invite email landed in spam or a filtered folder
  3. Your email client didn’t auto-add the .ics attachment to your calendar

Fix:

  • Confirm the interview is scheduled in Kit
  • Search your inbox (and spam folder) for the interview invite email
  • Open the email and accept the .ics attachment, or import it into your calendar manually

Privacy and Security

Kit’s Google Calendar access is read-only — it is used solely for conflict detection and never writes to your calendar:

  • Event titles are not read — Only start/end times and busy status
  • Attendees are not read — Kit doesn’t know who else is in your meetings
  • Descriptions are not read — Personal notes remain private

Interview invites are sent by email as .ics attachments, which include only what’s necessary: title, time, duration, and meeting link. The candidate’s name appears only on the copy sent to interviewers.

You can revoke access anytime at Integrations > Google Calendar. Any invites you’ve already accepted remain on your calendar, but Kit stops checking for new conflicts.

Quick Checklist

  • Navigate to Integrations > Google Calendar
  • Click Connect Google Calendar and authorize Kit
  • Enable all calendars where you have scheduling conflicts
  • Verify your primary calendar is correct (where conflicts are read from)
  • Test by viewing a candidate booking page and confirming conflicting slots are hidden
  • Revoke access anytime if you no longer want calendar integration

Type to search...