Skip to content

Google Business Profile

Duplicate Listings & NAP Cleanup

Platform
Google Business Profile
Owner
GBP Specialist
Assignee
Edward
Supports
CSM
Needs review — This SOP contains our content but has not been verified by Nick. Treat as a working draft until marked Live.

Version: 1.0 Last Updated: May 5, 2026 Owner: GBP Specialist (technical work) + CSM (client communication) Status: Active



Some clients arrive on Tekton already operating under a new name after a recent rebrand, but their old business name is still attached to a live Google Business Profile, a Facebook page, the website’s social URLs, and dozens of citations. Two listings at the same address fragment local rankings, split reviews across identities, and confuse AI search surfaces (ChatGPT, Perplexity, Google AI Overviews) about which entity is canonical.

This SOP covers the cleanup process for existing clients whose duplicate listings were not caught during onboarding. New clients should have their prior names captured by the onboarding form (hasPriorNames / priorBusinessNames); this SOP runs against existing clients to backfill that work.

Run this SOP whenever Tekton can’t be confident a client has only one identity in the local search graph. In order of likelihood:

#TriggerWho catches itAuto / manual
1Onboarding form returned hasPriorNames: yes for a new clientGBP Specialist (during onboarding)Auto-flagged via clients.json priorNames[]
2Monthly NAP integrity scan flags a duplicate_gbp, stale_facebook_*, or stale_citation findingGBP Manager (Telegram ping on severity: high)Auto (when NAP Integrity Researcher agent ships)
3CSM monthly call surfaces a rebrand, DBA, or “we used to be ___“CSM (Kyle)Manual — Kyle creates the cleanup task
4Heatmap shows fragmentation: same business in two grid cells with different place IDs, or rankings stall despite GBP/content workGBP Specialist (monthly heatmap review)Manual
5BrightLocal audit shows a directory listing under a different name than canonicalGBP Specialist (monthly citation review)Manual
6Client requests a Facebook page rename or URL updateCSM (Kyle)Manual — implicit signal a rebrand happened
7Domain ↔ business name mismatch (e.g., wilsonlawncare.com for “3R Outdoor”)Website crawl flags it on intakeAuto — surfaces in onboarding pre-flight

Not applicable when: the business has always operated under one name with no DBAs, the onboarding form returned hasPriorNames: no, and the most recent NAP integrity scan has zero duplicate_* or stale_* findings. In that state the agent writes a clean scan to the Brain and this SOP stays dormant until a new trigger fires.

StepOwner
Discovery scan + duplicate detectionGBP Specialist (Edward), with Claude assist
Decision on consolidation path (merge vs. close vs. keep-both)Nick — escalate before any action
GBP merge / close / claim executionGBP Specialist
Client communication for partner accessCSM (Kyle)
Live partner-invite kickoff callCSM (Kyle) — see Live Partner Invite Flow
Facebook page rename + URL updateGBP Specialist (after partner access granted)
Citation cleanup across directoriesGBP Specialist via BrightLocal
Re-scan + sign-offGBP Specialist

Escalation path: GBP Specialist → CSM → Nick


1. Discovery — pull every listing tied to the client

Section titled “1. Discovery — pull every listing tied to the client”

Goal: produce a complete inventory of Google listings, Facebook pages, and citations associated with the client’s current name OR any prior name.

  1. Confirm the prior name(s). Check the client’s onboarding form first (priorBusinessNames field). If empty, ask the CSM to confirm with the client on the next touchpoint. Do not guess — incorrect prior names produce false-positive duplicates.
  2. Google Maps search for the canonical name AND each prior name within the client’s service area. For every match, record: place ID, business name, address, phone, website, primary category, business status (OPERATIONAL / CLOSED_PERMANENTLY / MOVED), rating, review count.
  3. Reverse-lookup the canonical address on Google Maps — capture any listing pointing at that address regardless of name.
  4. Reverse-lookup the canonical phone number — captures listings Google auto-created from review submissions.
  5. Facebook search for the canonical name and each prior name. Capture page URL, vanity URL, page name, address, last post date.
  6. Citation scan in BrightLocal — add the prior names as known aliases to the client’s BrightLocal profile, then re-run the audit. Pull every directory where the prior name still surfaces.

Output: a single “NAP Integrity” Google Doc in the client’s Drive folder (or, when the agent is live, the auto-generated clients/<slug>/gbp/nap-integrity.json).

For every listing found, assign a verdict:

VerdictMeaningAction
canonicalThe right listing under the right nameLeave alone
duplicate to consolidateSame business, second listingPlan a merge or closure
stale nameListing exists, but displays the prior nameUpdate the displayed name
stale URLListing’s URL slug references the prior nameUpdate the URL slug
closed correctlyOld listing already closed by GoogleConfirm status, no action
unrelatedDifferent business that happens to matchDocument and ignore
ambiguousCannot tell from public dataEscalate to Nick before acting

3. Decide the consolidation path — gated on Nick

Section titled “3. Decide the consolidation path — gated on Nick”

Before acting on any GBP duplicate, get Nick’s call on which path to take. The three options:

  • Merge — request Google merge the duplicate into the canonical listing. Preserves reviews from both. Available only when both listings are claimed and Google’s merge UI offers it.
  • Mark as moved — set the duplicate’s status to MOVED, pointing at the canonical place ID. Cleanest for cases where the business genuinely changed locations or rebranded with a relocation.
  • Mark as permanently closed — close the duplicate. Loses its reviews, but eliminates the fragmentation. Use when the duplicate has minimal reviews and merging is unavailable.

Document the decision in the NAP Integrity doc with a one-line rationale.

GBP Specialist runs the chosen action through Google Business Profile Manager:

  1. Claim the duplicate listing if Tekton does not already manage it (may require client owner verification)
  2. Execute the merge / move / close per Nick’s decision
  3. Wait 7–14 days for Google to reflect the change
  4. Confirm via fresh search — the duplicate should no longer appear in Maps for the canonical name or address

Most rebrand cleanups also require updating the client’s Facebook page (rename, URL change). Tekton does not collect passwords. Instead, the CSM runs the partner invite live on a kickoff or follow-up call so the client accepts the invite in real time.

Pre-call:

  • Confirm the client’s onboarding form has canGrantSocialAccess: yes. If not, request it explicitly before scheduling the call.
  • Have Kyle’s Meta Business Suite open and pre-loaded with the agency’s business account.
  • Have the client’s Facebook page URL ready.

On the call (Kyle drives):

  1. Open Meta Business Suite → Settings → People and assets → Pages → Add Page → Request access to a Page.
  2. Paste the client’s Facebook page URL.
  3. Select the access level: Partial access — Tasks: Manage page, Create content, Messages, Community activity, Ads. Do not request full admin unless the client explicitly grants it.
  4. Submit the request. Meta sends a notification to the page admin (the client) within seconds.
  5. Ask the client to open Facebook on their phone — they will see a notification “Tekton Growth has requested access to .” Walk them through tapping “Approve.”
  6. Confirm in Meta Business Suite that the page now shows in the agency’s connected assets.

After the call:

  • Update the client’s onboarding record to reflect that partner access is now active.
  • Add a CSM note: “FB partner access granted on .”
  • Notify the GBP Specialist to begin the FB rename + URL update.

If the client cannot complete the invite during the call (admin is a different person, technical issue, etc.), schedule a 15-minute follow-up specifically for this — do not leave the page un-accessed for more than 7 days. An open invite request times out.

Once partner access is active:

  1. Update the page name from the prior name to the canonical name (Meta requires admin approval for name changes — usually 24–72 hours)
  2. Update the vanity URL (facebook.com/oldnamefacebook.com/newname) — this is one-time and irreversible
  3. Update the About section (description, services, hours)
  4. Update the cover photo and profile photo if they reference the old brand
  5. Search for any pinned posts referencing the old name — update or remove

For every directory where the prior name still surfaces:

  1. Submit a name change request through the directory’s edit interface, or via BrightLocal’s bulk-update tools where supported
  2. For data aggregators (Data Axle, Localeze, Foursquare), submit through the official update form — these feed many downstream directories
  3. For directories Tekton cannot edit directly, generate a “client action” task in TaskTracker with the directory URL and the exact change needed
  4. Document every submission with date and expected propagation time in the NAP Integrity doc

Wait 14 days, then re-run the discovery scan from Step 1. Compare against the original inventory. Findings still flagged as duplicate to consolidate or stale name after 14 days indicate either:

  • The cleanup action did not propagate (resubmit)
  • The directory does not honor name change requests (escalate to Nick — may require a different approach)
  • A new duplicate has appeared (Google sometimes auto-creates listings from review submissions — re-run cleanup)

Once the inventory shows only canonical and closed correctly verdicts, mark the task complete in TaskTracker and update the client’s priorNames and socialAccessGranted fields in clients.json so the Brain reflects current state.

  • One Google Business Profile per client per service area, all under the canonical name
  • All Facebook / Instagram / LinkedIn / TikTok / YouTube profiles display the canonical name and have URLs that match
  • Tekton has partner / admin access to every social profile the client agreed to grant
  • Every directory listing flagged in BrightLocal as inconsistent is either fixed or has a documented client-action task open
  • The client’s priorNames[] array in clients.json reflects every prior name discovered (so future scans skip the rediscovery step)
  • A fresh NAP Integrity scan returns zero duplicate to consolidate or stale name findings