← All articles

Why the Same Business Keeps Showing Up in Your Lead Lists

· 3 min read

Search "plumbers" and "emergency plumber" in the same city and the same business turns up under both, sometimes with a slightly different name, a slightly different address format, and a different photo. Run the same campaign again three months later and it turns up a third time. None of this means your search is broken — it's what happens when the same real-world business has more than one digital footprint, and nobody told your lead list they're the same thing.

What to actually match on

The listing's name is the least reliable thing to match two records on — "Harbor Plumbing LLC" and "Harbor Plumbing" and "Harbor Plumbing Inc." are a human-obvious match and a frustrating one to catch programmatically, because small formatting differences, abbreviations and legal suffixes make exact-text matching miss constantly.

Two things work far better:

  • The map service's own place identifier. Google Maps assigns a stable ID to a listing; the same business pulled twice shares it exactly, with no fuzzy matching needed.
  • The phone number, normalized. Once formatting (spaces, dashes, a leading "+1") is stripped out, a phone number is close to a unique key for a specific business — far more reliable than a name, and it still works when a business is pulled from a different map service entirely, where there's no shared place ID to compare.

The one match that looks right and isn't

A website field is a reasonable third signal — except when it isn't a real website. A huge number of small businesses list a Facebook page, an Instagram profile, or a generic link-in-bio page as their "website." Matching on that field naively means every unrelated business using the same platform looks like a duplicate of every other one using it, which is a false match, not a real one. A shared platform page means "both businesses are on Instagram," not "both businesses are the same business."

Repeats are information, not noise

The instinct is to just drop the second copy silently. The better move is to keep it, but mark it as a repeat of the first — a record that shows up again later is itself a useful fact (the business is still listed, still findable, possibly under a slightly different search), and silently deleting it throws that away along with whatever slightly different details the second copy happened to have.

How AyePin handles this

AyePin matches a new result against the workspace's existing leads by map place ID or by normalized phone number before adding it, so pulling the same business from Google Maps, Bing Maps and a second campaign months later doesn't produce three separate leads to message separately. A match is kept, not deleted, linked to the original as a repeat. Website matching deliberately excludes shared hosting platforms like Instagram, Linktree and the common site-builder subdomains, so two unrelated businesses both using a free Instagram page are never flagged as duplicates of each other.

See also: Google Maps vs Bing Maps vs Apple Maps for local leads.