Answer · Scheduling
Stop Microsoft Bookings booking over Outlook events
Last updated 5 min readPart of How Microsoft Bookings calculates availability4 sources
“How do I stop Microsoft Bookings booking over existing Outlook events?”
Asked in Microsoft Learn (opens in a new tab), Microsoft Learn (opens in a new tab), Microsoft Learn (opens in a new tab), Microsoft Learn (opens in a new tab) and Microsoft Learn (opens in a new tab)
Short answer
Turn on Events on Microsoft 365 calendar affect availability for each staff member (Staff → edit the person), and make sure each person shares their Outlook calendar with the organization as Can view when I'm busy. Then Bookings won't offer times when they have a Busy event. It only reads the staff member's primary Microsoft 365 calendar, though. Subscribed calendars, other calendars, all-day events marked Free, and bookings on a different booking page can still end up double-booked.
The main Microsoft Q&A thread on this (2020) has 257 "same question" votes. Its accepted answer is this per-staff setting.
Turn on calendar sync for each staff member#
- Open Bookings → Shared booking pages → your page → Staff.
- Edit the staff member.
- Tick Events on Microsoft 365 calendar affect availability. The Microsoft docs also call it "Events on calendar affect availability" or "Events on Office 365 calendar affect availability". It's the same setting.
- Save. Repeat for each person, and on every booking page they belong to.
It's on by default for new staff, and Microsoft strongly recommends leaving it on. With it on, a 3pm team meeting makes that person unbookable at 3pm.
Make sure Bookings can read their free/busy#
If Bookings shows "This staff member's calendar can't be synced", or seems to ignore someone's meetings, that person needs to share free/busy:
- In Outlook on the web, select Share → Calendar.
- Under People inside your organization, set My Organization to Can view when I'm busy.
- Select Done.
This shares free/busy only, not subjects or details. Two more account-level blockers:
- External staff (added with an email from outside your tenant) can't share free/busy. Bookings only knows about their Bookings appointments. See external staff.
- If your admin turned on Require staff approvals before sharing free/busy information (admin center → Settings → Org settings → Bookings), each person has to approve the request email first.
What we saw when testing (September 2026)#
We captured the public Microsoft booking page and the calls it makes (13 live captures, 913 days, several time zones). Two findings matter here:
- The page doesn't read Outlook itself. It asks the Microsoft server for each staff member's availability, and the answer arrives with working hours, Outlook busy time, existing bookings and service windows already folded in. So if a meeting isn't blocking, the cause is in the calendar data or the staff settings, not in the booking page. Clearing your browser cache won't change it.
- The answer can depend on the date range requested. In one capture, the same hour came back as out of office in one request and available in another, depending on the start date asked for. The page requests roughly one month at a time, so a day near a month boundary can look different depending on which month the visitor navigated from. If a day near the start or end of a month looks wrong, check it from both months before changing settings.
Events that still don't block#
Subscribed and secondary calendars#
Only the default Exchange calendar counts. A 2023 thread with 37 "same question" votes asked why subscribed calendars were ignored, with no fix. The same goes for extra calendars created in Outlook and for Google or iCloud calendars (see Google Calendar). To make that time count, add Busy events to the primary calendar.
All-day events#
Outlook all-day events default to Free, so Bookings treats the day as open. A 2026 thread about a staff member bookable during all-day events came down to this. Set Show as to Busy or Out of office. For planned leave, Add time off in the Bookings Calendar is more reliable (see holidays and time off).
Events marked Free#
Anything shown as Free doesn't block, including meetings accepted as Free and focus time set to Free.
"Anyone" services with several staff#
If a service has several staff and the customer chooses "Anyone", the slot stays open while at least one assigned person is free. A 2025 thread where the owner was Busy but still got booked came down to this. Also check the service is set to Bookable when staff are free under Availability options. How the page picks a person is covered in the round-robin and "any staff" guide.
Group services#
If Maximum attendees per event is above 1, several people can book the same slot on purpose. Set it to 1 for 1:1 appointments.
Double-booking across two booking pages#
Threads from 2021 and 2024 report the same person being double-booked by two separate booking pages, even with calendar sync on for both. A new Bookings appointment is written to the staff member's calendar, so the other page should see it as Busy. Users reproduced the double booking anyway, and neither thread has a Microsoft fix.
To reduce the risk, put the services on one booking page where possible and use per-service links (see direct links to a service). If you must use two pages, check for overlaps daily.
Changes not showing yet#
Availability is recalculated when the page loads and again when someone books. In a 2026 thread (11 "same question" votes), the moderator called it a sync issue and suggested switching the calendar setting off and on again. Reload the booking page after any change. If times are missing rather than overbooked, see no available times.
BookingsXP is independent and not affiliated with or endorsed by Microsoft.
Questions people also ask
Sources
- Microsoft Learn: Add staff (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Bookings faq (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Configure service availability (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Granular controls shared bookings (opens in a new tab) · learn.microsoft.com