Shared Bookings

Custom questions in Microsoft Bookings

Every Microsoft Bookings form field: built-in customer fields, the two question types, required vs optional, the shared list, limits and where answers go.

Last updated 11 sources

A shared booking page collects two kinds of information: five built-in customer fields (name, email, phone, address and notes) and your own custom questions. Custom questions come in two types only, free text and single choice, and you switch them on per service from one list that every service on the page shares. Answers are stored on the appointment, not on the customer, and come out through the Bookings calendar, the export, Power Automate and Microsoft Graph.

Step-by-step setup is in adding required custom questions, and advice on what to ask and how to word it is in the custom questions best-practices guide. This chapter is the reference: every field, every limit, and where each answer ends up, as of October 2026.

Where the settings are#

SettingWhereScope
Built-in fields and custom questionsServices → edit a service → Custom fieldsPer service
The question list itselfSame panel, Add a questionPer booking page
Consent checkboxBooking page → Customer data usage consentPer booking page
Hide phone, address or notes everywhereMicrosoft 365 admin center → Settings → Org settings → Bookings → Restrict collection of customer dataTenant
Stop people creating questionsSet-OrganizationConfig -BookingsCreationOfCustomQuestionsRestricted $trueTenant

Microsoft says tenant settings can take up to four hours to apply. Custom questions exist only on shared booking pages. Bookings with me (Microsoft now calls it Personal Bookings) has none; see custom questions on Bookings with me.

The built-in customer fields#

FieldOn a new serviceCan be optionalCan be switched offAdmin can hide tenant-wideWatch out for
NameShown, requiredNoNoNoThe page always requires a name
Customer emailShown, required (per the Bookings FAQ)YesThe editor allows itNoThe only address Bookings sends the confirmation, reminders, Teams link and Manage booking button to
Phone numberShownYesYesYes (BookingsPhoneNumberEntryRestricted)SMS notifications need a number
AddressShownYesYesYes (BookingsAddressEntryRestricted)Lands in the export's Customer Address column
NotesShownYesYesYes (BookingsNotesEntryRestricted)The page caps notes at 3,000 characters

Microsoft contradicts itself on switching fields off. The service-setup article calls email, phone, address and notes "non-removable fields" that you can only make optional. The custom-questions article shows phone and notes deselected so customers aren't asked.

What we saw when testing (September 2026)#

The service data the public page loads stores each built-in field at one of three levels: required, optional or hidden. That matches the custom-questions article: deselecting a field hides it rather than making it optional. We read this from the page data; we didn't test the editor itself. The same data has a level for guest email addresses, which lets a customer add other people to the booking. Microsoft doesn't document guests for the shared page, although the export's Cc Attendees column says they can be added from the Teams app.

Never hide the email field and ask for an address in a custom question instead. Bookings treats a custom answer as plain text, so the customer gets no confirmation at all. Customers not receiving emails covers the fix.

Question types#

Graph lists two answer types, text and radioButton. The public page we captured offers the same two and nothing else. There's no checkbox, multi-select, drop-down, date, number or file type, no answer validation, and no conditional logic. The question data has no field that could hold a condition.

You want to askWhat works in Bookings
"Tick all that apply"One single-choice yes/no question per option, or one free-text question
A date, ID or reference numberFree text, with the format in the question ("Policy number, 8 digits")
Agreement to termsCustomer data usage consent, which records when consent was given, or a required single choice with one option, "I agree". See consent and privacy text
Extra questions for some customers onlyA separate service with its own question set
A hint under the questionNot available. Put it in the wording or the service description
A document or photoNot available. Ask by email after booking

Required and optional#

  • Required is set per service, not per question. Graph stores isRequired on the service's link to the question, so one question can be required for "First consultation" and optional for "Follow-up".
  • The page enforces it in the browser. We haven't tested whether the service itself rejects a booking that skips a required answer. In our tests it accepted bookings that the page would have blocked (one in the past, one over a busy block), so an integration that creates bookings through an API shouldn't count on the service to enforce Required.
  • Staff see the questions too. When staff create a booking in the Calendar, the service's questions appear in the form. Microsoft doesn't say whether Required stops staff from saving without an answer.
  • The admin wins. A field hidden with Restrict collection of customer data disappears even on services where it's marked required.

How the shared question list behaves#

  • One list per booking page. Pages don't share questions. To reuse a question on another page you re-create it, or script it with Graph (POST /solutions/bookingBusinesses/{id}/customQuestions). Microsoft offers a clone option when you create a page but doesn't say what it copies, so check the questions on a cloned page.
  • New questions arrive switched off. A question you create on one service shows up on every other service, disabled.
  • Deleting is global. A deleted question disappears from every service. Deselect it on the service instead.
  • Rewording is risky once bookings exist. Graph says each stored answer keeps "the properties of the custom question at the time of creation of the appointment". Expect older bookings to keep the old wording, which splits your data in the export's Custom Fields column.
  • Hidden services keep their questions. A service with Publishing options off can still be booked from the Calendar, and staff see its questions there.

Limits as of October 2026#

LimitValueSource
Question types2: free text, single choiceGraph, our capture
Questions per service or per pageNot published
Length of a question or answerNot published
Notes field3,000 charactersOur capture of the page
Services per booking pageMicrosoft says "should be limited to 50"Service-setup article
Prefill from the page URLNot supported. See prefilling the formQ&A
Hidden or tracking questionNot available. The RefID URL parameter is the only hidden value. See passing UTM parametersOur capture
Bookings with meNo custom questions, no required fieldsOur capture, Q&A

Where the answers show up#

PlaceAnswers there?Detail
Bookings Calendar → open the appointmentYesThe place Microsoft documents for staff
Staff member's Outlook eventNot documentedMicrosoft sends staff to the Bookings calendar to read answers. We haven't verified whether they're copied into the event
Customer's confirmation emailNot documentedDon't tell customers they'll get a copy of their answers
Export (TSV)YesOne Custom Fields column with "all the questions and answers related to a single booking" combined. Administrators only. Splitting it is covered in the Excel reporting guide
Customers listNoThe customer record holds name, email, phones and addresses only
Power Automate (Bookings connector, preview)YesCustomQuestionAnswers for one-to-one bookings, Customers[].Answers for group services
Microsoft GraphYescustomQuestionAnswers on each entry in the appointment's customers collection

In group services each attendee answers separately, so answers are stored per attendee, not per session.

If you parse single-choice answers, code defensively. Graph documents answer for text questions only and types selectedOptions as strings. The Power Automate connector types SelectedOptions as integers. The page we captured sent the chosen option's text in answer and its position, as a string, in selectedOptions. Prefer the option text when it's there, and map positions back to answerOptions when it isn't.

Gotchas#

  • Questions vanished from every service at once. Check the tenant restrictions first. The page reads them and hides phone, address, notes or all custom questions across the organization.
  • Add a question is missing or fails. Ask your admin whether BookingsCreationOfCustomQuestionsRestricted is set.
  • A question doesn't appear on the page. It's in the list but not selected for that service, or the service wasn't saved.
  • Answers are personal data. They sit in the booking mailbox and in every export someone downloads. Collect only what changes the appointment; where Bookings stores data covers access and erasure requests.

Doing this with BookingsXP#

The BookingsXP booking widget shows your Bookings questions on your own site, keeps the ones Bookings marks Required as required, and can add a line of help text under each question, which the Microsoft page can't. It can also prefill name, email, phone and notes for known visitors, and answer one optional text question with the booking's source so it lands in the Custom Fields export column (see analytics). BookingsXP is independent and not affiliated with or endorsed by Microsoft.

More on this topic

Questions people also ask

Sources

  1. Microsoft Learn: Add questions (opens in a new tab) · learn.microsoft.com
  2. Microsoft Learn: Define service offerings (opens in a new tab) · learn.microsoft.com
  3. Microsoft Learn: Granular controls shared bookings (opens in a new tab) · learn.microsoft.com
  4. Microsoft Learn: Bookings faq (opens in a new tab) · learn.microsoft.com
  5. Microsoft Learn: Reporting info (opens in a new tab) · learn.microsoft.com
  6. Microsoft Learn: Set organizationconfig (opens in a new tab) · learn.microsoft.com
  7. Microsoft Learn (opens in a new tab) · learn.microsoft.com
  8. Microsoft Learn (opens in a new tab) · learn.microsoft.com
  9. Microsoft Learn (opens in a new tab) · learn.microsoft.com
  10. Microsoft Learn (opens in a new tab) · learn.microsoft.com
  11. Microsoft Learn (opens in a new tab) · learn.microsoft.com

Edit or question? hello@bookingsxp.com