Duplicate Google Business Profiles are rarely a small admin problem for a multi-location service brand.
They usually mean two public sources are claiming part of the same local identity. One profile may have the reviews. Another may have the current phone number. A third-party directory may point to the old address. The website may link to a branch page that matches none of them.
That matters because local AI search depends on source clarity. Google Business Profile is often the public anchor for a branch, but it is stronger when the profile, location page, reviews, citations, and structured data all describe the same real-world business.
Important
Treat duplicate profile cleanup as source governance. The job is to decide which public profile represents the real location, then make every supporting source agree.
Is Google Business Profile enough for AI visibility? covers where the profile sits in the full source stack. This article stays on one problem inside it: the duplicate-profile cleanup workflow.

The short answer
Label what each profile represents before editing anything: current branch, moved, closed, duplicate, practitioner, department, or unclaimed. Fix ownership next, because a brand cannot clean up a profile it does not control. Then resolve the duplicate through Google's own workflows, and only after Google settles the profile should the location page, citations, structured data, and call routing be updated to match the survivor. Finish by retesting priority markets instead of assuming the cleanup worked.
Why duplicate profiles create source conflict
Google's current AI Search guidance says there are no special technical requirements for AI Overviews or AI Mode beyond normal Google Search eligibility, crawlability, and useful content. For a local operator, that means the old search fundamentals still matter: accurate business details, crawlable pages, and sources that help people make a decision.
A duplicate Business Profile works against that clarity. A customer may see one profile with a closed label and another with fresh reviews, while behind the scenes a franchise support team owns one record and a local manager owns the other. Service-area teams collect a different version of the problem: an old address-based profile alongside the current hidden-address one, or an acquired company still live in the same market as the new parent brand after a rebrand.
AI search should not be described as a magic ranking layer here. The practical issue is simpler. If public sources disagree about which branch exists, which phone number routes correctly, which services are offered, or where the customer should book, the brand has created unnecessary ambiguity.
How should home service rollups handle rebrands for AI search? covers the acquisition version of this problem. Duplicate profiles are the same source-migration issue at the profile level.
Decide what each profile represents before touching it
Do not start by deleting whatever looks old. Start by labeling the profile's real-world status.
A profile may represent the current branch, a moved location, a closed branch, a duplicate listing, a previous owner, a practitioner, a department, a service-area team, or a profile that somebody else already claimed. Those cases need different actions. Google Business Profile guidelines are built around real-world representation, not marketing convenience.
A 90-location HVAC brand can find several legitimate-looking records in one market: the corporate office, a service-area branch, a legacy acquired company, a showroom, and an old address from a founder's house. Med spa franchises add the practitioner wrinkle, where a studio profile and an injector's profile sit near each other. A garage door operator may simply have moved its service base years ago and never cleaned up the old listing.
The cleanup decision should answer one question: which profile should a customer, Google, and the website treat as the active local source for this business?
If the answer is unclear, involve operations before making profile edits. Marketing may know the dashboard. Operations knows whether the location has signage, staff, dispatch coverage, customer visits, phone routing, and service-area rules.
Fix ownership before cleanup
Many duplicate-profile problems are really ownership problems.
Google has a request-ownership process for Business Profiles that are already claimed. That matters for rollups, franchises, and local service groups because an old agency, seller, franchisee, former employee, or regional manager may still control a profile that represents the current business.
If the brand does not control the profile, it cannot reliably update the phone number, website link, hours, services, photos, or service-area settings. It also cannot confidently coordinate the cleanup with location pages and citations.
For multi-location brands, build the inventory around ownership first. Mark which profiles are owned by the brand, which are owned by a local operator, which require an ownership request, and which appear to be duplicates that Google needs to review. Keep the website work on hold for uncertain profiles. Updating the website to point at a profile the brand does not control can make the public source conflict worse.
Should location finder pages be indexable for AI search? explains why the branch directory and profile targets need to move together. A locator that links to the wrong profile creates a source-quality issue, even when the page still looks usable to a customer.
Service-area and franchise edge cases
Service-area businesses create the hardest duplicate-profile calls because the public address is not always the customer-facing source.
Google's service-area guidance says businesses that visit or deliver to customers can define service areas and should remove the public address when customers are not served there. It also says service areas should be specific and accurate. For service-area trades, that means an old visible-address profile may be wrong even if the team still serves the market.
The fix is not to widen the claim. If one branch serves Dallas and Fort Worth but another only serves North Dallas, each public source should say so. The Google Business Profile, location page, service-area page, citations, and LocalBusiness structured data should describe the real coverage.
Franchise systems have a different risk. A franchisee may create a separate profile with a slightly different name, phone number, or website URL. The profile may collect reviews that should belong to the location, or it may compete with the franchisor's intended listing. The cleanup needs to respect Google policy and the franchise agreement, but the public goal is the same: one customer-facing source for one real location.
Once the duplicate decision is made, show service-area coverage for AI search picks up the coverage-facts work.
Make the website and schema point to the surviving source
After Google resolves the profile decision, update the owned sources.
The location page should link to the surviving profile when a profile link is useful for customers. The page should use the same business name, address or service-area explanation, phone path, hours, services, and booking route. If the old profile had strong review history and Google consolidated it into the surviving profile, the page can continue to reference current review proof without explaining the admin history to customers.
Structured data comes after visible truth. Google's local business structured data guidance supports marking up business details such as address, phone, opening hours, and business identifiers when they are visible and accurate. Schema.org's LocalBusiness type can represent the branch, but it should not contradict the page or quietly preserve the old duplicate source.
If the surviving profile points to a generic homepage while the branch page is the better local source, fix the profile website URL and the branch page together. If the duplicate profile had a different phone number, make sure call tracking, citations, and forms route to the same location the profile now represents.
These owned pages are also what AI crawlers read. OpenAI publishes the crawlers and user agents it uses to fetch public web pages for ChatGPT search surfaces, so the cleaned-up location page is the version of the branch those systems retrieve.
What should location pages include for AI search? covers the page-level standard. Here the page has one extra job: once there is one surviving profile, every owned source should reinforce it.
A 30-day cleanup workflow
Use a staged cleanup instead of one bulk edit across hundreds of profiles. Treat the day ranges as sequencing, not promises: ownership requests and duplicate reviews run on Google's timeline, so each later phase starts when the profile status is resolved, not when the calendar says so.
- Days 1 to 7: Export every profile URL, owner, claimed state, name, address or service-area status, phone, website URL, primary category, hours, review count, and matched location page. Label each profile as current, moved, closed, duplicate, ownership-needed, practitioner, department, or uncertain.
- Days 8 to 14: Resolve ownership gaps first. Request access where needed, document local operator approvals, and avoid profile edits where the brand does not control the source.
- Days 15 to 21: Submit duplicate or merge requests through Google Business Profile workflows, then update the surviving profile's core facts only after the status is clear.
- Days 22 to 27: Update location pages, profile links, citations, schema, XML sitemap entries, internal links, call tracking, and booking paths to match the surviving profile.
- Days 28 to 30: Retest priority market prompts, standard Google results, profile panels, branch pages, and AI search answers. Record whether the right location appears, which source is cited or linked, and which owner gets the next fix.
This is also a measurement problem. How local service brands should track AI search traffic explains how to separate visibility, citations, referral sessions, and booked demand. Duplicate profile cleanup should be tracked the same way: profile issue, source fixed, branch page updated, prompt retested, demand path verified.
How to measure the cleanup
A tidy dashboard is a weak finish line. The real test happens in public: search the brand name plus the market, then the service plus the market. Inspect the Google Business Profile panel, the location page, the structured data, and the top citations. Then ask the same local service question in the AI search tools that matter to the brand's buyer journey.
Use careful language in reporting. A duplicate-profile cleanup does not prove that ChatGPT, Gemini, Perplexity, or Google AI Mode will recommend the business. It proves the brand removed a public source conflict and made the surviving location easier to verify.
Repeat that public check for every market where a duplicate existed, record which source each tool cited, and assign any remaining mismatch to the owner who controls that source. That log, not the dashboard, is the proof the cleanup held.
Sources
- Google Business Profile Help: Resolve duplicate profiles. Supports the duplicate-profile cleanup and review workflow.
- Google Business Profile Help: Guidelines for representing your business on Google. Supports the real-world representation, chain, name, category, address, and service-area policy discussion.
- Google Business Profile Help: Request ownership of a Business Profile. Supports the ownership-first cleanup step for claimed profiles.
- Google Search Central: AI features and your website. Supports the article's AI Search framing that normal Search eligibility, crawlability, and useful content still matter.
- Google Search Central: Local business structured data. Supports the guidance that structured data should reinforce accurate visible business details.
- OpenAI Platform: Crawlers and user agents. Supports the claim that OpenAI fetches public web pages for ChatGPT search surfaces through documented crawlers.
Dylan Allen-Arnegård is the CEO & Co-Founder of Cheers, the local search platform for multi-location service businesses.