Most booking software gets multi-location wrong by treating the site as the thing that's being booked and the practitioner as the detail attached to it. For the customer it's almost always the other way around. Once you recognise it, you see it everywhere and it's one of the core problems covered in how I think about digital operations for multi-location businesses.

Contents
The customer is choosing a person, not an address
A customer books a specific artist, clinician, barber or stylist. The location is just where that appointment happens to take place; it's not usually the primary decision. A system built around location first asks the customer a question they're not equipped to answer yet, since most people don't know which site to pick until they've already decided who they want to see.
Get the order right, and the customer's journey feels natural: browsing by style or specialism, landing on a person and booking a slot with them wherever they happen to be based. Get it back to front, and every step feels like an obstacle: choosing a site with no idea why, then hoping the practitioner you wanted happens to work there.
Why most systems get this the wrong way round
The reason is usually historical rather than deliberate. Most booking platforms were designed around their typical customer (usually a business with one site), and the location field was bolted on afterwards instead of built into the foundation. This means that a location-first assumption has been baked deep into how the system works, making it impossible to unpick no matter how clever the configuration.
I've watched businesses spend real money trying to wrestle their way out of this by adding custom fields, building workarounds, hiring someone to manage the exceptions by hand, when the real problem was a foundational one no amount of configuration could fix. It's always worth checking this before signing up to a platform, since migrating away from the wrong system once data and habits are already built around it is a far bigger job than choosing the correct one first time.
Guest and travelling practitioners break it further
Multi-site businesses often have people working across more than one location on a rotating or occasional basis, and a system built purely around fixed, site-based profiles struggles to represent that. What's needed is the ability to open an availability window for a guest or travelling practitioner without creating a permanent profile somewhere they only visit occasionally. Where that flexibility doesn't exist, I've watched staff build a spreadsheet running alongside the real system to track the exceptions it can't handle, which defeats the point of having a system in the first place and becomes a source of truth nobody else can see or work from.
What it costs to get wrong
Beyond the spreadsheet workaround, a location-first system tends to under-report demand for popular practitioners, since a customer who can't find who they want at the site the system pointed them to often just leaves instead of searching further. That looks like a lead problem from the outside. It's a structural one, and doubling advertising spend into a booking system built the wrong way round mostly just produces more frustrated customers, not more completed bookings.
What a successful booking system looks like
A booking system built the right way round lets a customer choose a practitioner or a style first and arrive at the location as a natural consequence of that choice, rather than as a gate they have to pass through before they can even see who's available. It's the same shift covered in what breaks at a second location, and it gets more valuable, not less, the more locations and the more practitioners are added on top of it. Our page on multi-location CRM and booking covers how we set this up across several sites.

