A Google Maps lead file is built from business listings and the websites they link to, so the emails come from contact pages, footers and old listings. Some are years out of date, many are shared inboxes like info@ or bookings@, and plenty of small businesses use a Gmail or Outlook address. Sending to that file unchecked is how a new domain gets its first run of bounces.
The steps below take the raw export to a list you can send from. For a ranked look at tools that handle this kind of list, see the best verifiers for scraped lists.
The short version
- Your Google Maps lead export as CSV, with business name, category, city and email columns
- A ZapBounce account (100 free checks a month, no card)
The steps
Split cells that hold several emails
Scrapers often put two or three addresses from one website into a single cell. Split them so each row holds one email, and copy the business name and city onto each new row.
Remove obvious junk before you upload
Delete image file names and placeholder text such as example@domain.com that scrapers pick up from page code. Anything left that isn't address-shaped comes back as
invalidwith the reasoninvalid_syntax, and those rows are never billed.Upload the file to ZapBounce
Drop the CSV on the bulk page and pick the email column. ZapBounce removes duplicates for free, which matters here because chains and franchises list the same address on many locations.
Download results with every column kept
Your file comes back with the listing columns you exported, plus
result,reason, therole,disposableandfree_providerflags and abilledcolumn.Send valid rows first
Filter to
valid. These mailboxes accepted the address atRCPT TOthis week on a domain that doesn't accept everything, so they're the safest start for a new campaign.Segment role and free-mail rows
Rows where
roleis true reach a shared inbox, so write to the business, not a named person. Rows wherefree_provideris true are often the owner's own Gmail or Outlook, which suits a short, personal note.Handle catch-all, unknown and invalid rows
Send
catch_allrows as a small batch from a mailbox you can spare. Holdunknownrows for a day and check them again, since greylisting and throttling clear with time. Delete everyinvalidrow.
Why Maps lists need more checking than bought data
Nobody maintains a scraped list. A listing can keep an email for years after the business changed its domain, and a website footer can show an address the owner stopped reading long ago. Dead mailboxes answer a live check with a 550, and ZapBounce returns them as invalid with the reason mailbox_not_found.
Some small-business domains accept every address, too. About 28% of a 10,000-address B2B benchmark sat on catch-all domains. ZapBounce labels those rows catch_all rather than calling them valid, so you know which part of the list no SMTP check can confirm.
Keeping a scraped list lawful
You confirm a lawful basis to process every address you upload, whatever its source. The rules on business outreach differ by country, so check the ones that apply where your leads are before you send.
ZapBounce checks addresses you already hold. Guessing new ones by name pattern, dictionary or appending runs falls outside the acceptable use policy, and a check never creates consent to email anyone. ZapBounce never contacts the people on your list and never adds them to any shared database.
What checking a Maps export costs
A 1,000-row file costs $5 and 10,000 rows cost $25. Duplicates, syntax rejects and unknown results are never billed, and credits never expire, so you can scrape a city this month and check the next one in spring. Bigger tiers are on the pricing page.
Questions people ask
How do I verify emails scraped from Google Maps?
Split the export to one email per row, upload it to a verifier that runs a live SMTP check, and send only the valid rows. Put role and free-mail rows in their own segments and delete the invalid ones.
Why do Google Maps leads bounce so much?
Google Maps leads bounce because listings and website footers keep addresses long after a business changes domain or closes an inbox. A live check returns those as invalid, and on a catch-all domain it returns catch_all so you can send to them with care.
Should I email info@ addresses from Google Maps?
Email them as a separate segment written to the business, since a role address reaches a shared inbox. ZapBounce marks each one with a role flag, so the split takes one filter.
Is it legal to verify scraped emails?
You need a lawful basis to process every address, whatever its source, and outreach rules differ by country. Verification checks addresses you already hold and never creates consent to email anyone.