โ๏ธ ๐ฉ [Only $0.5/1K] Google Maps Scraper โ Contacts
Pricing
from $0.50 / 1,000 place details
โ๏ธ ๐ฉ [Only $0.5/1K] Google Maps Scraper โ Contacts
Scrape Google Maps at scale: find every business by keyword, category and location, or bulk-export reviews from any list of Maps URLs. Returns names, addresses, phones, websites, emails-ready domains, ratings, review counts, opening hours, photos, coordinates and full reviews with date filters.
Pricing
from $0.50 / 1,000 place details
Rating
0.0
(0)
Developer
Lofomachines
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Google Maps Scraper โ Places, Contacts & Emails Extractor
Scrape Google Maps without an API key, a browser farm or a Places API bill. Find every business for a keyword, category and location, then export names, addresses, phone numbers, websites, emails, ratings, review counts, opening hours, photos and GPS coordinates.
One Actor, two jobs:
| Mode | What it does | Typical use |
|---|---|---|
| ๐ Search places | Discovers businesses by keyword or category + location | Lead generation, market mapping, local SEO |
| ๐ Place details from URLs | Full business record for a list of Maps links | Enriching an existing list of locations |
Results stream into your dataset as you go and export to JSON, CSV, Excel, XML or straight into your app via the Apify API.
Why use this Google Maps scraper?
- โก Fast and cheap โ everything runs over plain HTTP, with no browser anywhere in the stack. Hundreds of businesses per minute, at a fraction of the Google Places API cost and on a small memory footprint.
- ๐ง Emails and social profiles โ Google Maps never publishes email addresses, so the Actor reads them from each business's own website, along with Facebook, Instagram, LinkedIn, X, YouTube and TikTok links.
- ๐งญ Past Google's own 250-result wall โ a single Maps query stops at roughly 250 results however you page it. Ask for more and the Actor divides the area into quadrants, searches each one, keeps dividing wherever there is still something new, and de-duplicates โ up to 5000 businesses per keyword.
- ๐๏ธ 122 ready-made categories โ pick Hotels, Restaurants, Dentists, Plumbers, Gyms, Real estate agencies and more from a dropdown. No need to guess the right search phrase.
- ๐ Any country, any language โ localized names, categories and opening hours.
- ๐งพ Everything Google exposes โ service options, accessibility, amenities, atmosphere, popular times, price range, plus codes, rating breakdowns and photo galleries.
- ๐ Any URL format โ long place URLs,
maps.app.goo.glshare links,?cid=links and Place IDs all resolve automatically. - ๐ Live progress โ the log reports how many places are done, the rate and an ETA, so a long run is never a black box.
Use cases
Local lead generation
Pick a category and a city, and get a contact list with phone numbers, addresses, websites and โ with Find emails and social profiles turned on โ email addresses and social links pulled from each business's own site. Filter by rating or review count to find businesses that are underperforming, or thriving, and pitch accordingly.
Local SEO and rank tracking
Compare how businesses appear across neighbourhoods, cities and countries. Track review counts, ratings and category assignments over time by scheduling daily or weekly runs.
Competitor and market mapping
Map every hotel, restaurant or clinic in a region with coordinates, price bands and rating distributions. Ideal for site selection, pricing studies and franchise planning.
Enriching a CRM
Feed a list of Google Maps URLs and get back a normalized record for each: opening hours, categories, plus codes, photos and coordinates.
Input
Search mode
| Parameter | Type | Description |
|---|---|---|
mode | String | search |
searchTerms | Array | Free-text keywords, one per line. |
categories | Array | Preset categories (multi-select dropdown). |
location | String | City, region, address or postcode. Empty = country-wide. |
searchRadius | String | neighborhood, city, metro, region or country. |
maxPlaces | Integer | Max businesses per keyword/category. Up to 5000. |
language | String | Result language, e.g. en, it, de. Applies in every mode. |
country | String | Country Google localizes for, and browses from. Applies in every mode. |
Place URLs mode
| Parameter | Type | Description |
|---|---|---|
mode | String | places |
startUrls | Array | Google Maps place URLs, share links, ?cid= links or Place IDs. Up to 1000. |
Extra data (works in every mode)
| Parameter | Type | Description |
|---|---|---|
includePlaceDetails | Boolean | Adds opening hours, attributes, popular times, plus codes and the full photo gallery. |
scrapeEmails | Boolean | Visits each business website and extracts emails + social profiles. |
Everything else is tuned for you and needs no configuration: residential proxies in the selected country are always on, each business keeps up to 10 photo URLs, and contact discovery checks the homepage plus 2 contact pages.
Example: find every dentist in Milan with their contacts
{"mode": "search","categories": ["Dentists"],"location": "Milan, Italy","searchRadius": "city","maxPlaces": 200,"includePlaceDetails": true,"scrapeEmails": true,"language": "en","country": "it"}
Each place then carries:
{"name": "Ezio Costa Clinic","phone": "+390458000000","website": "https://www.clinicaeziocosta.it/","domain": "clinicaeziocosta.it","emails": ["info@clinicaeziocosta.it"],"socialProfiles": {"facebook": "https://www.facebook.com/clinicaeziocosta","instagram": "https://www.instagram.com/clinicaeziocosta/","linkedin": "https://www.linkedin.com/company/โฆ"}}
Output
Every dataset item is one business:
{"placeId": "ChIJifIePKtZwokRVZ-UdRGkZzs","featureId": "0x89c259ab3c1ef289:0x3b67a41175949f55","cid": "4280570365733019477","name": "Joe's Pizza Broadway","description": "Modern outpost of a longtime counter-serve pizza joint prepping New York-style slices and pies.","category": "Pizza restaurant","categories": ["Pizza restaurant", "Pizza delivery", "Restaurant"],"rating": 4.4,"reviewsCount": 26271,"reviewsDistribution": { "oneStar": 805, "twoStar": 631, "threeStar": 2186, "fourStar": 5093, "fiveStar": 17556 },"priceLevel": "$10โ20","priceRange": "$10 to $20","phone": "+16465594878","phoneFormatted": "(646) 559-4878","website": "https://www.joespizzanyc.com/","domain": "joespizzanyc.com","menuUrl": "https://eat.chownow.com/order/11015/locations/19488","address": "1435 Broadway, New York, NY 10018","street": "1435 Broadway","neighborhood": "Manhattan","city": "New York","postalCode": "10018","state": "New York","countryCode": "US","plusCode": "87G8Q237+V5","latitude": 40.7546795,"longitude": -73.9870291,"timezone": "America/New_York","openingHours": [{ "day": "Friday", "hours": ["10 AMโ5 AM"] }],"openingStatus": "Closed ยท Opens 10 AM","permanentlyClosed": false,"popularTimes": [{ "day": 7, "hours": [{ "hour": 12, "occupancyPercent": 62, "description": "Usually a little busy" }] }],"attributes": {"service_options": { "label": "Service options", "values": ["Outdoor seating", "Delivery", "Takeout", "Dine-in"] },"accessibility": { "label": "Accessibility", "values": ["Wheelchair accessible entrance"] }},"imageUrl": "https://lh3.googleusercontent.com/โฆ","images": ["https://lh3.googleusercontent.com/โฆ"],"url": "https://www.google.com/maps/place/Joe's+Pizza+Broadway/data=โฆ","searchTerm": "pizza restaurant"}
How to use it
- Click Try for free / Start.
- Choose a mode: search by keyword, or paste Maps URLs.
- For searches, pick a category preset and type a location.
- Run it, then download JSON/CSV/Excel or read the dataset over the API.
Schedule recurring runs with Apify Schedules for weekly market snapshots or a nightly refresh of your lead list.
Integrations
- n8n โ trigger scrapes from any workflow and route results to a database, CRM or Slack.
- Make โ no-code lead-capture scenarios.
- Zapier โ push new places into Google Sheets, Airtable or your CRM.
- Webhooks & API โ get notified on run completion and pull the dataset into your own stack.
- MCP / AI agents โ expose this Actor as a tool to Claude, GPT and other agents via the Apify MCP server.
Pricing
This Actor is billed per result, so you pay for what you actually get:
| Event | Charged when |
|---|---|
actor-start | Once per run. |
place-scraped | For each business returned. |
place-with-contacts | Instead of place-scraped, when Find emails and social profiles is on โ that result also cost a crawl of the business website. |
A business is billed as either place-scraped or place-with-contacts, never both, so there is always exactly one charge per result row. Set Max total charge on the run to cap your spend: the Actor stops cleanly at the limit and keeps everything collected up to that point.
FAQ
Do I need a Google Maps API key? No. This Actor reads publicly visible Google Maps data directly โ no API key, no quota, no billing account.
Is scraping Google Maps legal? This Actor only collects information that Google Maps shows publicly to any visitor. Some of it โ a business email that carries a personal name, for instance โ is still personal data, so make sure your use complies with GDPR, CCPA and any other rules that apply to you.
How many places can one search return? Up to 5000 per keyword. Google itself stops at roughly 250 results for any one query over any one area, no matter how the request is paged โ that is Google's ceiling, not the Actor's. To go past it the Actor splits the search area into quadrants and searches each one separately, splitting again wherever an area is still producing businesses it has not seen, and de-duplicates the results. Set a Location for this to work: a country-wide search with no location is a single area and stays subject to Google's ~250 ceiling.
Do I need proxies? No. Residential proxies in your selected country are used by default and are what keeps Google's responses complete.
Can I get emails?
Yes โ turn on Find emails and social profiles. Google Maps itself never publishes email addresses, so the Actor opens each business's own website (homepage plus its contact pages) and extracts addresses from mailto: links and page text, together with Facebook, Instagram, LinkedIn, X, YouTube, TikTok and Pinterest profiles. Addresses on the business's own domain are listed first, ahead of any privacy-vendor or agency addresses that also appear on contact pages. Expect roughly 40โ60% coverage across a mixed list: many businesses publish only a contact form, and around a third of Google Maps listings have no website at all.
Is collecting business emails allowed?
Emails found this way are published by the businesses themselves, but they can still be personal data โ mario.rossi@studio.it identifies a person. Under GDPR you need a lawful basis to contact them, you must identify yourself and offer an opt-out, and ePrivacy rules on unsolicited email apply in the EU. Use it for legitimate B2B outreach, not bulk spam.
Related Actors you'll love
- ๐ Google Search Results Scraper โ clean, structured SERP data at the lowest price on Apify.
- ๐ฎ Google Search Autocomplete Scraper โ autocomplete suggestions with position and relevance metadata.
- ๐งจ Keyword Shitter โ Autocomplete Keyword Scraper โ turn one seed keyword into thousands of long-tail ideas.
- ๐ค GEO Audit โ AI Search Optimization Checker โ see how visible your pages are to AI search engines.
- ๐ Website URL Extractor โ extract every URL from the domains you discover here.
Built for speed, scale and clean data. If this Actor saves you time, a โญ review helps a lot โ and if you need a custom field or a new mode, open an issue on the Actor page.