Zip-code scraping: why one city search misses most of the market

Updated July 22, 2026 · 5 min read

Search “dentist Chicago” on Google Maps and scroll until the results stop. You'll run out somewhere around a hundred listings. Chicago has vastly more dentists than that.

This single fact invalidates more lead lists and more market-size estimates than anything else in local data, and the fix is mechanical.

What the cap is

Google's results feed for one search returns roughly 100–120 places before it stops paginating. The official Places API has its own cap, traditionally 60 results across paged requests. Both are product decisions about how many results a user needs, not statements about how many exist.

The results you do get are ranked — prominence, proximity, relevance — so a truncated search doesn't give you a random sample of the market. It gives you the most established businesses, which are precisely the ones least likely to need what you're selling, and least likely to be your competitive blind spot.

Why subdividing works

The cap is per search, not per area. Run one search per zip code and each search is looking at a small enough population to return everything in it. Twenty zip codes means twenty searches, each comfortably under the ceiling, and the union of them approaches complete coverage.

Adjacent searches overlap, because search results don't respect zip boundaries precisely — a business just over the line still shows up. That's fine as long as you deduplicate on place ID rather than on name, which is one of the main arguments for keeping that column.

Doing it in practice

  1. 1

    Choose the right subdivision

    Zip or postal codes are the natural unit in most countries — they're granular, official, and everyone already thinks in them. In dense urban cores you may still hit the cap on a single zip for very common categories, in which case split further by neighbourhood or narrow the category.

  2. 2

    Run one search per code

    Category × location, one job. In Hubertino the location picker expands a city into its zip codes for you and runs each as its own search, streaming into one deduplicated table — the manual version of this is copying a zip list into a spreadsheet and running them one at a time.

  3. 3

    Deduplicate on place ID

    Overlaps are expected. ID-based deduping collapses them exactly; name-based deduping merges different businesses and misses genuine duplicates.

  4. 4

    Sanity-check the total

    If your city-wide count lands suspiciously close to a hundred, you didn't subdivide. If it's several times that, you probably did it right.

What it changes downstream

Market sizing stops being wrong — the guide on counting businesses in an area depends entirely on this. Territory design gets real per-zip counts instead of a truncated top-100. Site-selection saturation maps become comparable between areas rather than all pinned at the same ceiling.

And for lead generation it changes who's on the list: the businesses beyond the first hundred results are the smaller, newer, less-optimised ones. For most agency and service offers, that's the better half of the market.

The cost side, honestly

Complete coverage costs more than a truncated search, because there are more businesses in it and you're billed per business delivered. That's the trade: a hundred-row list is cheap and misleading, a full-market list is priced by the market's actual size. Unused reservations refund automatically, so an over-broad estimate isn't charged.

Common questions

Does this work outside the US?

Yes — postal-code systems differ in granularity, but the principle is identical: subdivide until each search sits comfortably below the feed cap. The location picker covers multiple countries.

Won't I pay for the same business twice across overlapping zips?

No. Deduplication happens before delivery, so one credit is one unique business regardless of how many searches surfaced it.

How many zip codes does a typical city have?

Anywhere from a handful for a small town to well over a hundred for a large metro. The picker expands them for you, so the count affects runtime and cost rather than your effort.

More guides: How to scrape Google Maps in 2026 (no code required) · How to get emails for businesses on Google Maps · How to build a cold-email list of local businesses · How to export Google Maps results to Excel or CSV

Try it on your own niche

Start free with 100 credits — enough for a real lead list. No card required.

Start free with 100 credits