Google Maps Scraper: How to Build Local Lead Lists Without Scraping
Google Maps scrapers promise a city's worth of business leads in a CSV. This guide explains how they work, where Google's rules draw the line, why results stop at about 120, and how to build the same list with licensed data and public contact details.
Searvia · 10/25/2026 · 8 min read

In short: A Google Maps scraper drives a headless browser through Google Maps and saves each business's name, phone, website, address, rating and review count. It works, but it breaks Google's terms and robots.txt, stops at about 120 results per search, and gets your IP rate-limited when you run it hard. You can build the same list from licensed Maps data, split a city into tiles to get past the cap, and collect emails and social profiles only from what each business publishes itself.
If you sell websites, SEO, ads or local marketing, a list of businesses in one trade and one city is where the week starts. Copying them from Google Maps by hand takes an afternoon for fifty rows. A scraper promises five hundred rows in ten minutes.
This guide covers what a Google Maps scraper actually does, what Google's rules say about it, why every tool hits the same result cap, how emails and social profiles are found, and how to build an outreach-ready list without scraping.
What a Google Maps scraper does
Open-source tools such as gosom/google-maps-scraper and the many wrappers built on it follow the same steps:
- Start a headless Chrome, usually in Docker.
- Open Google Maps with a search like "dentist in Austin, TX" and accept the consent page.
- Scroll the result list until no new places load.
- Open each place and read the fields on the page.
- Optionally visit each business website to look for email addresses.
- Write everything to CSV or JSON.
The output is useful. A typical row has the business name, category, address, phone, website, rating, review count, opening hours and coordinates. That is most of what you need to decide who to contact.
The trade-offs are in the details: you run and update the browser engine yourself, Google changes its page layout from time to time, and heavy use needs rotating proxies. The tools' own documentation is open about the last point: large runs without proxies get your IP temporarily blocked.
What Google's rules say
Three documents matter.
Google's Terms of Service. Among the things you may not do, the Google Terms of Service list "using automated means to access content from any of our services in violation of the machine-readable instructions on our web pages (for example, robots.txt files that disallow crawling...)".
Google's robots.txt. The file at google.com/robots.txt disallows /maps/ and most /maps? URLs for all crawlers, with a short list of exceptions. Place pages and result lists fall under the disallowed paths.
The Google Maps Platform Terms. If you use Google's paid APIs instead, section 3.2.3(a) of the Google Maps Platform Terms is titled "No Scraping": customers "will not export, extract, or otherwise scrape Google Maps Content for use outside the Services", and the examples include "copy and save business names, addresses, or user reviews."
So a scraper is against Google's terms, and the official API does not let you keep a business list either. Whether breaking terms of service is also illegal depends on where you are and how you use the data. For most freelancers and agencies the practical risk is simpler: blocked IPs, broken runs and a list built on a method you cannot mention to clients.
Why every tool stops at about 120 results
Search "plumber" in a large city on Google Maps and keep scrolling. After roughly 100 to 120 places the list stops loading, even when the city has many more plumbers. This is Google's limit, not the tool's.
The fix every serious tool uses is tiling:
- Split the city into a grid of smaller areas, for example 3×3.
- Run the same search from the center of each tile, zoomed in so each tile shows its own neighborhood.
- Merge the results and remove duplicates by place ID or CID, because businesses near tile borders appear twice.
Nine searches will not give you nine times 120 businesses, because neighboring tiles overlap. They do give you the businesses a single search never reaches, which are often the small, less visible ones: exactly the ones that need help.
Several trades widen the net the same way. A dental clinic may be listed as "dentist", "dental clinic" or "orthodontist". Search two or three related terms and merge them into one list.
Where emails and social profiles come from
Google Business Profiles do not have an email field. Every Maps email extractor finds addresses somewhere else:
- The business website. The home page, then the contact and about pages linked from it. Look for
mailto:links, addresses in the text, and addresses hidden by Cloudflare's email obfuscation, which can be decoded. - Social links on the website. Most small business sites link to their Instagram, Facebook, LinkedIn, TikTok or YouTube profiles in the header or footer.
- A web search for the business. When a business has no website, or its website lists no profiles, a search for its name and city often returns its own Instagram or Facebook page, and sometimes a website Google Maps does not know about.
Three rules keep this clean:
- Never guess addresses.
info@domain.commay not exist, and guessing invites bounces that hurt your mailbox. - Treat directories as directories. Many Maps profiles list a booking platform or a directory page as their website. The email and social links on that page belong to the platform, not to the business.
- Match the name. A web search for a common name returns other people's profiles. Keep a result only when its title or address contains the business name, and for businesses named after a person (Dr. Jane Smith, Dentist), also require the profession or the city.
What found rates to expect
In a test search we ran in October 2026 for "dentist" and "orthodontist" in Moda, Istanbul, one area search per term returned 195 unique businesses. Of those, 92% had a phone number on Google Maps and 62% a website, but several of those websites were booking platforms rather than the clinic's own site. A contact check on a sample of 20 found a published email for 15% and a social profile for 25%.
Your numbers will differ by trade and country, but the shape is typical: phones are almost always there, websites often, emails rarely. Plan your outreach around that: a phone call or a social message may reach more businesses than email.
How to build the list without scraping
You can get the same fields without running a browser against Google Maps.
Use licensed Maps data. SERP data providers return Google Maps results as structured data: name, category, address, phone, website, rating, review count, claimed status, photos and hours. DataForSEO's Google Maps endpoint, for example, returns up to 100 results per billed page, from any coordinate and zoom level you choose. That makes tiling simple: one request per tile.
Score businesses by their gaps. A list sorted by name is a phone book. A list sorted by need is a sales plan. Useful signals are all in the Maps data: no website, an unclaimed profile, few reviews, a low rating, few photos, missing opening hours and a low position for their own trade.
Collect public contacts only. Read each business website, follow its contact and about pages, respect its robots.txt, and fall back to a name-and-city web search only when the site or the profiles are missing. Mark anything that came from a search so you check it before you use it.
Write to each business about something it can verify. "Your Maps profile has no website and 6 reviews, the three clinics above you have 200+" gets more replies than "We do SEO". Every email needs your identity, your postal address and a working unsubscribe link.
The rules for contacting businesses
Before the first email, check the rules where your recipients are.
- United States. The FTC's CAN-SPAM compliance guide says "the law makes no exception for business-to-business email". You need honest headers and subject lines, your valid postal address, a clear way to opt out, and opt-outs honored within 10 business days. Penalties can reach $53,088 per email.
- European Union. GDPR Recital 47 says processing personal data for direct marketing "may be regarded as carried out for a legitimate interest", but national e-privacy rules decide whether you need prior consent for email, and a sole trader's address counts as personal data.
- Everywhere. Send from your own mailbox, in small daily batches, stop when someone replies, and never email an address that unsubscribed or bounced.
This is not legal advice; for a large campaign, ask a lawyer in your market.
Scraper or licensed data: a quick comparison
| Self-hosted scraper | Licensed Maps data | |
|---|---|---|
| Setup | Docker, a headless browser, proxies for large runs | An account; nothing to install |
| Google's terms and robots.txt | Against them | Data is bought from a provider |
| Results per search | About 120, more with tiling | Up to 100 per request, more with tiling |
| Blocks and rate limits | Your IP can be rate-limited | The provider handles collection |
| Cost | Free software, plus proxies and your time | Pay per request |
| Emails and social profiles | From each website, if the tool adds it | From each website, if the tool adds it |
Neither side gives you emails Google does not have. The difference is the method, the upkeep and whether you can explain where your list came from.
How Searvia does it
Searvia's lead finder searches Google Maps through licensed data, so there is no scraper, proxy or API key. Enter up to five trades separated by commas and choose one area (up to 100 businesses per trade) or the whole city, which splits the place into 9 tiles and removes duplicates. Each business is scored by its gaps, and the list shows how many have a phone, a website, an email and a social profile.
Tick Also find emails, phones, social profiles and websites, or click Find all contacts later. Searvia reads each business website, skips booking platforms and directories, and searches Google by name and city only when the website or profiles are missing; those links carry a search mark. It never guesses an address. From there you save the best ones as leads, run a needs analysis, send a priced proposal and approve a first email with two follow-ups that go out from your own mailbox. The lead finder guide walks through it in three minutes, and the same steps work from Claude, ChatGPT or Cursor through the Searvia MCP server.
Frequently Asked Questions
- Is it legal to scrape Google Maps?
- It is against Google's rules. Google's Terms of Service forbid using automated means to access content in violation of the machine-readable instructions on its pages, such as robots.txt, and google.com/robots.txt disallows most /maps/ paths. The Google Maps Platform Terms also say customers will not export, extract or otherwise scrape Google Maps Content, including copying business names, addresses or reviews. Whether a breach of terms is also illegal depends on your country; ask a lawyer if it matters for your business.
- Why does Google Maps stop at about 120 results?
- The Maps list stops loading new places after roughly 100 to 120 results for one search, however far you scroll. Tools work around it by splitting the area into smaller map tiles, searching each tile separately and removing duplicates by place ID. A 3×3 split of a city gives nine searches and usually several times more unique businesses than one search.
- Can I get emails from Google Maps?
- Not directly. A Google Business Profile has a phone number and a website field, but no email field. Email extractors visit the business website and read addresses published on it, usually on the home, contact and about pages. Expect emails for a minority of businesses: many small businesses have no website, or a website without a visible address.
- Do I need the Google Places API to build a lead list?
- No. You can use the Places API, but its terms limit how long you may store place details, so it is a poor fit for a list you keep and export. Licensed SERP data providers return the Maps results as data you can store, and some lead tools, including Searvia, are built on them, so you need neither an API key nor a scraper.
- Is cold email to businesses allowed?
- Often, with conditions. In the US, CAN-SPAM applies to business-to-business email too: no misleading headers or subjects, your postal address, a clear opt-out honored within 10 business days. In the EU, GDPR Recital 47 says direct marketing may be a legitimate interest, but national e-privacy rules decide whether you need consent first. Many countries treat a sole trader's email as personal data. Check the rules where your recipients are.
Sources
- Google Terms of Service
- Google robots.txt
- Google Maps Platform Terms of Service
- Google Maps live advanced – DataForSEO API documentation
- CAN-SPAM Act: A Compliance Guide for Business – Federal Trade Commission
- Recital 47 – Overriding Legitimate Interest – General Data Protection Regulation
- gosom/google-maps-scraper – GitHub