Data Studies

We Checked “Plumber” in 20 Houston ZIP Codes. No Two Map Packs Matched.

We pulled the Google map pack for “plumber” and “dentist” in 20 Houston ZIP codes. 40 different plumbers filled 60 slots, and the city-level pack matched none.

Most people check a local ranking once: they search “plumber houston” from wherever they happen to be, or set a city-level location in a SERP tool, and treat that one result as the market. We wanted to know how much that single check misses. So on October 1, 2026 we pulled the same Google search from 20 ZIP codes inside Houston and compared what came back.

The short answer: the map pack changed almost completely from one ZIP code to the next, while the organic results under it barely moved.

How we collected the data

  • Keywords: “plumber” and “dentist”, with no city name in the query, so location came only from the location setting.
  • Locations: 20 Houston ZIP codes spread across the city, from Downtown and the Heights to Meyerland, the Energy Corridor and the South Belt, plus one city-level check for comparison.
  • Location targeting: each search carried a Google uule parameter built from the canonical name, for example 77006,Texas,United States, with gl=us, hl=en and personalization switched off. These are the same parameters our local SERP checker builds when you enter a ZIP code.
  • Collection: the results pages were fetched through a SERP API on a single day, which gave us the three-business map pack and the page-one organic results for every search.
  • Quality check: on 13 of the 52 searches in this study the organic block came back unrelated to the query (Wikipedia, an R programming package called “plumber”), even though the map pack was correctly localized. We re-fetched each of those until the organic results matched the query and the location, and only used the clean versions.

The headline numbers

  • 40 different plumbers filled the 60 map-pack slots across 20 ZIP codes. 33 of them showed up in only one ZIP.
  • No two ZIP codes had the same pack. Out of 190 possible ZIP-to-ZIP pairs, zero matched.
  • The most widespread plumbers appeared in 5 of the 20 ZIPs. Nobody owned the city.
  • The city-level “Houston” pack shared no business at all with 16 of the 20 ZIP-level packs, and matched none of them exactly.
  • For dentists the spread was wider still: 53 different practices in 60 slots, 48 of them in a single ZIP only.

What each ZIP code saw

Here is the “plumber” map pack for every ZIP code, in the order Google listed the businesses.

ZIP codeMap pack for “plumber”
77002DowntownCheaux Plumbing, LLCJordan Plumbing SolutionsH&S Plumbing And Remodeling LLC
77003East EndCheaux Plumbing, LLCI Am Your PlumberGot Flow: Plumbing & AC Services
77006MontroseSanthoff PlumbingCheaux Plumbing, LLCQuality Plumber Houston
77008The HeightsLuke's Plumbing & Air ConditioningFirst Aid Plumbing SpecialistOneCall Houston
77009Near NorthsideSebastian’s PlumbingHot Water GuysCheaux Plumbing, LLC
77015East HoustonAfter Hours Plumbing ServiceAberle Plumbing LLCCitywide Plumbing Services LLC.
77019River OaksQuality Plumber HoustonSanthoff PlumbingDavid Hicks Plumbing
77024Memorialbluefrog Plumbing and Drain of West HoustonDavy Crockett Plumbing, LLCMission Air Conditioning & Plumbing
77030Medical CenterSanthoff PlumbingQuality Plumber Houston1-Tom-Plumber
77036Sharpstownbluefrog Plumbing and Drain of West HoustonGEI Plumbing Services HoustonOne plumbing expert houston
77042Westchasebluefrog Plumbing and Drain of West HoustonGEI Plumbing Services HoustonAl Rooter Plumbing LLC
77045South Houston1-Tom-PlumberPlomero YanezGEI Plumbing Services Houston
77057Galleria / UptownLifetime PlumbingRoyal Flush Affordable Plumbing & Drain CleaningQuality Plumber Houston
77063West Houstonbluefrog Plumbing and Drain of West HoustonTexas Premier Plumbing LLCGEI Plumbing Services Houston
77073North HoustonGC&MOREBeltway Plumbing LLCTrusted Plumber in Spring, TX | MAP Plumbing Services LLC
77077Energy CorridorAL Rooter Plumbing LLCbluefrog Plumbing and Drain of West HoustonAll Around Plumbing LLC
77084Far west (Bear Creek)Capital Care PlumbingBest Rates PlumbingLife Line Plumbing
77089Southeast (South Belt)Sirius plumbingTexas Best Plumbing And Services LLCAffordable Quality Plumbing
77096MeyerlandAffordable Plumbing Services HoustonTexas Plumbing and Drain ExpertsGEI Plumbing Services Houston
77098Upper KirbySanthoff PlumbingQuality Plumber HoustonA1 Plus Electrical, Plumbing and Air Conditioning Repair

Read down the table and the pattern is geographic rather than random. A company with “West Houston” in its name appears in five western ZIPs (Memorial, Sharpstown, Westchase, West Houston and the Energy Corridor) and nowhere east of downtown. Two other plumbers trade places across the inner-loop ZIPs around Montrose, River Oaks, the Medical Center and Upper Kirby. A third shows up in Downtown, the East End, Montrose and the Near Northside. That is distance doing what Google says it does: the business closest to the searcher gets a head start.

The city-level check describes almost nobody

With the location set to the city as a whole (Houston,Texas,United States), the pack was Cheaux Plumbing, LLC, Jordan Plumbing Solutions, Sebastian’s Plumbing. That looks like a reasonable answer to “who ranks for plumber in Houston”. It isn’t. Only 4 of the 20 ZIP codes showed even one of those three businesses, and none showed all three. For dentists, 18 of 20 ZIPs shared nothing with the city-level pack.

If you report a client’s map pack position from a single city-level check, you are describing a point near the city’s center, not the city. The ZIP codes where the client’s customers actually live can look completely different. Our guide to ZIP vs city vs neighborhood targeting covers which level to use for which question.

The organic results barely moved

Under the map pack the story was the opposite. We compared the top five organic domains between every pair of ZIP codes. For “plumber” the average pair shared 77% of them; the same comparison for the map pack came out at 5%. For “dentist” the organic overlap was lower, at 37%, but the map pack overlap was 1%.

So the two halves of the same page answer different questions. The organic list tells you who ranks across the metro; the map pack tells you who ranks here. Tracking one as a stand-in for the other will mislead you. There is more on why in local SERP vs organic SERP.

Is this just noise?

Map packs do rotate a little between identical searches, so we checked. Nine of the ZIP codes were fetched twice during the day. Seven came back with exactly the same three businesses, and the average overlap between the two fetches was 86%. Between different ZIP codes it was 5%. The variation in the table is coming from location, not from Google shuffling the same search.

Does the wording of the search matter?

In five of the ZIP codes we also ran “plumber near me” and “plumber houston” from the same location.

  • “Near me” changed little. The map pack kept two or three of the same three businesses in every ZIP, and in three of the five ZIPs the top five organic domains were identical to the plain search.
  • Adding the city name changed the organic results, not the map pack. With “houston” in the query, four of the five ZIPs kept only one of their top five organic domains. The map pack still shared one to three businesses with the plain search.

Google already knows where the searcher is, so “near me” adds little. A city name reads as a different query and pulls in pages written about Houston as a whole. If your customers type the city name, check that query separately. See near me query intent for more on how modifiers behave.

Dentists were harder to break into

The two keywords also differed in how established the pack businesses were. The median plumber in a ZIP-level pack had 167 Google reviews, and six of them had fewer than 50, one with just 7. The median dentist had 593 reviews and none had fewer than 77. In this sample a newer plumber could still show up in one neighborhood’s pack; a newer dental practice would have found it much harder.

What this means for how you check rankings

  1. Check at ZIP level for each area you serve. One city-level check stands in for almost none of the city.
  2. Track the map pack and the organic results separately. In this data they behaved like two different searches.
  3. Use the same location strings every time. Comparing a ZIP check this month with a city check next month will show movement that isn’t real.
  4. Record the date. A pack is a snapshot; keep the date and the exact location next to every result.

You can repeat any row of the table above with the checker: enter “plumber”, set the country to the United States and type the ZIP code as the location.

Limitations

This is one city, two keywords and one day. The API returns the three-business map pack, not the longer Local Finder list behind “More places”, and its page-one organic block held eight or nine results per search. Business names are shown as Google displayed them. A different day will show a different snapshot, and other cities may be more or less fragmented than Houston. Treat the numbers as an illustration of how much a single check can miss, not as a ranking report on any business named here.

map packUULEZIP codeHoustondata study
HK

Hassnain Karim

Local SEO Expert

Local SEO expert focused on the U.S. market. Writes about local search, UULE geotargeting, Google Business Profile optimization, and location-based SERP analysis.

Ready to open localized Google results?

Enter keyword, country, and location. We build the URL and open the real Google SERP in a new tab.

Open the checker