No Website Maps Scraper avatar

No Website Maps Scraper

Under maintenance

Pricing

Pay per usage

Go to Apify Store
No Website Maps Scraper

No Website Maps Scraper

Under maintenance

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Jeroen Ravensbergen

Jeroen Ravensbergen

Maintained by Community

Actor stats

0

Bookmarked

6

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Security

Limited permissions

Share

Find every business in a city that still has no website — and get it as a ready-to-use Excel file.

What does Google Maps – bedrijven zonder website do?

This Actor searches Google Maps for businesses in an area you choose (for example Leiden), throws away everything that already has a website, and exports only the businesses without a website to a formatted .xlsx file you can open straight in Excel, Numbers or Google Sheets.

It sweeps a built-in list of ~125 common Dutch business categories — hairdressers, plumbers, restaurants, garages, bookkeepers, dog groomers and so on — so you do not have to think of every search term yourself. You can also supply your own list of search terms.

Because it runs on the Apify platform you get scheduling, an API, integrations (Slack, Google Drive, Make, Zapier), run history and monitoring for free — so you can re-run the same city every month and see which businesses are new.

Why use this Actor?

Businesses without a website are the clearest possible lead list for anyone selling web design, hosting, online marketing, Google Business Profile optimisation or booking software. Google Maps already knows who they are; it just will not give you a filtered list.

  • Pre-qualified leads. Every row is a business that has a phone number and a location, but no site to send customers to.
  • Warm leads, not scraped email dumps. You get the business name, what it does, its address and phone number — enough to call or walk in.
  • You only pay for leads. By default Google Maps itself filters out every business that has a link, so each place you are charged for is a business without a website.
  • Social-only businesses optional. Turn on includeSocialMediaOnly to also export businesses whose only link is a Facebook page or a Thuisbezorgd menu, flagged in the Status website column. This costs a lot more per lead, see the pricing section.
  • Excel-ready. No JSON wrangling: open the file, sort, filter and start calling.

How to use this Actor

  1. Open the Actor and go to the Input tab.
  2. Fill in Area — the city, town or neighbourhood to search, for example Leiden.
  3. Leave Search terms empty to sweep the built-in list of ~125 Dutch business categories, or type your own (kapper, loodgieter, ...).
  4. Set Max places to check in total to control your spend. 500 places is roughly $2.50.
  5. Click Start.
  6. When the run finishes, open the Storage → Key-value store tab and download leads-zonder-website.xlsx. The same rows are also in the Dataset tab if you prefer CSV or JSON.

The Excel file is rewritten after every batch, so even if you stop the run halfway you still have a usable file.

Running it locally

npm install
apify login # the Actor calls a paid Store Actor, so it needs your token
apify run --purge

Input

FieldTypeDefaultWhat it does
area (required)stringLeidenCity, town, neighbourhood or region to search in.
countrystringNetherlandsAppended behind the area so Google Maps knows which country you mean. Ignored when area already contains a comma.
searchTermsarray[]Business types to search for. Empty means: use the built-in list of ~125 Dutch categories.
languagestringnlGoogle Maps interface language; affects the category wording and address format.
includeSocialMediaOnlybooleanfalseAlso export businesses whose only link is a social media or platform page. Much more expensive per lead.
skipClosedPlacesbooleantrueLeave out permanently and temporarily closed businesses.
maxPlacesTotalinteger500Hard cap on how many places Google Maps returns and charges for. This is the cost driver.
maxPlacesPerSearchTerminteger100Max places returned per search term.
maxLeadsinteger0Stop after this many leads. 0 means no limit.
maxCostPerMapsRunUsdinteger0Extra safety net: stop a single Google Maps run once it has charged this much.
outputFileNamestringleads-zonder-website.xlsxName of the Excel file in the key-value store.
searchTermsPerRuninteger10How many search terms are bundled into one Google Maps run.
googleMapsActorMemoryMbytesinteger4096Memory given to each Google Maps run. Lower it if you hit your plan's memory limit.

Example input:

{
"area": "Leiden",
"country": "Netherlands",
"searchTerms": ["kapper", "loodgieter", "trimsalon"],
"maxPlacesTotal": 300,
"includeSocialMediaOnly": false
}

Output

Two outputs, containing the same rows:

  • Excel file — leads-zonder-website.xlsx in the run's key-value store, with a frozen header row, filters and clickable Google Maps links.
  • Dataset — the same rows as JSON, CSV, Excel or HTML. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
{
"Bedrijf": "Kapsalon Knip & Co",
"Soort bedrijf": "Kapper",
"Link naar Google Maps pagina": "https://www.google.com/maps/place/Kapsalon+Knip/@52.1583,4.4900,17z",
"Adres": "Breestraat 12, 2311 CS Leiden",
"Telefoonnummer": "071 512 3456",
"Status website": "Geen website",
"zoekterm": "kapper",
"plaats": "Leiden",
"postcode": "2311 CS",
"gevondenLink": "",
"placeId": "ChIJ1",
"aantalReviews": 34,
"beoordeling": 4.6
}

Data table

ColumnDescription
BedrijfBusiness name as shown on Google Maps.
Soort bedrijfThe primary Google Maps category, e.g. Kapper, Loodgieter.
Link naar Google Maps paginaDirect link to the listing — clickable in Excel.
AdresFull street address.
TelefoonnummerPhone number as Google shows it, or the international format when that is all there is.
Status websiteGeen website, Alleen Facebook, Alleen Instagram, Alleen platformpagina (Thuisbezorgd), Alleen gratis Google-pagina, ...

The dataset carries a few extra fields that are left out of the Excel file: zoekterm, plaats, postcode, gevondenLink (the raw link found, if any), placeId, aantalReviews and beoordeling.

How much does it cost to scrape Google Maps?

This Actor does not scrape Google Maps itself — it calls compass/crawler-google-places from Apify Store and pays per place that scraper returns:

WhatPrice
Each place returned~$0.004
Website filter, per place returned (includeSocialMediaOnly off)~$0.001
Each Google Maps run started~$0.007

With the default settings Google Maps only returns businesses without a website, so you pay about $0.005 per lead:

maxPlacesTotalRough cost
200~$1.05
500~$2.60
2000~$10.10

With includeSocialMediaOnly on, the website filter cannot be used, so you pay for every place, including all the ones that already have a website. Google Maps lists established businesses (which usually have a website) first, so a run of a few hundred places can easily return only a handful of leads.

On the Apify Free plan you get a monthly credit allowance; a run stops once it is used up. The Actor logs a cost estimate before it starts and caps itself at maxPlacesTotal.

Tips

  • Start small. Run with maxPlacesTotal: 100 on your own city first to see the data before committing to a full sweep.
  • Target the trades. loodgieter, klusbedrijf, stukadoor, hovenier, trimsalon and nagelstudio have far more website-less businesses than restaurants or retail chains.
  • Keep includeSocialMediaOnly off unless you really need the Facebook-only businesses. Off, you pay only for leads; on, you pay for every business checked.
  • Schedule it monthly and compare runs to spot newly opened businesses — they are the most likely to still need a website.

FAQ

Does "no website" really mean they have no website? It means no website is linked on their Google Maps listing. A business can have a site it never added to Google. In practice that is still a useful signal — an unlinked website is its own sales pitch.

Can I also get businesses that only have a Facebook page? Yes, turn on includeSocialMediaOnly. A Facebook or Thuisbezorgd page is not a website the owner controls, so those businesses are exported too and marked in the Status website column. Because Google Maps cannot filter on "only a Facebook link", you then pay for every business checked, which makes each lead far more expensive.

Can I search a whole province or country? Yes, the Google Maps Scraper splits a large area into smaller map tiles itself. Raise maxPlacesPerSearchTerm and maxPlacesTotal accordingly, and keep an eye on the cost.

Why do I sometimes get fewer results than maxPlacesTotal? Google Maps simply may not have that many businesses matching your terms in that area.

Scraping publicly available business information — names, addresses, phone numbers, categories — is generally legal, and this Actor collects no personal data and no reviews. You are responsible for how you use the data, including compliance with GDPR and the Dutch telemarketing rules for calling businesses. If in doubt, consult a lawyer.

Feedback and support

Found a bug or want another column? Open an issue on the Actor's Issues tab. Requests for a customised version — different country, different categories, extra enrichment — are welcome there too.