How to build a local business lead list without map-scraping tools or extensions
You can build a local business lead list without scraping tools by starting from a pre-built, graded set of public business listings and company websites, then filtering by trade, place and contact fields: as of 5 Nov 2026, 67Leads holds 135,182 sellable US businesses, after removing 11,307 listings (8%) that turned out to be a different kind of business.
Key numbers
- 135,182Sellable businesses with a phone
- 11,307Listings graded off-trade and withheld
- 8%Share of listings graded off-trade
- 7,074Email confirmed by the mail server
- 8,000Owner name read from the company site
Live from the 67Leads warehouse, computed (US Central) when this page was served. Sellable means graded as the trade, with a phone, opted-out businesses removed. Methodology.
Why people reach for scraping extensions, and where they stop
The usual tutorial goes like this: open a map search for "plumbers in Phoenix", run a free browser extension over the results, export a CSV, then paste the domains into an email finder. It looks free. In practice the extension is the cheap part and the clean-up is the expensive one.
Every in-browser tool runs into the same limits:
- A result ceiling. A map search shows roughly 120 results before it stops loading more, and reviewers of scraper extensions report hitting that cap (LeadStal on the Chrome Web Store). A metro with 600 roofers takes several overlapping searches, which then need de-duplicating.
- Your browser, your IP. The tab has to stay open and active while it runs, and repeated runs from your own connection draw CAPTCHAs (FlyByAPIs).
- No emails. A generic table scraper copies what is on the page: name, phone, address, rating. Emails live on each business's own website, so something still has to visit every site.
- Clean-up time. FlyByAPIs puts the clean-up at about 20 to 30 minutes per export for misaligned columns alone (FlyByAPIs).
The channel is also shrinking. Two of the largest "Maps scraper" extensions in the Chrome Web Store now describe themselves as Bing Maps tools (MapsLeads, mapsscraper.net), and the developer of a third told reviewers that it "only supports Bing Maps" (Maps Extractor reviews).
The terms-of-service problem
Google's Maps terms, last modified 27 January 2026, say users may not "mass download or create bulk feeds of the content (or let anyone else do so)", and may not use the content to create a "business listings database" (Google Maps terms). Running a bulk exporter over map results is hard to square with that wording. The practical risk to an individual is mostly being blocked, not sued, but it is a weak foundation for a business process you plan to repeat every week.
What a clean local lead list needs
Before choosing a method, decide what each row must carry. For selling to local businesses that is usually:
- The right trade. A search for one trade returns neighbouring trades. If you sell to tree services, a plant nursery is noise.
- Still open. The listing should have been seen recently.
- A working phone number, local rather than toll-free if you plan to call.
- An email read from the company's own website, checked against the mail server, if you plan to email.
- An owner name where the website gives one, so you are not writing to "Dear team".
- Signals for your pitch: rating, review count, whether the business has a website at all, and whether that site loads.
Fields 1, 4 and 5 are where scraped CSVs fall down, and they are what the buyer actually pays for. One Outscraper reviewer wrote: "I paid for 16,000 leads but after cleaning the data only had 500 workable leads" (Trustpilot).
Option 1: Do it by hand for a small, focused list
For your first 30 to 50 prospects, manual research is fine and teaches you the market:
- Pick one trade and one town.
- Search for the trade and town, open each listing, and note the name, phone, website, rating and review count in a sheet.
- Visit each website. Look for an email address on the contact page and an owner's name on the about or team page.
- Skip anything that is clearly another trade, closed, or a franchise head office.
- Before you email, check each address with a mailbox verifier, and never send to an address you guessed.
It is slow, roughly a few minutes per business, but every row is one you looked at yourself.
Option 2: Run a scraper yourself and clean the output
If you are technical, a hosted scraper you configure is the next step up. The Apify Google Maps actor is the best known: Apify's store showed 679,892 total users and 46,765 monthly users on 3 November 2026 (Apify Store), and it starts from $1.50 per 1,000 places (Apify). Outscraper charges $3 per 1,000 places after 500 free (Outscraper pricing).
The raw rows are cheap. What you still own is the work after: de-duplicating across overlapping searches, removing other trades, crawling each website for emails, verifying them, and deciding what to do with catch-all domains. Our comparisons of Outscraper and the Apify Google Maps actor set out where each is the better choice.
Option 3: Start from a graded warehouse
The third route skips the scrape entirely. 67Leads keeps a warehouse of US local businesses built from public business listings and company websites, and does the clean-up once for everyone:
- Each listing is graded against the trade. Off-trade rows are withheld, never sold. So far that is 11,307 of 147,119 listings collected, or 8%.
- Emails are read from each company's own site and checked against its mail server, with nothing sent. 7,074 businesses currently have an email the server confirmed.
- Owner names are read from the company's own site where it gives one: 8,000 so far.
- Opted-out businesses are removed from every count and export.
You type one plain-English search such as "roofers in Dallas with email", see the counts for free, and export only the rows you want. There is no extension to install, no tab to babysit and no 120-result ceiling.
The honest limit is coverage. A warehouse only has the trades and cities it has collected. If yours is missing, the search queues it rather than pretending. Check what exists with the local business counter or browse every lead list by trade.
How to judge any list before you pay
Whatever route you take, run the same checks on a sample before you buy or send:
- Count against an outside number. The US Census Bureau's County Business Patterns counts business locations with paid employees by industry and state. A list that claims far more roofers in a city than Census counts in the whole state is padded.
- Read 20 rows. Are they all the trade you asked for? Are the websites real company sites, or directory profiles?
- Look at the email column. How many are shared inboxes such as info@, and how many have a mailbox check with a date?
- Check for duplicates by phone number, which is the most stable identifier a local business has.
The lead list preview shows sample rows for a search so you can do this before spending anything. Our guide to verifying a lead list before you send goes deeper on the email column.
A worked example
Say you sell bookkeeping to tree services in one state. By hand you would search a dozen towns, de-duplicate, and visit a few hundred websites. With a scraper you would run those searches, then clean and enrich. From a warehouse you search "tree services in Ohio with email", see how many have a verified email and an owner name, and export those first. The businesses without a website still have a phone number for a call or a postcard; our guide to finding businesses without websites covers that half.
Questions
Is it legal to scrape Google Maps?
Google's Maps terms prohibit mass downloading and creating bulk feeds of its content. Court rulings on scraping public pages depend heavily on the facts, and the likeliest consequence for a heavy user is being blocked. If a scraper is central to your business, read the terms and take advice.
What is the best free way to build a local lead list?
For a small list, manual research is free and accurate. For larger lists, free tools save money but not time. Searching and counting in 67Leads is free, and the first 67 leads you export are free too.
Why do scraped lead lists bounce?
Because a scraper copies what a page shows and does not check it. Emails need to be read from the company's own site and confirmed against its mail server, and catch-all domains need to be treated separately.
Get 67 leads freeNo card. Search is free with contacts masked.
Sources
- https://chromewebstore.google.com/detail/maps-scraper-leads-extrac/lnobgojgejiecjkaieeahbkeddfnjapb
- https://flybyapis.com/blog/google-maps-scraper-chrome-extension/
- https://chromewebstore.google.com/detail/maps-scraper-leads-extrac/ghokiciomljbacchbkfhmnlmflbponlf
- https://chromewebstore.google.com/detail/maps-scraper-map-data-ext/ofbhiclojhjkggpnapcnjjjdjlgcikdf?hl=en-US
- https://chromewebstore.google.com/detail/maps-extractor-by-leads-e/gaojpolkokdnlbdnejallmpmcigpnhan/reviews?hl=en
- https://maps.google.com/help/terms_maps/
- https://www.trustpilot.com/review/outscraper.com?stars=1&stars=2
- https://api.apify.com/v2/store
- https://apify.com/compass/crawler-google-places
- https://outscraper.com/pricing/
- https://www.census.gov/programs-surveys/cbp.html