Google Maps Email Extractor: Free, No Code, Proven (214,361 Listings)

Sasha Bouloudnine●
24 Sept 2026

(updated)

●
16 min read

Google Maps shows a phone number, a website and opening hours for almost every business. It never shows an email, and neither does its official API.

The emails sit on the businesses' own websites. A Google Maps email extractor goes and gets them. Here is how, tested on 100 real listings. In this post you'll learn:

  1. how to extract emails from Google Maps, free and without code;
  2. how many emails 100 listings really return, and what that costs;
  3. what you get on top of the emails;
  4. when a cloud scraper, a leads database, a Chrome extension or the official Places API is the right tool.
Google Maps search for plumbers in Austin, TX: the Beyond Wow Plumbing and Drains panel shows address, hours, website and phone, and a red box with a question mark marks the empty spot where an email would be

How to extract emails from Google Maps (free, no code)

Every Google Maps email scraper works the same way under the hood. It collects the listings, follows each website link, and reads the addresses published there.

As one r/webscraping commenter put it: "Google maps does not provide emails and social media accounts. You can get emails from the website."
Reddit comment by IHateKhichdi, 4 upvotes: Google maps does not provide emails and social media accounts. You can get emails from the website.
Doing that crawl yourself means proxies, retries and a regex to maintain. Here is the no-code version with the Google Maps Leads Scraper.

Step 1: open the scraper

In the lobstr.io store, open the Google Maps Leads Scraper and click "Export leads now". No Google account, no API key.

lobstr.io store page of the Google Maps Leads Scraper: 1 credit, free badge, Scrape all local businesses data from a Google Maps Search URL and export into a Google Sheet, Emails included, Export leads now button, 11,059 users and 7,357 runs

Two ways in. Paste a Google Maps search URL, or fill a category and a place: I typed "plumber", United States, Texas, Austin.

The second is easier to scale: one row per city, and you can cover a whole state in a single run. The fields:

Field Required What it does
Category / Search Query ✅ A Google Maps category or any query (plumber, Italian restaurant, rooftop bar)
Country ✅ The country to search in
Region Optional State or first-level division (Texas)
District Optional County or second-level division
City ✅ The city or town (Austin)
Behind the scenes, the scraper turns category and city into a geolocated search. Mine became google.com/maps/search/plumber/@30.26715,-97.74306,16z: "plumber", centred on Austin.
Add tasks step of the Google Maps Leads Scraper: category plumber, country United States, region Texas, district Austin, boxed in red

Step 3: switch on emails

In Settings, "Extract Emails from Website" is on by default. It is the step that visits each business website.

I also turned on "Verify emails", which tags each address valid, risky, catch-all, invalid or unknown. And I capped the run at 100 results.

Settings step of the Google Maps Leads Scraper: Extract Emails from Website switched on with a 1-credit badge, and further down Verify emails switched on with a 2-credit badge, both boxed in red

The small red badge next to each option is its price in credits. Here is what every setting does:

Setting What it does Credits
Extract Emails from Website Visits the website, its contact pages and the listing's Facebook page for emails and social links 1 per lead with an email
Only Leads with Emails Drops every lead where no email was found 1
Verify emails Adds an email_status to every address 2 per verified email, invalid ones free
Collect Business Details Reviews per star, plus code, POI and health info, opening-hours update date 1
Fetch Business Images All the listing's photos 1
Skip Closed Places Leaves out temporarily or permanently closed businesses 0.2
Website, Phone and Claimed Status filters Keep only listings with (or without) a website, a phone, or an owner-claimed profile 0.2 each
Minimum / Maximum Rating, Exact Name Match Target a rating range, or a brand name Free
Geo Match, Category Match Only keep (and bill) places inside your area and your category Free
Max Unique Results, Max Results Per Task Cap the run; Google Maps stops at 200 results per search Free

Step 4: launch and download

Pick "Manually" for a one-off run, or "Repeatedly" to put it on a schedule. Rows fill in as the scraper moves through the listings and their websites.

Launch step of the Google Maps Leads Scraper: How do you want to launch, Manually selected, Repeatedly below, and the Save and Extract button

My run took 8 minutes 58 seconds for 100 plumbers and cost 295 credits: 100 for the listings, 61 for the email crawl, 134 for verification. Then Download, CSV, and open it in Google Sheets.

Finished run page in the lobstr.io dashboard: status Done, 295 credits used, 100 total results, started 2026-09-24 11:42:05, results table with place ids, 1 to 50 of 100 results
All 100 rows sit in a public Google Sheet, emails included.
The public Google Sheet Google Maps Email Extractor test, 100 plumbers in Austin TX: NAME, CATEGORY, ADDRESS, CITY, ZIP CODE, PHONE, WEBSITE and BUSINESS EMAIL(S) columns, with emails such as hello@austinplumbery.com and dispatch@clarkekentplumbing.com

The file is only as good as the hit rate, though. So how many of those 100 plumbers came with an email?

How many emails do you really get? The 100-listings test

57 out of 100 had a real business email. Here is the funnel, from listing to verified address:

Bar chart of the 100-listings test on plumbers in Austin, Texas: 100 listings collected, 86 with a website, 61 with an email extracted, 57 with a real business email, 50 with a verified-valid business email

86 plumbers had a website. 61 of those sites gave up at least one address, 81 unique ones in all.

I then checked each address against the business's own domain: 57 listings keep a real business email, 14 of them on Gmail. Phones were never the problem: all 100 listings had one.

One run is one sample, so I checked it against the bigger picture.

For 2026 I queried our production database: 1,033 runs from the last 30 days with email extraction on and no filter that would skew the count.

Those runs covered 214,361 unique listings. 149,194 had a website (69.6%) and 91,550 had at least one email: 42.7%.

Bar chart, share of Google Maps listings with at least one email: 57% in our test on 100 Austin plumbers, 42.7% across 214,361 listings from lobstr.io runs in the last 30 days, 29.9% of 23.9 million US businesses in SphereScout
US-wide numbers run lower. SphereScout, a B2B database built on our Google Maps scraper, lists 23,904,651 US businesses and 7.15 million with an email: 29.9%.
SphereScout United States business database coverage: 23.9M businesses, 7.15M businesses with email, 18.1M emails, 48.6M phones, 51 regions

So Austin was a lucky draw. Across our last 30 days of runs, plumbers average 29%. Yoga studios reach 67%, French car washes 14%.

Test your own niche before you promise anyone a number.

A competitor claims "email address in 75% of cases" on Paris plumbers, without saying how many listings. Ours is 57 in 100, the CSV is public, and you can rerun the exact search.

Emails are the headline, but they are not the only column in the file:

What you get on top of emails, and what it costs

My CSV came back with 81 columns. The ones that matter for outreach:

Group Fields
Identity name, category, place_id, Google Maps URL, is_verified (owner-claimed)
Location street address, city, zip code, state, country, lat/lng
Contact phone, website, email, email_status
Social Facebook, Instagram, LinkedIn, X, TikTok, YouTube, Pinterest, WhatsApp
Reputation rating (reviews per star with Collect Business Details)
Operations opening hours, closed flags, price level

The social links come from the same crawl. The scraper opens the website, follows its contact pages, and checks the listing's Facebook page too.

Every email, extra phone and social profile it finds lands in its own column. In my run, 56 plumbers linked a Facebook page and 39 an Instagram:

Six real rows of the run's CSV: Austin Plumbery, Economy Plumbing Services, Lantz Home Services, Magic Plumbing ATX, Clarke Kent Plumbing and Beyond Wow Plumbing, each with its website, email, Facebook page and Instagram profile
For many small businesses, Instagram is the real inbox. If phones are your channel rather than email, our phone number extractor guide covers that side.

Now the price. The run's Credits tab shows exactly where my 295 credits went:

Credits tab of the run: 295 total credits, 100 results, 2.95 average cost per result; cost by function: Email Verification 134 (45%), Export Local Businesses 100 (34%), Extract Emails From Website 61 (21%)

The rule behind it has three lines:

  1. 1 credit per unique result;
  2. 1 more per lead where an email is found, 0 if none;
  3. 2 per verified email, and nothing when the verifier proves an address does not exist.

So 100 leads with one email each cost 200 credits, or 400 with verification. What a credit costs depends on your plan:

Bar chart, cost per 1,000 Google Maps leads on lobstr.io: a lead with email (2 credits) costs 4.00 dollars on the Starter plan and 1.00 dollar on the Team plan; a lead with a verified email (4 credits) costs 8.00 dollars on Starter and 2.00 dollars on Team
The full grid is on the pricing page. The free plan gives 100 credits a month, no credit card: enough to test 50 to 100 listings. Free exports are capped at 30 rows per download, and scheduling needs a paid plan.

Cheap is good. But is a scraper even the right tool? There are three other ways to get there.

Chrome extension vs cloud scraper vs leads database vs official Google Places API

There are four ways to get emails out of Google Maps. Here they are, side by side:

Cloud scraper (lobstr.io) Leads database (SphereScout, scrap.io) Chrome extension Official Google Places API
Emails ✅ From each website, verified on demand ✅ Already collected ⚠️ Only if it visits websites ❌ No field exists
Freshness ✅ Collected the day you run it ⚠️ As of the last refresh ✅ Live ✅ Live
Runs on ✅ Our servers ✅ Nothing to run ⚠️ Your browser, your IP ✅ Google's servers
Setup ✅ One form, no install ✅ Pick a country and a category ⚠️ Web Store (often Bing) or ZIP sideload ⚠️ API key, billing account, code
Scale ✅ Thousands of cities per run, scheduled ✅ Whole countries, instantly ❌ One screen at a time ❌ 60 results per query
Price From $0.50 per 1,000 leads Per list or plan Free tiers, then monthly plans $35 per 1,000 calls

Cloud scraper: your exact search, collected today

A cloud scraper runs your search on its own servers the day you launch it: any category, any list of cities, on a schedule if you want. It visits every website for the emails, so the file is as fresh as the run.

Every lobstr.io scraper is built and maintained in-house. The store page shows 99.54% incident-free runs over the last 90 days, 25 incidents, all resolved:

Live status block of the Google Maps Leads Scraper store page: Built to run, 99.54% incident-free runs over the last 90 days, 25 incidents, 100% resolved, 575 min median time to fix, and a 90-day bar of mostly green days
That is the route this article takes. Comparing cloud scrapers? Our best Google Maps scrapers roundup ranks them, with dedicated Apify and Outscraper alternative pages.
Geolid, a local-marketing agency, cut its Google Maps data bill by four moving to lobstr.io.

Leads database: a whole country, right now

A leads database like SphereScout or scrap.io runs the collection in the background and sells you the result. A whole country is one download, with no run to wait for.
SphereScout homepage: Find and export local B2B contacts worldwide, 107M+ local businesses across 51 countries, Install the agent skill and Search it yourself buttons, and a search form with business category Hotel, country United States and state or region

The trade-off is freshness and fit. SphereScout says its data is updated monthly, and you filter with the database's categories, not your own query.

Chrome extension: fine for a page or two

An extension scrapes the results on your screen, in your browser, on your IP. Good for a quick look at one neighborhood. Check which map it reads, though: the top Web Store listings say it in their own description.

Chrome Web Store search results for Maps Scraper and Leads Extractor, thumbnails blurred: the first listing, MapsLeads, rated 4.7, extracts business data and more from Bing Maps; the third, Maps Scraper and Map data extractor, rated 4.8, extracts data from Bing Maps

I downloaded the two that rank on Google and read their manifests. Both scrape Bing Maps, not Google Maps. The Google Maps version one of these vendors sells is not on the Web Store: it is a ZIP you sideload in developer mode.

Official Google Places API: clean, capped, no email

The Places API (New) is Google's own door: structured JSON, a documented schema, a bill from Google. I called it from my terminal on 24 September 2026, "plumbers in Austin, TX", with every contact field it offers.
Terminal: a Places API (New) Text Search for plumbers in Austin, TX returns name, phone and website for Radiant Plumbing and Reliant Plumbing; the same call asking for places.email fails with error 400 INVALID_ARGUMENT, Cannot find matching fields for path places.email
Phone and website come back. Ask for places.email and Google answers 400: "Cannot find matching fields for path 'places.email'".
The field does not exist. The official field list stops at nationalPhoneNumber, internationalPhoneNumber and websiteUri.
Those three fields also bump the call to the Enterprise tier: $35 per 1,000 calls, after 1,000 free a month.
One developer on r/webscraping learned it the expensive way, enriching 2,000 business records through Places: "$35/1k calls adds up fast". And still zero emails.
Reddit r/webscraping post by DamageFun2417, Best way to get emails from 16k ABN (Google Places is too expensive): I pulled 18k ABN and I have names, locations, and entity types, but zero emails; I tested 2000 with Google Places enrichment, with 74% pair match and at $35/1k calls adds up fast

And the Places API is capped. I paginated the same search to the end and it stopped at 60 results, four calls, no email:

Terminal: a loop paginating a Places API (New) Text Search for plumbers in Austin, TX; call 1 returns 20 places, call 2 19, call 3 16, call 4 5 places with no next page, 60 in total
I ran the same search against 8 scraper APIs in my Google Maps scraper API benchmark.

It is the right tool for official data inside your own app. For lead lists, covering a city means many smaller queries, and none of them returns an email. You now have a list; the last part is sending to it without getting burned:

These are business addresses published on business websites, so B2B outreach is possible on both sides of the Atlantic, with conditions. In the EU, the CNIL allows B2B prospecting if the person is informed where the address came from and can opt out for free.
Generic addresses like contact@company.com belong to the company, not a person. In the US, the FTC's CAN-SPAM guide asks for an opt-out and truthful headers.
The full breakdown, Google's terms included, is in is scraping Google Maps legal. I am not a lawyer, and this is not legal advice.

Then keep the list clean. On my run, the verifier sorted the 81 addresses like this:

Bar chart of the verifier's verdicts on the 81 unique emails of the test: 64 valid, 14 invalid (not billed), 3 unknown

Send to the valid ones first, treat unknown as a test batch, and drop the invalid ones (the scraper does not bill them).

Our cold email software comparison and subject lines guide pick it up from there.
Need a named person rather than info@? An email finder API takes the domain from your CSV and looks up the owner.
For scale, skip the dashboard. The 100-plumber run in this article was launched from Claude Code through the lobstr.io MCP server.
Claude Code terminal with the prompt: Using the lobstr MCP, run the Google Maps Leads Scraper on plumbers in Austin, Texas, 100 results, emails and verification on; Claude answers Calling lobstr.io, Google Maps Leads

Setup is one line:

claude mcp add --transport http lobstr https://mcp.lobstr.io/mcp
f
Prefer a terminal? pip install lobstrio gives you the CLI, and the REST API does the same from any stack. Python fans can also read our Google Maps scraper in Python walkthrough.
Rather wire it into a no-code workflow? The same scraper runs from n8n and Make: trigger a run, fetch the results, push the emails to your CRM.
The best trick is the schedule. Rerun the same city search every week and diff the place_id column: new ids are listings that just appeared on Google Maps, the freshest leads you will get.
That is the engine behind Google Maps lead generation and local lead generation playbooks. To pick categories, start from the full Google business categories list.

FAQ

Is there a free Google Maps email extractor?

Yes, lobstr.io's free plan gives 100 credits a month, enough for 50 to 100 listings with email extraction (1 credit a listing, plus 1 when an email is found), no credit card required; free exports are capped at 30 rows per download. Extension vendors have free tiers too: gmapsextractor.com gives 1,000 records a month.

Does Google Maps show email addresses?

No, Google Maps has no email field. Listings show a phone and a website; the emails live on those websites, which is what an extractor crawls.

Can the Google Places API return emails?

No, places.email returns error 400. The API's contact fields are phone numbers and websiteUri, billed at $35 per 1,000 calls on the Enterprise tier.

Can a Chrome extension extract emails from Google Maps?

Some can, by visiting each website from your browser. The two Web Store extensions that rank for this query actually run on Bing Maps; a Google Maps version sold by one of their vendors is a sideloaded ZIP.

How many emails can I get from 100 Google Maps listings?

57 in our Austin plumber test, and 42.7% across 214,361 listings scraped in the last 30 days. The rate depends mostly on the category.

For B2B outreach, yes, with an opt-out under CNIL guidance and CAN-SPAM. Details in our Google Maps legality guide. Not legal advice.

Can I scrape a whole state or country?

Yes, one task per city in a single run. Google Maps returns up to 200 results per search, so splitting by city (or category) is how you cover a region. The country guide shows how.

Can Claude extract emails from Google Maps?

Yes, through the lobstr.io MCP server. One claude mcp add line and Claude launches the scraper, waits for the run and reads the emails back.

Final thoughts

Google Maps will never hand you an email, and neither will its API. The addresses sit one click away, on the websites Google does list.

Use a cloud scraper when the list is going into an outreach tool, a leads database when you need a whole country today, and the Places API when you need Google's own structured data. An extension is for a peek.

If you ever find an email field in the Places API, send it my way. I asked for it, and Google answered 400. Got questions? Ping me on LinkedIn, I always reply.

Related Articles

Related Squids