Managing Multiple Locations in Google My Business Without Losing Your Mind
Setting Expectations for Hierarchical Access
Right out of the gate: you can’t have it both ways. Google My Business (or technically, Google Business Profile now—yes, they rebranded and the docs are still inconsistent about it) does not support true multi-level role delegation the way, say, Workspace Admin does. You’ve got: primary owner, owner, and manager. That’s it. Not a branch manager, not a location-limited admin, not a regional lead. If you were expecting a polished enterprise-level RBAC system… nope.
I ran into this when onboarding a franchise owner with nine locations and a marketing agency. What we thought would be clean (assigning owners to specific locations) turned into a chain of back-and-forths because permissions are per business group or per profile, not scoped by geography or custom-defined boundaries.
“Can I give someone access to just one city’s listings?” is a weekly ask. The answer is: only if each listing is its own profile and you grant access per profile — which gets feral at scale.
How Location Groups Work (and Don’t)
Location groups (formerly business accounts) are kinda the duct tape of Google Business management. They’re not profiles, but containers for profiles—a means to separate access and avoid giving someone edit access to your whole account. So naturally, they help but don’t solve multi-location chaos.
Each location group needs its own access invites, and each location group has to have listings assigned into it one-by-one. Pulled a stupid mistake here once — moved a listing into a group without checking ownership chain, and suddenly it looked like someone nuked the business on Maps. It hadn’t disappeared, access just moved and broke all the integrations.
Oh, and here’s a wild undocumented behavior: if you bulk upload locations via CSV and don’t assign them to a location group in that process, they just land in limbo. Visible in your dashboard, tied to your account, but not manageable under any group’s access control. You’ll have to re-assign them manually.
Bulk Verification Unlocks … And Locks
If you’ve got 10+ locations under the same brand and business entity, you might be eligible for bulk verification. Used to be a contact form buried in support; now it’s somewhat easier, but the approval process still feels like it’s handled by interns with a spreadsheet and four browser tabs open.
But here’s the bug: once you’re bulk verified, individual profile verification becomes a mess. If one or two fall out of status (suspension, data mismatch), Google will sometimes force a physical postcard re-verification, even though the profile is part of an active bulk-verif account. Completely defeats the point.
Verified a whole batch of centers last year, two of them needed updates to opening hours, and suddenly we got the red banner: “Verification suspended. Confirm your business location.” Resubmitted docs — no dice. We had to call Google Support (via a callback form, since no number exists anymore, because of course), and even they weren’t sure why it didn’t inherit the bulk verification anymore. Agent’s best advice: “Just make a new profile.”
Naming Conventions That Don’t Break Display
This one bit me hard. Google has guidelines for business names — they hate location descriptors in the title. If your biz is just “Cupwear”, and you name your listings Cupwear - Brooklyn
, Cupwear - Astoria
, you could get flagged even if the business is legit. Especially if support gets annoyed or you trigger a mass edit.
But here’s the kick: Google’s display engine often truncates or interprets characters like hyphens and pipes differently across devices. In mobile results, you might see only the location name appear, especially if the business name matches another chain.
Some actual working patterns:
- Use the location descriptor in the Address or Description field, not the Business Name
- If you must vary names, use
Cupwear (Brooklyn, NY)
— parentheses are treated more gracefully - Do not use ALL CAPS for any part of the name unless it’s in brand style guide *and* already verified
- Alphabetic overlap between locations triggers merge suggestions — avoid overly similar descriptors like “West End” vs. “Westend”
I once had two clinics that were named identically except with dashes vs. spaces. Google auto-merged them into one location on Map views. No warning. Users started booking appointments in the wrong borough.
Handling Reviews and Messaging Per Location
You’d assume, when managing 20+ Google profiles, that reviews would all flow into some central moderation inbox. Nope. Each listing gets its own feed. Messages too. So unless you’re using a third-party integration with something like Podium or Birdeye, your team will be switching tabs constantly — reviewing each location manually.
One workaround we found: Chrome profiles, one for each client. Installed the GBP Chrome extension (still flaky) and then used pinned tab groups per region. Not ideal, but it made context switching faster. Still, Google’s dashboard doesn’t allow bulk response, even though API access does. Total mismatch.
Also, messages timeout silently if no one replies within 24 hours. There’s no strong alerting system. The notification bell on the dashboard should light up red — it doesn’t. It just quietly moves late messages into an “expired” state. Found this out when a client asked why their chat reply rate dropped into the gutter without warning. Thanks a lot, Google.
When Duplicate Listings Hijack Real Ones
This is one of the more infuriating things. You claim, verify, and optimize a location. Then someone else — often a well-meaning customer or competing franchisee — creates a duplicate with a slightly off address or phone. Maybe they matched the GPS pin drop instead of the postal address. Suddenly, both show up in Maps. Your verified one starts bleeding views. Sometimes it disappears entirely for discovery searches.
What’s worse: Google’s own internal AI doesn’t favor the “verified” one every time. It’ll rank whichever listing seems more “complete.” So the duplicate, if it has more reviews and slightly better photo metadata, can outrank your sanctioned profile. Completely maddening.
I had two pizza shops run into this. They shared a strip mall address, unit B vs. unit C. Google fused them after a Maps edit from a Local Guide. Had to fight it for weeks. Duplicates cannot be merged manually—you have to request it, and hope the moderator doesn’t just suspend both.
API: Not As Powerful As You Think
Yes, there’s a Google Business Profile API. No, it does not expose every feature the dashboard gives you. For example, graphical post creation still requires media upload to a painfully limited bucket. The messaging endpoint is only in beta and not reliable. Some syncs have limits like 1000 calls per project per day, unless you’re part of their Partner Program (good luck getting in).
And the biggest gotcha: API access is for server-to-server workflows. Which means you can’t just give an agency client a nice, slick GUI on top of it without needing full OAuth and ridiculous scopes. I tried hacking together an internal tool once — simple dashboard to edit hours across 12 locations at once. Took longer to configure the API permissions than to write the script.
Aha moment here: the accounts.list
call excludes sub-accounts unless you specifically request each manager’s visibility via impersonation. And there’s no way to discover orphaned profiles from your authenticated token — you must already know they exist.
Weird Location Suspension Triggers
If you change name + address + category together in one go, you get suspended. Happens like clockwork. Doesn’t matter if you’re verified. When I ran a multi-location deployment for a spa chain rebranding last year, I queued all the profile edits in a batch. Boom: suspended for “quality issues.” Support finally told us that 3 simultaneous field changes triggers their “location spike” filter — even if they’re legitimate.
Here’s the workaround: split your edits across 2–3 days. Change name one day, then address or hours the next. Ugly, but it works. Same applies if you’re updating categories — those alone set off moderation if you move from, say, “Beauty Salon” to “Medical Spa” — which apparently gets flagged internally as a licensing category shift.
Also, don’t bulk update hours across locations via the dashboard. Sounds convenient, but it can trigger auto-suspension if more than 10 profiles update at once in a short time span. Why? Some anti-bot behavior, supposedly. Nothing’s documented. Only heard it from two GBP support reps, and one of them called it an “automated safety interlock,” which… okay?