Guide · Scheduling

Set up Microsoft Bookings for several locations

Last updated 10 min read13 sources

For most businesses with several locations, the better default in Microsoft Bookings is one shared booking page per location. Each page gets its own link, address, business hours, time zone and export. One page with a set of services per location works only when every site is in the same time zone, the service list stays short, and many staff move between sites. This guide helps clinics, advisers, salons, training centres and other service businesses choose, set it up, keep staff who work at several sites from being double-booked, and track and report per location. Budget about an hour for the first location, 20 to 30 minutes for each one after it, and time to test.

Two Microsoft Q&A threads show where this goes wrong. In 2026, a business with several brands across 7 locations and more than 20 booking URLs asked how to tell which ads led to completed bookings. In 2023, a team with staff in Japan, California and Slovenia found that bookings landed outside their Tokyo colleague's working day, because one page runs on one time zone.

Before you start#

For each location, write down:

  • The address, phone number and opening hours.
  • Its time zone.
  • The services it offers, and their durations.
  • Which staff work there and on which days, marking anyone who works at more than one site.
  • Who should manage it (the page's Administrator) and who only needs to see bookings.

Check with your Microsoft 365 admin that you're allowed to create shared booking pages and which email domain and naming policy they'll get. The admin checklist covers those controls. The page link comes from the booking mailbox address and can't be changed later from inside Bookings (see changing the page URL), so agree the names first.

Choose the structure#

One page per locationOne page, services per location
Public linkOne per location, plus a link per serviceOne page, plus a link per service
Time zoneSet per page, so each site can differOne time zone for every site
Address and opening hoursBusiness information per pageOne address on the page. Each site's address goes in its services' Location field, and its hours in service custom hours
Staff who work at several sitesAdded to each page. Only calendar sync stops double bookings between pagesOne staff list. The page itself prevents clashes
What customers seeOnly that site's servicesEvery site's services unless you link to a single service
Export and reportingOne export per page, then combineOne export. Filter by Service or Location column
Customer listSeparate per pageOne list
Staff limit100 per page100 in total
Admin effortEach page configured and maintained separately. Cloning helpsOne set of settings, but many near-duplicate services

As of September 2026, the Bookings service documentation says a page should have no more than 50 services. Four sites with eight services each is 32 on one page, which is manageable. Six sites with twelve services is 72, which isn't.

Pick one page per location if the sites are in different time zones, have different opening hours, keep mostly separate staff, or are run by different managers. Pick one page if the sites are in one time zone and a lot of staff move between them from day to day.

Set up one page per location#

Step 1: Build the first location completely#

  1. In Bookings, under Shared booking pages, select Create booking page → Create from scratch.
  2. Use a name that sorts well and works in a URL, such as "BrightwaterLeeds". The business name becomes the mailbox address and the link.
  3. In Business information, enter the site's address, phone, website and privacy links, and Business hours. Microsoft restricts all bookings to these hours.
  4. On Booking page → Region and time zone settings, set the site's time zone and language. For in-person services, tick Always show time slots in business time zone so a visitor browsing from another zone sees the local time they have to turn up.
  5. Add services and staff, then Save and publish. The shared page set-up guide covers each screen.

Step 2: Clone it for the other locations#

Create booking page also offers to clone an existing page. Clone the finished page, then open every section and change what's site-specific: name, address, phone, hours, time zone, staff and service locations. Microsoft doesn't list exactly what a clone copies, so check each section rather than assuming.

Step 3: Put the address where customers will see it#

In each service's Basic details, fill in Location with the full street address and any arrival note ("Second floor, entrance on Park Row"). Microsoft prints this field in confirmation and reminder emails and on the calendar event. The page's own address is shown on the booking page. For online appointments at any site, turn on Add online meeting and write "Microsoft Teams" in Location. Customers can't choose between in person and online inside one service; see letting customers choose the location.

Step 4: Set up staff who work at several sites#

For anyone on more than one page:

  1. Add them to Staff on each page.
  2. On every page, tick Events on Microsoft 365 calendar affect availability. It's on by default, but check it. Each page then sees bookings from the other pages as busy time on the person's Outlook calendar.
  3. Make sure they share their calendar with the organization as Can view when I'm busy in Outlook on the web.
  4. Clear Use business hours and give them custom hours on each page that match the days they're at that site. The Microsoft example is a staff member who's only on site Tuesdays and Wednesdays.
  5. Where people travel between sites on the same day, add an after buffer to the services. Microsoft suggests buffers for time to travel to another location.

Each page and each service has its own link (see direct links to a service). On your website, point each location's "Book" button at its page. For campaigns, add a RefID so the source reaches the booking export, for example ?RefID=gads_leeds_spring. Only letters, numbers, underscores and hyphens are allowed. UTM parameters on the booking link itself have broken pages, so read passing UTM parameters into Bookings before adding them.

Step 6: Build a combined report#

Each page exports on its own: open the page, go to the Shared Bookings home page, select Export and pick a date range. The reporting doc on Microsoft Learn says each file covers four months, while the FAQ says 120 days, and only the Administrator role can export. For a monthly all-sites report:

  1. Export each page for the same date range.
  2. In Excel, load each file with Power Query and add a column with the location name.
  3. Append the queries into one table and pivot by location, service, staff and Tracking data.

The steps are in reporting on Bookings in Excel. For something automated, the Microsoft Graph API can read appointments from every page. The Power Automate connector works per booking mailbox, allows five flows per mailbox and only lets that page's Bookings admins create flows, so it adds up quickly with 20 pages. See Bookings reports and dashboards.

Set up one page with location-specific services#

  1. Name services so the list reads by site, for example "Physio assessment – Leeds" and "Physio assessment – York".
  2. Put each site's address in the service's Location.
  3. On Assign staff, pick only the people who work at that site.
  4. In Availability options, turn off Default scheduling policy and use Custom hours so each service is bookable only when its site is open. Custom hours are a weekly schedule, and you can add date ranges for closures.
  5. On each location's web page, link to that site's service links rather than the whole page.
  6. Set the business time zone once. If you have staff in another zone, convert their hours into the business zone. In the 2023 thread, setting 2:00 to 10:00 (UTC+1) gave a Tokyo colleague 9:00 to 5:00 local time. Hours that cross midnight in the business zone give an error, which is a good sign you need a second page.

Staff at several sites: double bookings#

On one page, the FAQ says that if several people try to book the same time, only one succeeds. Between pages, the second page only knows about the first booking once it's on the staff member's calendar as busy time. In a 2021 thread, a Microsoft moderator tested two pages with the same staff member and couldn't double-book them once calendar sync was on. The person asking reproduced a double booking anyway, by submitting on both pages within seconds of each other. The detail is in Outlook events and availability.

Real customers rarely book the same person at the same minute on two pages. It's a risk for staff who are in high demand, though. For them, either keep all their services on one page, or check their Outlook calendar for overlaps each morning.

What we saw when testing (September 2026)#

We captured the public booking page and the calls it makes in 13 live captures across several time zones.

  • Availability arrives with the calendar already applied. The server returns each staff member's free time with working hours, Outlook busy time, existing bookings and service windows folded in. That's why a booking on one location's page, once it's on the person's calendar, removes the slot from the other page.
  • Time zones. The page shows times in the visitor's zone unless Always show time slots in business time zone is ticked, and the booking carries the customer's time zone.
  • RefID reaches the booking, not the staff. The page stores RefID on the appointment and it survived a reschedule. It didn't appear in the calendar event the owner receives, so staff at a location won't see the campaign. You get it from the export.

Test each location#

  • Each page's link opens in a private window with the right name, address and time zone.
  • A test booking's confirmation email and calendar event show the right site address.
  • A staff member on two pages, booked on page A, disappears from that slot on page B after a refresh.
  • Opening hours differ correctly between sites, including a closure date.
  • A RefID link books successfully and the value appears in that page's export.

Common problems#

  • Bookings arrive outside a site's hours. Staff hours or service custom hours are in the wrong time zone. Everything on a page uses its business time zone. See wrong time zone.
  • A shared staff member is double-booked. Calendar sync is off on one of the pages, or they haven't shared free/busy.
  • Customers book the wrong site. Your site's location pages link to the whole booking page. Link to the location's page or service instead.
  • A new manager can't open their location's page. They need the Administrator or Viewer role on that page.
  • Totals don't match across sites. The exports covered different date ranges, or some rows are group bookings with one row per attendee. Use Booking ID to count them.

Doing this with BookingsXP#

BookingsXP adds one widget per location page on your website, each pointing at that location's Bookings page, so every site keeps its own availability and rules. The dashboard reports the funnel and bookings by source for each widget. The source, campaign and landing page are also written into the booking notes, so the staff at that location see where the customer came from in the Outlook event. On a single page with location services, preselect the site's service and staff with the service and staff attributes:

HTML
<script src="https://bookingsxp.com/embed/v1.js" async></script>
<bookingsxp-widget booking-url="https://outlook.office.com/book/BrightwaterLeeds@contoso.com/"></bookingsxp-widget>

See analytics and attribution and embedding. The Business plan is designed for many widgets; see pricing. BookingsXP is independent and not affiliated with or endorsed by Microsoft.

Questions people also ask

Sources

  1. Microsoft Learn: Track which ads are leading to completed microsoft (opens in a new tab) · learn.microsoft.com
  2. Microsoft Learn: How to set up shared bookings for staff in differe (opens in a new tab) · learn.microsoft.com
  3. Microsoft Learn: Separate bookings sites allow double booking of st (opens in a new tab) · learn.microsoft.com
  4. Microsoft Learn: Microsoft bookings how to use the same customer li (opens in a new tab) · learn.microsoft.com
  5. Microsoft Learn: Bookings faq (opens in a new tab) · learn.microsoft.com
  6. Microsoft Learn: Enter business information (opens in a new tab) · learn.microsoft.com
  7. Microsoft Learn: Customize booking page (opens in a new tab) · learn.microsoft.com
  8. Microsoft Learn: Add staff (opens in a new tab) · learn.microsoft.com
  9. Microsoft Learn: Define service offerings (opens in a new tab) · learn.microsoft.com
  10. Microsoft Learn: Configure service availability (opens in a new tab) · learn.microsoft.com
  11. Microsoft Learn: Reporting info (opens in a new tab) · learn.microsoft.com
  12. Microsoft Learn: Granular controls shared bookings (opens in a new tab) · learn.microsoft.com
  13. Microsoft Learn (opens in a new tab) · learn.microsoft.com