Guide · Scheduling
Set up a shared Microsoft Bookings page, step by step
Last updated 12 min readPart of Shared booking pages: setup and the mailbox behind them12 sources
This guide takes you from "do we have Bookings?" to a published, tested shared booking page that customers can use. It's for Microsoft 365 admins and team leads, and a simple page with a few staff and services takes about an hour, plus any admin tasks below. The order matters: a few decisions (the page name, the email domain, whether a service is 1:1 or a group session) are hard or impossible to change later, so they come first.
Before you start#
Check licences and access#
- Licence. As of September 2026, Bookings comes with the Business Basic, Standard and Premium plans, most E, A (not A1), F and G plans, Teams Essentials and Teams Premium. It is not sold on its own, and Outlook on the web must be enabled. The full list is in which licence you need.
- Bookings turned on. A Microsoft 365 admin controls this under Settings → Org settings → Bookings ("Allow your organization to use Bookings"). An admin can also limit who may create shared pages with an OWA mailbox policy (
BookingsMailboxCreationEnabled), so if you can't see the option to create a page, ask your admin first. - Teams licences for online meetings. If a service will include a Teams link, every staff member who delivers it needs a licence that supports Teams meeting scheduling.
Decide the name before you create anything#
The business name you type in the first step is used to generate the booking mailbox's email address, and the public link is built from that address, for example https://outlook.office.com/book/SalesDemos@contoso.com/. There is no setting in Bookings to change the link afterwards. Changing the business name later only changes the display name, not the URL. Our answer on changing the page URL covers what happens if you try to rename the mailbox in Exchange.
Pick a short, customer-facing name: "SalesDemos" rather than "EMEA-SMB-Inbound-2026".
Set the domain first if you want your own#
By default, new booking mailboxes can end up on your onmicrosoft.com domain. Microsoft recommends a custom domain, noting that the default domain "may cause Bookings email notifications to land in recipients' spam/junk folders". A Global admin sets the domain for new booking pages in Exchange Online PowerShell:
# Check the current setting
Get-OwaMailboxPolicy -Identity OwaMailboxPolicy-Default | Format-List BookingsMailboxDomain
# Use your own domain for booking pages created from now on
Set-OwaMailboxPolicy -Identity OwaMailboxPolicy-Default -BookingsMailboxDomain "contoso.com"This only affects pages created after the change. Existing pages keep their address, and the page itself still lives on a Microsoft host; "custom domain" here means the mailbox domain only.
Check the naming policy#
If your admin has turned on Enforce naming policy for shared booking pages alias, a prefix or suffix is added to every new page's alias. Ask what it is so the address still reads well.
Step 1: Create the page#
- Open Bookings (book.ms, or the Bookings app in Outlook or Teams).
- On the home page, go to the Shared booking pages section and select Create booking page.
- Choose Create from scratch, or clone an existing page if you already have one set up the way you like.
- Work through the four setup steps:
- Business details: name (the only required field), logo and business hours.
- Invite staff: you can add people now or later.
- Add a service: keep the default service for now if you prefer to configure services properly in Step 4.
- Choose who can book: decide whether anyone with the link can book or only people in your organization.
- Select Create. If you quit before this point, nothing is saved.
- Select Get Started to open the new page's settings.
Inside the page, the left pane has Calendar, Booking page, Business information, Staff and Services.
Step 2: Business information#
Open Business information.
- Basic details: business name, address, phone, Website URL, and privacy policy and terms & conditions URLs, shown on the page and in customer emails.
- Send customer replies to: the mailbox that receives replies to confirmations and reminders. Use a monitored shared inbox. This setting does not change the sender address.
- Business logo: select Change, then Upload photo. Guidance on getting a logo that displays well is in logo and colours.
- Business hours: the default is 8 a.m. to 5 p.m., Monday to Friday, in 15-minute steps. Microsoft describes these as "the hours to which all bookings are restricted", so staff and service hours can only narrow them. Use + on a day to add a second range, for example 8:00 to 13:00 and 14:30 to 18:00 on Thursdays to block a weekly team meeting.
- Select Save.
Step 3: Staff#
Open Staff and select Add new staff for each person.
- Find the person. For people in your organization, type their name and pick them from the list. People outside the organization can be added by email address, but Bookings cannot read their calendar free/busy, so they can be double-booked. See external staff.
- Choose a role. The add-staff screen lists Team member, Scheduler, Viewer and Guest. The Bookings FAQ also refers to an Administrator role, and only Administrators can download the booking report or create Power Automate flows. The docs are not consistent here, so check what your screen shows. The staff roles answer compares them.
- Notify all staff via email when a booking assigned to them is created or changed. Turn this on unless people watch the shared calendar.
- Events on Microsoft 365 calendar affect availability. Leave it on (the default; some Microsoft pages word it slightly differently). With it on, meetings in the person's Outlook calendar block slots.
- Use business hours. Untick it to set the person's own days and hours, including split shifts. A day with no hours means they can't be booked that day.
- Save each staff member.
Two things often stop a new staff member from appearing as bookable:
- Free/busy sharing. Each person must share their calendar with the organization as Can view when I'm busy (Outlook → Share → Calendar → People inside your organization). Without it you may see "This staff member's calendar can't be synced".
- Membership not accepted. New staff get an email invitation to join the page. Until they accept, their status shows as "Approve to receive bookings". If your admin has turned on Require staff approvals before sharing free/busy information, they must approve before they can be booked at all.
More fixes are in staff member not bookable. A page takes up to 100 staff.
Step 4: Services#
Open Services and select Add new service. Microsoft suggests keeping it to 50 services per page. The editor has five parts.
Basic details#
- Service name and Description, as customers will see them.
- Location, shown in emails and on the calendar event.
- Add online meeting to create a unique Teams link for each appointment.
- Duration. One duration per service. If customers need a 30- or 60-minute option, create two services.
- Buffer time before and after, which blocks the staff calendar but isn't shown to customers. See buffer time.
- Price options, or Price not set to hide pricing. Bookings does not take payments.
- Maximum attendees per event. Decide this now. The service-types article on Microsoft Learn says that once it is set, "the service type (multi customer or single) can't be edited further". A 1:1 service cannot later become a group class. See group bookings.
- Language, if this service should appear in a different language from the page.
Availability options#
This page shows the page-wide scheduling policy. To give this service its own rules, turn off the Default scheduling policy toggle. Service availability can be Bookable when staff are free, Not bookable, or Custom hours, and you can add date-range overrides.
Assign staff#
- Select the staff who deliver the service.
- Assign any of your selected staff for an appointment books one person. Multiple staff books everyone assigned, and all must be free.
- Allow customers to choose a particular staff for booking shows a staff picker. When it's off, Bookings assigns someone for the customer. The round-robin guide explains how that assignment behaves.
Custom fields#
Customer email, phone, address and notes are built in. They can't be deleted, but you can make them optional. Keep Customer email required: without it, the customer gets no confirmation or Teams link. Add your own questions here. The custom questions guide covers what to ask.
Notifications#
Set the confirmation, reminders and follow-ups, choose who receives each (customers, staff or both), and add text to Additional information for Email Confirmation. If you have Teams Premium, you can also turn on Enable text message notifications for your customer. The no-shows guide suggests a reminder schedule.
Finally, check Publishing options. Turn it off for services that staff should book internally but customers shouldn't see. Select Save changes.
Step 5: Booking page settings#
Open Booking page for the page-wide settings.
- Access control. Require a Microsoft 365 account from my organization to book limits the page to signed-in colleagues. Leave it off for customer-facing pages, because it also breaks website embeds. Disable direct search engine indexing of booking page keeps the page out of Google and Bing results; turn it on if people should only reach the page through your own links. See sign-in required.
- Customer data usage consent. Adds a checkbox with your own wording that customers must tick to book. Put links to your policies in Business information, since the consent text itself doesn't support rich formatting.
- Scheduling policy.
- Time increments from 5 minutes to 4 hours, or custom. This sets the spacing between slots, not a clock grid (see the test notes below).
- Lead time in hours, the minimum notice to book or cancel.
- Maximum days in advance. The FAQ requires at least 24 hours between the minimum and maximum.
- Email notifications and Staff: page-wide defaults, similar to the per-service options.
- Availability: date ranges for holidays or extended hours. For one-off closures, you can also use Add time off on the Calendar.
- Customize your page: colour theme and whether to show the logo. Branding guide.
- Region and time zone settings: set the business time zone and the page language. Visitors see slots in their own time zone unless you tick Always show time slots in business time zone. Staff can't have their own time zones. See wrong time zone.
- Select Save and publish. Microsoft Learn describes Save and publish and Unpublish here, but at least one 2026 user reported not seeing these buttons; if yours looks different, open the page link in a private window to confirm whether it is live.
What we saw when testing (September 2026)#
We captured the public shared booking page and the calls it makes (13 live captures, 913 days and 7,924 slots, in several time zones). Two results change how you should set the scheduling policy:
- Start times follow free time, not the clock. Slots start where a free block starts. A block that begins at 6:40 gives 6:40, 7:10 and so on, and the page keeps a slot only if it is at least one increment after the last one it kept, which is why a list can read 5:00, 5:30, 6:30 when 6:00 to 6:30 was busy. A pre-buffer shifts the first start too. If you want tidy times, keep business hours, staff hours and staff calendar events on round times, and make buffers and increments fit the duration. Why Bookings shows odd start times has the details.
- The earliest slot is lead time plus about 3 minutes. The page adds a minute to the lead time and then drops anything within 2 more minutes. With a 24-hour lead time, a customer at 10:00 on Monday sees nothing before about 10:03 on Tuesday. If lead time is unset, the page falls back to 1 day, 365 days in advance and 30-minute increments. See minimum lead time in Bookings.
Step 6: Test before you share#
Open the page link in a private browser window (so you're not signed in) and book at least two test appointments.
- Slots respect business hours, staff hours, buffers and lead time.
- A slot that clashes with a test meeting in a staff member's Outlook calendar is not offered.
- Times show correctly for a visitor in another time zone.
- The confirmation email arrives in the inbox, not junk, and shows the right sender, reply-to and additional text. If it lands in junk, see emails going to spam.
- Online services include a working Teams link.
- The appointment appears on the staff member's Outlook calendar and in the Bookings Calendar.
- Rescheduling and cancelling from the email work the way you want.
- Reminders arrive at the times you set (test with a booking close to now).
Delete the test appointments from the Bookings Calendar afterwards.
Step 7: Share or embed the page#
On Booking page, the sharing options are Copy link, Share on social media, Share via email and Embed in your website (the link plus an iframe). Each service also has its own link for campaigns that promote one service. The embed answer covers the iframe and its sizing issues.
Common problems after launch#
- "No available times." Usually caused by staff hours outside business hours, calendar free/busy not shared, a lead time longer than you intended, or a service with no staff assigned. See no available times.
- A colleague can't see the page in Bookings. The FAQ says the page is available to people added as staff in the Administrator or Viewer role, so check their role.
- Settings don't seem to apply. Microsoft says some business settings can take up to 10 minutes, and tenant-level admin settings up to four hours.
Doing this with BookingsXP#
If you want the page on your website without the fixed-height iframe, BookingsXP embeds your public shared booking page link in a widget that resizes to its content. It uses the services, staff, hours and rules you just set up, and bookings still land in Microsoft Bookings with the usual confirmation email. You don't need a Microsoft sign-in or admin consent:
<script src="https://bookingsxp.com/embed/v1.js" async></script>
<bookingsxp-widget booking-url="https://outlook.office.com/book/SalesDemos@contoso.com/"></bookingsxp-widget>See the embed features or try it with your page link. BookingsXP is independent and not affiliated with or endorsed by Microsoft.
Questions people also ask
Sources
- Microsoft Learn: Enter business information (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Add staff (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Define service offerings (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Service types (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Set scheduling policies (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Customize booking page (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Custom domain support (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Granular controls shared bookings (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Accept membership shared booking page (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Share shared bookings page (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Bookings faq (opens in a new tab) · learn.microsoft.com
- Microsoft Learn: Best practices shared bookings (opens in a new tab) · learn.microsoft.com