Available calendar integrations
Google Calendar
Most popular - full two-way sync with Google Workspace
Outlook Calendar
Microsoft 365 and Exchange Server support
Apple Calendar
iCloud calendar integration
CalDAV
Connect any CalDAV-compatible calendar provider
Other supported calendars
- Exchange 2013 - Legacy Exchange Server 2013
- Exchange 2016 - Exchange Server 2016
- Lark Calendar - Lark Suite integration
- Feishu Calendar - ByteDance Feishu/Lark
- Zoho Calendar - Zoho suite calendar
- ICS Feed - Subscribe to read-only ICS calendar feeds
Google Calendar
Setup instructions
Install the integration
Navigate to Settings > Apps, search for “Google Calendar”, and click Install.
Authenticate with Google
You’ll be redirected to Google to grant calendar access permissions. Sign in with your Google account.
Grant permissions
Approve access to view, edit, and create calendar events. Cal.com needs these permissions to check availability and create bookings.
Select calendars
Choose which Google Calendars to check for conflicts. You can select multiple calendars.
Features
- Two-way sync - Events created in either system appear in both
- Conflict prevention - Cal.com checks selected calendars before offering time slots
- Multiple calendar support - Check conflicts across multiple Google Calendars
- Automatic event creation - Bookings appear in your Google Calendar instantly
- Event updates - Reschedules and cancellations sync automatically
- Guest management - Attendees added to Google Calendar events with video links
Configuration
After connecting Google Calendar:Google Calendar requires OAuth credentials. Self-hosted instances need to set
GOOGLE_API_CREDENTIALS in environment variables.Troubleshooting
Events not syncing
Events not syncing
- Verify calendar permissions in Google Account settings
- Check that the destination calendar is selected
- Ensure the calendar isn’t full (Google has a 25,000 event limit per calendar)
- Re-authenticate by disconnecting and reconnecting the integration
Availability showing incorrect times
Availability showing incorrect times
- Confirm your timezone is set correctly in Cal.com Settings
- Check that conflict calendars are selected
- Verify events in Google Calendar have the correct timezone
- Allow up to 5 minutes for calendar sync
OAuth redirect errors
OAuth redirect errors
For self-hosted: Verify
GOOGLE_API_CREDENTIALS is valid JSON and includes correct redirect URIs matching your Cal.com domain.Outlook Calendar (Microsoft 365)
Setup instructions
Features
- Microsoft 365 integration - Full support for Office 365 and Outlook.com
- Exchange Server compatibility - Works with Exchange 2013, 2016, and Online
- Teams integration - Can create MS Teams meetings (requires separate MS Teams app)
- Shared calendar support - Access to shared and delegate calendars
- Recurring event handling - Respects recurring event patterns for availability
Apple Calendar (iCloud)
Setup instructions
Provide credentials
Enter your iCloud email and an app-specific password (not your regular iCloud password).
Generate app-specific password
Visit appleid.apple.com > Sign-In and Security > App-Specific Passwords to create one.
Requirements
- iCloud account with calendar enabled
- App-specific password (required for third-party access)
- Two-factor authentication enabled on your Apple ID
Apple Calendar uses the CalDAV protocol under the hood. The integration automatically configures the correct CalDAV server settings for iCloud.
CalDAV
Connect any CalDAV-compatible calendar provider, including:- Fastmail
- Nextcloud
- Radicale
- Baikal
- SabreDAV
- Custom CalDAV servers
Setup instructions
Gather CalDAV details
You need: CalDAV server URL, username, and password from your calendar provider.
Enter server details
Provide your CalDAV server URL (e.g.,
https://caldav.example.com/), username, and password.Common CalDAV providers
- Fastmail
- Nextcloud
- Generic CalDAV
Server URL:
https://caldav.fastmail.com/dav/calendars/user/{username}/Username: Your Fastmail emailPassword: Use an app password from Settings > Privacy & Security > App PasswordsCalDAV is marked “Beta” because different CalDAV servers implement the specification differently. Most providers work well, but some may have quirks.
Calendar sync behavior
Availability checking
When someone books a time with you:- Cal.com queries all connected calendars for events in the requested time range
- Busy times are excluded from available slots
- Only free times matching your availability rules are offered
- Multi-calendar conflicts are detected automatically
Event creation
When a booking is confirmed:- Cal.com creates an event in your selected destination calendar
- The event includes:
- Booking title and description
- Attendee information (name, email)
- Video conferencing link (if configured)
- Location or meeting instructions
- Cal.com metadata for tracking
- Attendees receive calendar invitations
- The event appears in both Cal.com and your calendar
Updates and cancellations
- Reschedules - Original event is updated with new time
- Cancellations - Event is removed from calendar or marked as cancelled
- Manual changes - Editing events directly in your calendar provider may break sync
Multiple calendar setup
You can connect multiple calendar providers simultaneously:Best practices
Connect all calendars you use regularly - Include work, personal, and shared calendars to prevent double-bookings.
Choose a primary destination calendar - Pick the calendar you check most often to receive Cal.com bookings.
Set consistent timezones - Ensure your Cal.com timezone matches your calendar provider’s timezone.
Use all-day events for busy days - Create all-day “Busy” events in your calendar for days you’re unavailable.
Test after setup - Book a test appointment to verify events appear correctly in your calendar.
Environment variables (self-hosted)
Self-hosted Cal.com instances require API credentials for some calendar providers:Apple Calendar and CalDAV don’t require API keys - they use username/password authentication.
Troubleshooting common issues
Events not appearing in calendar
- Verify the integration is connected in Settings > Apps
- Check that a destination calendar is selected
- Confirm you have write permissions to the destination calendar
- Re-authenticate the integration
Incorrect availability
- Ensure all calendars are selected for conflict checking
- Verify events in your calendar have correct timezones
- Check that availability rules in Cal.com match your schedule
- Wait a few minutes for calendar sync (APIs can have delays)
OAuth errors
- For self-hosted: Verify redirect URIs in OAuth app settings match your domain
- Check that environment variables are set correctly
- Ensure your OAuth app has the required scopes/permissions
- Try revoking access in your calendar provider and reconnecting
Next steps
Video conferencing
Add video meeting links to calendar events
Event types
Configure event types with calendar integrations