A seller opens a Chrome tab, types "dentists in Austin" into Google Maps, and stares at 400 pins across the city. Somewhere in that grid is next quarter's pipeline. The tempting move is to reach for a scraper: paste a CSV into your sender, hit go, wait. The move that actually pays is quieter. It uses the same map, treats the data as reading not stealing, and layers the one thing a scraper never gives you.
Why do sellers keep reaching for scrapers?
A search like "dentists in Austin" on Google Maps returns hundreds of businesses with names, addresses, phone numbers, websites, ratings, and review counts. That is a lead list sitting in plain sight, so it is easy to see why tools like Apify actors and Outscraper get pitched as the shortcut. Copy the results into a CSV, upload to your sender of choice, done.
Three hidden costs behind the shortcut
The problem is that the shortcut has three costs that only show up later: legal, technical, and quality.
Is scraping Google Maps legal?
The honest answer is "it depends, and Google actively disallows it." Google's Terms of Service prohibit automated access to Maps outside the official APIs. The public-data question was reopened by hiQ Labs v. LinkedIn (Ninth Circuit, 2022), which held that scraping public data is not by itself a Computer Fraud and Abuse Act violation. But CFAA is one law of many, and hiQ's case did not bless breach of contract, DMCA, or state-level claims.
Google Maps Platform Terms of Service Read the official terms.
Public does not mean unrestricted
A business phone number on Google Maps is public information anyone can look up. Downloading a million of them through a scraper that violates Google's ToS is a different question, and the risk sits with you, not the tool vendor.
The technical treadmill
Even if you accept the legal risk, scraping Maps is a moving target. Google rotates DOM structures, rate limits aggressively, uses reCAPTCHA on suspicious sessions, and blocks datacenter IP ranges. Every scraper vendor is running a residential proxy pool and a headless-browser farm to keep up. When their infrastructure has a bad day, your pipeline has a bad day.
Official directory data returns the same underlying business information, with a documented schema, a stable rate limit, and a real support contract. It costs more per record than a shady scraper, and much less than a Google-flagged domain.
What is the difference between scraper and signal-based prospecting?
| Dimension | Scraper workflow | Signal-based prospecting |
|---|---|---|
| Data source | Unofficial Maps scrape | Official directory data + public web research |
| Legal posture | Grey zone, ToS violation | Supported API + public info |
| Reliability | Breaks with DOM changes | Stable schema |
| Enrichment | Name, phone, address | Signals + emails + context |
| Personalization | Mail merge tokens | Signal-aware opening lines |
| Reply rate | Low, spammy tone | Higher, contextual |
| Cost model | Per record + proxies | Per verified lead |
| Long-term risk | Domain + sender reputation | Manageable |
- Dimension
- Data source
- Scraper workflow
- Unofficial Maps scrape
- Signal-based prospecting
- Official directory data + public web research
- Dimension
- Legal posture
- Scraper workflow
- Grey zone, ToS violation
- Signal-based prospecting
- Supported API + public info
- Dimension
- Reliability
- Scraper workflow
- Breaks with DOM changes
- Signal-based prospecting
- Stable schema
- Dimension
- Enrichment
- Scraper workflow
- Name, phone, address
- Signal-based prospecting
- Signals + emails + context
- Dimension
- Personalization
- Scraper workflow
- Mail merge tokens
- Signal-based prospecting
- Signal-aware opening lines
- Dimension
- Reply rate
- Scraper workflow
- Low, spammy tone
- Signal-based prospecting
- Higher, contextual
- Dimension
- Cost model
- Scraper workflow
- Per record + proxies
- Signal-based prospecting
- Per verified lead
- Dimension
- Long-term risk
- Scraper workflow
- Domain + sender reputation
- Signal-based prospecting
- Manageable
What workflow do we actually run?
- 01
Describe the ICP in plain English
Not a filter tree. "Independent dental practices in Austin with under 15 reviews and no website." The description drives the query and the signal filters.
- 02
Query the public directory
Milo uses official public map data. Same data any human sees on Maps, but returned as structured JSON with a stable rate limit.
- 03
Crawl the public footprint
For every result, fetch the website (if any), the Google Business Profile, and up to two social profiles. This is where signals get confirmed.
- 04
Tag signals
No website, thin site, weak reviews, unclaimed listing, and so on. Businesses that already fixed a gap fall out.
- 05
Find the right contact
Owner or manager name from public sources, verified email, and a fallback to the contact form only when nothing else exists.
- 06
Draft, send, and route replies
Signal-aware first line, single CTA, sent from your own Gmail or Outlook with warmup. Replies land back in your inbox like a real conversation.
What about Apify and Outscraper?
Both are real products with legitimate use cases. Apify runs a marketplace of actors, some of which are Maps scrapers and some of which use official APIs cleanly. Outscraper offers a hosted Maps extraction service and is transparent about its methods. If your only requirement is a raw list of businesses with phone numbers, they work.
What they leave undone
What they do not do is enrichment, signal tagging, drafting, or sending. You still need three more tools, three more subscriptions, and a way to keep them from stepping on each other. That is the gap Milo fills.
The ethical version of "scraping"
Everything a human can see on Google Maps is fair to reference in outreach. "I noticed your practice does not have a site linked on Google" is honest and useful. It is not scraping, it is reading.
The one thing to remember
Everything a human can see on Google Maps is fair to reference in outreach. Reading a public listing is not the same as scraping it, and the workflows that survive quarterly ToS changes are the ones built on supported directory data plus a signal layer, not on rotating proxy pools.
The buying-signal playbook for local B2B Pillar: buying signals.
Is it illegal to scrape Google Maps?
It violates Google's Terms of Service, which is a contractual claim rather than a criminal one in most jurisdictions. The CFAA question was narrowed by hiQ v. LinkedIn, but ToS breach, DMCA, and state torts remain live risks.
Can I get sued for using a Maps scraper?
Google has sent cease and desist letters and has sued repeat commercial scrapers. Individual sellers rarely see enforcement, but the sending domain and account risks are usually the bigger issue in practice.
Does the official directory API cost more than scraping?
Per record, yes. Per meeting booked, usually less, because the data is cleaner and the workflow is stable.
How do I get an owner email from a Google Maps listing?
You do not. You use the website and social links on the listing to find the owner through public sources, then verify the address. Milo does this automatically.
Can I use a scraped list for cold email if I comply with CAN-SPAM?
CAN-SPAM in the US does not require prior consent, but many state laws and GDPR do. The source of the list also matters for deliverability, not just legality.