It's Complicated lets you connect your external calendars in both directions — import events from Google Calendar, Outlook, or Apple Calendar to prevent double-bookings, and export your It's Complicated appointments to your preferred calendar app so everything stays in one place.
To manage calendar integrations, go to Settings → Calendar Integrations.
Importing external calendars
Importing an external calendar brings your existing events into It's Complicated. Any time you're busy in that external calendar will automatically block you from being booked during those times — preventing scheduling conflicts without any manual work.
Connecting Google Calendar
Google Calendar connects directly through your Google account. Go to Settings → Calendar Integrations and click Link Google Calendar. Choose the Google account you want to connect and grant It's Complicated permission to access your calendars. Once connected, you'll see a list of individual calendars within that account — toggle on the ones you want to import.
Connecting Outlook or Apple Calendar
For Outlook, Apple Calendar, or any other calendar app, you can import via a public .ics calendar feed URL. Go to Settings → Calendar Integrations → Import External Calendars → From Other Calendars, paste your .ics URL into the field, and click Add Calendar.
⚠️ .ics feed calendars update every 1–4 hours — changes in your external calendar may not appear in your It's Complicated availability immediately. For real-time syncing, use Google Calendar instead.
To get your .ics URL from Outlook or Apple Calendar:
Outlook / Microsoft 365:
- Open Outlook Calendar on the web
- Go to Settings → View all Outlook settings → Calendar → Shared calendars
- Under Publish a calendar, select your calendar and click Publish
- Copy the ICS link
Apple iCloud Calendar:
- Go to iCloud.com and sign in
- Open Calendar
- Click the share icon next to the calendar name
- Check Public Calendar
- Copy the provided URL
Exporting your It's Complicated appointments
You can push your It's Complicated appointments to an external calendar so your sessions appear alongside the rest of your schedule. There are two ways to do this.
Direct Google Calendar Sync (recommended)
If you have a Google account connected, you can enable Direct Google Calendar Sync to instantly push It's Complicated appointments to a specific Google Calendar. Changes appear immediately whenever a booking is made or updated.
Go to Settings → Calendar Integrations → Export Your Appointments → Direct Google Calendar Sync. Select the Google calendar you want to sync to from the dropdown — this lists all the individual calendars within your connected Google account. Select the one you want your IC appointments to appear in.
Via calendar feed (.ics)
For any other calendar app — including Apple Calendar, Outlook, or a second Google account — you can export via a private .ics calendar feed. Go to Settings → Calendar Integrations and toggle on Enable private calendar feed. This generates a private feed URL that you can subscribe to in any calendar app.
⚠️ Keep your calendar feed URL private — anyone with this link can view your full session schedule. If you think your URL has been compromised, disable and re-enable the feed to generate a new one.
To add the feed to your calendar app:
Google Calendar:
- Open Google Calendar in a browser
- Click the + next to Other calendars in the left sidebar
- Select From URL
- Paste your calendar feed URL and click Add calendar
Outlook / Microsoft 365:
- Open Outlook Calendar
- Click Add calendar → Subscribe from web
- Paste your calendar feed URL, name the calendar, and click Import
Apple Calendar (Mac / iPhone / iPad):
- On Mac: go to File → New Calendar Subscription
- On iOS: go to Settings → Calendar → Accounts → Add Account → Other
- Paste your calendar feed URL and follow the prompts
How appointments appear in external calendars
You can customise how your It's Complicated appointments are labelled when they appear in external calendars. Go to Settings → Calendar Integrations → External Calendar Display and edit the title template. The default is Session with {client_name}, but you can use any combination of text and the available placeholders.
Troubleshooting
💬 My imported calendar isn't showing events.
For Google Calendar, check that you've granted the correct permissions and selected the right calendars to import. For .ics feeds, verify the URL is correct and still active. Try disconnecting and reconnecting the calendar.
💬 External calendar changes aren't syncing.
Google Calendar syncs in real time — updates should appear within minutes. .ics feed calendars update every 1–4 hours, so allow time for changes to come through.
💬 My exported appointments aren't appearing in my external app.
Calendar feed subscriptions refresh on the external app's own schedule, typically every 4–24 hours. Try manually refreshing the calendar subscription in your app, or switch to Direct Google Calendar Sync for real-time updates.
If you're still having trouble, contact our support team by raising a ticket in the Help Center.