nearbia.com

How We Sorted 200 Plumbing Websites

We started with 200 domains that public and paid sources tied to plumbers in St. Petersburg, Florida. Fewer than half turned out to be local plumbers with proof on their own site that they serve the city.

200candidate domains
171answered at all
88local plumbers with zone evidence
36dead, parked or without DNS

Where the 200 Domains Came From

We pulled every plumbing business with a website from several sources. Free ones: Overture Maps, Foursquare, OpenStreetMap, AllThePlaces and Florida license records. Paid ones: Google business listings, Google Maps and Google organic results.1

A domain made the list if a source placed it inside the city boundary or within 3 km of it.2 That gave 92 domains inside the city and 90 just outside, in places like Gulfport, Kenneth City and Pinellas Park. Another 17 came only from organic search results, with no coordinates. One had only a postal city.1

No source had everything. Foursquare alone found 30 domains, Overture alone 21, Google organic results alone 17.1 The Google lookups cost about $0.18 for the whole slice.3

Why a Quick HTTP Check Failed

Our first pass sent one request to each homepage. It searched the first 400 KB of raw HTML for the city name and plumbing words. It was wrong in both directions.1

A real browser found 36 dead domains, not 27. Six domains that passed the quick check were lead-generation sites.1 We dropped the quick check for verdicts on Oct 1, 2026. It now says only whether a domain answers.3

Location mattered too. From a computer in the Netherlands, 47 of the 200 sites did not respond. From a US IP address, 15 of them loaded at once.1 All checks since then run from the US.

How Each Site Was Judged

Each live homepage opened in ordinary Chrome, with JavaScript running, five browsers in parallel. The 171 homepages took about 40 minutes.1

A language model running on our own server then read each captured page. It labeled the site type: a local company's own site, a franchise location page, a national chain, a directory, a lead-generation site, unrelated, or dead. It had to quote the page to back its label, and code checked that each quote was really on the page. Labels with confidence below 0.6 go to a person.1

The model did not decide whether a company is local. Code did that, using the evidence below.

What Counts as Zone Evidence

Code looks at the homepage first. If it finds nothing, it opens up to 2 more pages: contact, service area, or a chain's local page. Evidence ranks from strongest to weakest:1

Before 3 duplicates were merged, 91 sites had zone evidence. The split by evidence type:1

Zone evidence among 91 sites, before merging duplicates
Strongest evidence foundSites
Phone matches source records58
City name next to the state19
Zone ZIP code14

Ten of these were local pages of franchises.1 How the three signals differ is covered in Office Address, Service Area, Phone.

The Result

200 candidate domains for plumbers in St. Petersburg, FL, Oct 1, 2026
GroupDomains
Local plumbers with zone evidence88
Local plumbers, region only10
Local plumbers, no zone evidence7
Local business in another trade (HVAC, appliance repair)13
National chains and brands3
Directories and lead-generation sites17
Not home services16
Duplicates (redirect to another domain on the list)4
Blocked by bot protection, even in a browser6
Dead, parked or no DNS36
Total200

The 88 sites form the corpus. Only these go on to a full crawl and fact extraction. Of the 88, 45 are inside city limits and 38 are within 3 km of the boundary.1

What Surprised Us

Sources attach the wrong website to a local record. Five domains tied to St. Petersburg belonged to plumbers in Colorado, Idaho, Mississippi, Broward County and Orange City, Florida. Without evidence on the site itself, they would have entered the directory.1

Our starting database missed a lot. It lacked 21 of the 45 in-city plumbers in the corpus. Google alone found 11 of those 45.1

The model sometimes invents a trade. One sewer pipe lining company came back labeled as window cleaning. That is why a person reviews the "another trade" group.1

Limits

This is one snapshot, taken Oct 1, 2026. Sites change, and dead domains may come back.

The check reads a homepage and at most 2 more pages. A plumber that shows its area only deeper in the site lands in "region only" or "no zone evidence". A person still has to review those 17 domains.

The corpus covers only businesses with a known website. Florida records list 93 active plumbing licenses with a St. Petersburg address. For 69 of them, we do not know a domain yet. Some have no website at all. License records are explained in Florida contractor licenses.

We have not yet run the same check on Clearwater, so we cannot compare the two cities on this method. Progress is in the work log.

Sources

  1. Nearbia project data, St. Petersburg plumbing slice, Oct 1, 2026: candidate domain list, per-site verdicts with zone evidence, and slice summary. Snapshot of Oct 1, 2026.
  2. U.S. Census Bureau, TIGERweb, Places layer, St. Petersburg city boundary (GEOID 1263000), tigerweb.geo.census.gov, downloaded Oct 1, 2026.
  3. Nearbia project decision log, entries of Oct 1, 2026 on the St. Petersburg plumbing slice and on browser-only site checks.