Google Maps Business Scraper - Name, Rating, Address avatar

Google Maps Business Scraper - Name, Rating, Address

Pricing

from $4.95 / 1,000 places

Go to Apify Store
Google Maps Business Scraper - Name, Rating, Address

Google Maps Business Scraper - Name, Rating, Address

Scrape Google Maps businesses for any search and location: name, address, phone, website, category, rating, review count and coordinates. No login or Google API key needed. For lead generation and local-market research. $9 per 1,000 places.

Pricing

from $4.95 / 1,000 places

Rating

0.0

(0)

Developer

Khandji Omar

Khandji Omar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

5 days ago

Last modified

Security

Limited permissions

Share

Google Maps Business Scraper — Name, Rating, Address

Scrape Google Maps businesses for any search and location: name, address, phone, website, category, rating, review count and coordinates. Export to JSON, CSV or Excel, or call it from the API, n8n or Make. No login or Google API key needed. For lead generation and local-market research.

Price: $9 per 1,000 places ($0.009 per place). The first 10 results of every run are free.

In short: what you give, what you get, what it costs

You giveA search and a place, such as dentist in Montreal
We doSearch Google Maps and read each business, and compare with your last run
You getOne row per place: name, category, rating, review count, address, phone, website, opening status, coordinates, place ID and link
It costs$9 per 1,000 places, no start fee. From 16 November 2026: +$0.001 per run. Optional scheduled monitoring: +$0.10 per check (one-off runs never pay it). Apify also bills the supplier Actor kaix/google-maps-places-scraper that this robot runs for you, at its own price (about $0.08 per 1,000 results). The first 10 results of every run are free of this robot's fee.
It does notNeed a Google API key or sign in to Google

A real result row is shown further down this page.

Free tier — 10 results free on every run

The free results waive this Actor's own fee; the source Actor (kaix/google-maps-places-scraper) still bills its own price for every row it returns.

The first 10 results of every run are free, on every run you ever make — not a one-off trial. Run it on your own subjects and see the real output before you are billed for a single result.

One guard: the free allowance never covers more than half of a run, so a run returning 6 results gets 3 free. That keeps the offer sustainable.

What it does

Run it once and get the full, current data as clean rows you can export to JSON, CSV or Excel, or pull through the API. Need only fresh data? Turn on monitorEnabled and schedule it: every later run returns only what is new or changed since the previous one, so you never re-download or re-pay for the same rows.

Compared with buff_pineapple/google-maps-scraper

Read on the Store on 2026-10-23 (Google Maps Scraper - Business Data, Reviews & Leads). Where it does better, this section says so.

  • Data source: this Actor runs kaix/google-maps-places-scraper for you, then cleans and checks every row.
  • Only here (fields its Store page does not list): change_type (new or changed since your last scheduled run); why_it_matters (one-line reading of the row).
  • This Actor's fee is free on the first results of every run, and a hard cost cap (maxTotalChargeUsd) limits it.
  • Price: about $9.08 per 1,000 in total here ($9 for this Actor + $0.08 for kaix/google-maps-places-scraper), $4 at buff_pineapple/google-maps-scraper.

Why this scraper

  1. Try before you pay. The first 10 results of every run are free, on every run.
  2. Pay only for data delivered. Failed sources and failed inputs are never billed.
  3. Hard cost cap. Set maxTotalChargeUsd and a run can never cost more than you allow.
  4. Only-new mode. With monitorEnabled on a schedule, you get just the new or changed rows, plus a spike signal when volume suddenly jumps.
  5. Clean, normalized rows with the same field names every run, plus a RUN_SUMMARY.json — ready for spreadsheets, databases, n8n/Make/Zapier and AI agents (MCP).

Example input

{
"placeUrls": [
"https://www.google.com/maps/place/?q=place_id:ChIJN1t_tDeuEmsRUsoyG83frY4"
],
"maxTotalChargeUsd": 1.0
}

This returns the full current data right away. To receive only what is new on a schedule, add "monitorEnabled": true: the first monitored run stores a free baseline, later runs return only new or changed rows. Pin a monitorId to keep separate targets from sharing state.

Output

Each row is one business on Google Maps. A real row from a run on Apify (long texts are cut here and people's names hidden; your dataset has them in full):

A real row from this Actor's latest run on Apify (2026-10-25; long texts are cut and people's names hidden here, your dataset has them in full):

{
"place_id": "ChIJN1t_tDeuEmsRUsoyG83frY4",
"title": "Google Sydney - Pirrama Road",
"rating": 4.1,
"reviews_count": 1220,
"address": "Ground Floor/48 Pirrama Rd, Pyrmont NSW 2009, Australia",
"categories": [
"Corporate office",
"Software company"
],
"hours_fingerprint": "v2:1d946720afe77823",
"permanently_closed": false,
"temporarily_closed": false,
"formattedAddress": "Ground Floor/48 Pirrama Rd, Pyrmont NSW 2009, Australia",
"shortAddress": "Google Sydney - Pirrama Road, Ground Floor/48 Pirrama Rd, Pyrmont",
"street": "Ground Floor/48 Pirrama Rd",
"city": "Pyrmont",
"postalCode": "2009",
"state": "NSW",
"countryCode": "AU",
"latitude": -33.866489,
"longitude": 151.1958561,
"timezone": "Australia/Sydney",
"area": "Pyrmont NSW, Australia",
"entranceLatitude": -33.866489,
"entranceLongitude": 151.1958561,
"plusCode": "4RRH45MW+C8",
"utcOffsetMinutes": 660,
"adrFormatAddress": "Ground Floor/<span class=\"street-address\">48 Pirrama Rd</span>, <span class=\"locality\">Pyrmont</span> <span class=\"region\">NSW</span> <sp...",
"placeId": "ChIJN1t_tDeuEmsRUsoyG83frY4",
"dataId": "0x6b12ae37b47f5b37:0x8eaddfcd1b32ca52",
"website": "http://google.com/",
"phone": "(hidden here)",
"phoneIntl": "(hidden here)",
"phone2": "(hidden here)",
"phoneIntl2": "(hidden here)",
"hoursStatus": "Closed · Opens 8:30 AM Mon",
"isOpenNow": false,
"googleMapsUri": "https://www.google.com/maps/place/Google+Sydney+-+Pirrama+Road,+Ground+Floor%2F48+Pirrama+Rd,+Pyrmont+NSW+2009,+Australia/@-33.866489,151...",
"profileImageUrl": "https://lh6.googleusercontent.com/-G07I17q8WY8/AAAAAAAAAAI/AAAAAAAAAAA/vCgGhXTAdKc/s44-p-k-no-ns-nd/photo.jpg",
"ownerId": "(hidden here)",
"cid": "10281119596374313554",
"knowledgeGraphId": "/g/1td76qvq",
"businessType": "corporate_office",
"primaryType": "corporate_office",
"primaryTypeDisplayName": "(hidden here)",
"isClaimed": true,
"reviewCount": 1220,
"reviewsLink": "https://search.google.com/local/reviews?placeid=ChIJN1t_tDeuEmsRUsoyG83frY4&authuser=0&hl=en&gl=US",
"reviewsSummary": "1,220 reviews",
"businessStatus": "OPERATIONAL",
"websiteDomain": "google.com",
"placeTypes": [
"corporate_office",
"point_of_interest"
],
"reviewHighlights": [
"Amazing office space, staff are a friendly and hard working group.",
"A brilliant atmosphere and welcoming people a great place to visit or work."
],
"photoTier": 4,
"rank": 1,
"isAdvertisement": false,
"reviewsPerRating": [
217,
20
],
"ownerName": "(hidden here)",
"ownerLink": "https://www.google.com/maps/contrib/111337342022929067349",
"isVerified": true,
"coverPhotoUrl": "https://lh3.googleusercontent.com/grass-cs/AABkmLcMbOjbN3REJiDHGBw3PnYjiOLdK510oHT9ZJ85m8F5TqmoCLWuns5Zys4R20G8FjMafpArfn7dHH0hUlojIqvBdB...",
"streetViewUrl": "https://lh3.googleusercontent.com/grass-cs/AABkmLfL0svUlpAfHfHxTTjwMOE-qe-sAYJsYKWt3zDpcrvFGZcZIAE7EszuL_7ekMvqJJomTm10OgMLlcgZEf4cIdMvnI...",
"streetViewPanoId": "CIHM0ogKEICAgIDE0L3blgE",
"imagesCount": 23,
"totalPhotoCount": 1940,
"imageCategories": [
"All",
"Latest"
],
"googleCategoryId": "gcid:corporate_office",
"googleMapsTypeLabel": "Corporate office",
"iconBackgroundColor": "#78909C",
"iconMaskBaseUri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet",
"pureServiceAreaBusiness": false,
"viewport_low_latitude": -33.8682092302915,
"viewport_low_longitude": 151.1944176697085,
"viewport_high_latitude": -33.8655112697085,
"viewport_high_longitude": 151.19711563029148,
"serviceOptions_restroom": true,
"serviceOptions_wheelchairAccessibleEntrance": true,
"serviceOptions_wheelchairAccessibleParking": true,
"serviceOptions_wheelchairAccessibleRestroom": true,
"serviceOptions_onsiteServices": true,
"accessibilityOptions_wheelchairAccessibleParking": true,
"accessibilityOptions_wheelchairAccessibleEntrance": true,
"accessibilityOptions_wheelchairAccessibleRestroom": true,
"googleMapsLinks_directionsUri": "https://www.google.com/maps/dir//''/data=!4m7!4m6!1m1!4e2!1m2!1m1!1s0x6b12ae37b47f5b37:0x8eaddfcd1b32ca52!3e0?g_mp=CiVnb29nbGUubWFwcy5wbG...",
"googleMapsLinks_placeUri": "https://maps.google.com/?cid=10281119596374313554&g_mp=CiVnb29nbGUubWFwcy5wbGFjZXMudjEuUGxhY2VzLkdldFBsYWNlEAIYBCAA",
"googleMapsLinks_writeAReviewUri": "https://www.google.com/maps/place//data=!4m3!3m2!1s0x6b12ae37b47f5b37:0x8eaddfcd1b32ca52!12e1?g_mp=CiVnb29nbGUubWFwcy5wbGFjZXMudjEuUGxhY2...",
"googleMapsLinks_reviewsUri": "https://www.google.com/maps/place//data=!4m4!3m3!1s0x6b12ae37b47f5b37:0x8eaddfcd1b32ca52!9m1!1b1?g_mp=CiVnb29nbGUubWFwcy5wbGFjZXMudjEuUGx...",
"googleMapsLinks_photosUri": "https://www.google.com/maps/place//data=!4m3!3m2!1s0x6b12ae37b47f5b37:0x8eaddfcd1b32ca52!10e5?g_mp=CiVnb29nbGUubWFwcy5wbGFjZXMudjEuUGxhY2...",
"meta_scrapedAt": "2026-10-25T03:16:11.036Z",
"record_id": "ChIJN1t_tDeuEmsRUsoyG83frY4",
"change_type": "new",
"why_it_matters": "New positive review — no action needed."
}
FieldWhat it holds
titlebusiness name
categoryNamemain category
ratingaverage rating
reviews_countnumber of reviews
addressfull address
phonephone
websitewebsite
claimThisBusinesstrue when the owner has not claimed the profile (a sales lead)
permanently_closedclosed for good
imagesCountphotos on the profile
plusCodeGoogle plus code
placeIdGoogle place ID
urlMaps link

Each row also keeps the other fields the source returns, so you get everything above and more. In the Output tab, the Overview table shows these columns, readable without any code; export them as CSV, Excel, JSON or HTML.

Every field

FieldWhat it holds
place_idplace id
titletitle
ratingrating
reviews_countreviews count
addressaddress
categoriescategories
hours_fingerprinthours fingerprint
permanently_closedpermanently closed
temporarily_closedtemporarily closed
formattedAddressformatted address
shortAddressshort address
streetstreet
citycity
postalCodepostal code
statestate
countryCodecountry code
latitudelatitude
longitudelongitude
timezonetimezone
areaarea
entranceLatitudeentrance latitude
entranceLongitudeentrance longitude
plusCodeplus code
utcOffsetMinutesutc offset minutes
adrFormatAddressadr format address
placeIdplace id
dataIddata id
websitewebsite
phonephone
phoneIntlphone intl
phone2phone2
phoneIntl2phone intl2
hoursStatushours status
isOpenNowis open now
googleMapsUrigoogle maps uri
profileImageUrlprofile image url
ownerIdowner id
cidcid
knowledgeGraphIdknowledge graph id
businessTypebusiness type
primaryTypeprimary type
primaryTypeDisplayNameprimary type display name
isClaimedis claimed
reviewCountreview count
reviewsLinkreviews link
reviewsSummaryreviews summary
businessStatusbusiness status
websiteDomainwebsite domain
placeTypesplace types
reviewHighlightsreview highlights
photoTierphoto tier
rankrank
isAdvertisementis advertisement
reviewsPerRatingreviews per rating
ownerNameowner name
ownerLinkowner link
isVerifiedis verified
coverPhotoUrlcover photo url
streetViewUrlstreet view url
streetViewPanoIdstreet view pano id
imagesCountimages count
totalPhotoCounttotal photo count
imageCategoriesimage categories
googleCategoryIdgoogle category id
googleMapsTypeLabelgoogle maps type label
iconBackgroundColoricon background color
iconMaskBaseUriicon mask base uri
pureServiceAreaBusinesspure service area business
viewport_low_latitudeviewport low latitude
viewport_low_longitudeviewport low longitude
viewport_high_latitudeviewport high latitude
viewport_high_longitudeviewport high longitude
serviceOptions_restroomservice options restroom
serviceOptions_wheelchairAccessibleEntranceservice options wheelchair accessible entrance
serviceOptions_wheelchairAccessibleParkingservice options wheelchair accessible parking
serviceOptions_wheelchairAccessibleRestroomservice options wheelchair accessible restroom
serviceOptions_onsiteServicesservice options onsite services
accessibilityOptions_wheelchairAccessibleParkingaccessibility options wheelchair accessible parking
accessibilityOptions_wheelchairAccessibleEntranceaccessibility options wheelchair accessible entrance
accessibilityOptions_wheelchairAccessibleRestroomaccessibility options wheelchair accessible restroom
googleMapsLinks_directionsUrigoogle maps links directions uri
googleMapsLinks_placeUrigoogle maps links place uri
googleMapsLinks_writeAReviewUrigoogle maps links write areview uri
googleMapsLinks_reviewsUrigoogle maps links reviews uri
googleMapsLinks_photosUrigoogle maps links photos uri
meta_scrapedAtmeta scraped at
record_idrecord id
change_typechange type
why_it_matterswhy it matters

How you're charged

  • Source Actor charge: this Actor runs kaix/google-maps-places-scraper inside your run, and Apify bills that run to your account at kaix/google-maps-places-scraper's own price (about $0.08 per 1,000 results, read on 2026-10-23), on top of this Actor's price. Each call to it is capped at $0.50.
  • Place — $0.009 per place ($9 per 1,000), billed for each place delivered to your dataset. With scheduled monitoring on, only places that are new or changed since the last check are delivered and billed.
  • Scheduled monitoring check ($0.10) — only when you turn on scheduled monitoring (monitorEnabled), once per target per run, and only when the source responded. One-off runs never pay it: you pay only per result.
  • One-off runs pay only per result. The monitoring check applies only to scheduled monitoring; every upstream call is capped, so a run can never cost more than you allow.

How to use it in 3 steps

  1. Click Try for free and fill in Google Maps place URLs (placeUrls).
  2. Optional: adjust the other fields; every one has a description and a sensible default.
  3. Click Start and download the results as JSON, CSV or Excel, or read them from the API.

Use cases

  • Lead generation
  • Local-market research

Use it from code (API)

Every Apify Actor is an API. Start a run and read the results with one call.

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("om_kh/google-maps-business-scraper").call(run_input={"placeUrls": ["https://www.google.com/maps/place/?q=place_id:ChIJN1t_tDeuEmsRUsoyG83frY4"]})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('om_kh/google-maps-business-scraper').call({
"placeUrls": [
"https://www.google.com/maps/place/?q=place_id:ChIJN1t_tDeuEmsRUsoyG83frY4"
]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

One HTTP call (cURL) — runs the Actor and returns the dataset in the same response:

curl -X POST "https://api.apify.com/v2/acts/om_kh~google-maps-business-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"placeUrls": ["https://www.google.com/maps/place/?q=place_id:ChIJN1t_tDeuEmsRUsoyG83frY4"]}'

Integrations: n8n, Make, Zapier, Google Sheets

  • n8n — the official Apify node, operation Run Actor and get dataset, Actor om_kh/google-maps-business-scraper.
  • Make — Apify › Run an Actor, then Apify › Get Dataset Items.
  • Zapier — Apify › Run Actor; map the dataset items into your next step.
  • Google Sheets, webhooks, Slack — add an integration from the Integrations tab of this Actor.
  • Schedules — run it every hour or day from Schedules in Apify Console.

Use it from an AI agent (MCP and x402)

Connect Claude Desktop, Cursor, VS Code or any MCP client to Apify's MCP server at https://mcp.apify.com and add this Actor, om_kh/google-maps-business-scraper, as a tool — the agent passes the same JSON as the run input and gets the dataset back.

AI agents that pay with x402 can run it too, without an Apify account: the Actor charges only per result delivered, so an agent pays exactly for what it gets.

FAQ

Is it legal to scrape Google Maps Business? This Actor collects only publicly available Google Maps Business data and never logs in. You are responsible for how you use it; check Google Maps Business's terms and your local law (GDPR, CCPA) if you store personal data, and ask a lawyer if unsure.

Do I need an account, cookies or an API key? No. You only need an Apify account to run it.

What data do I get? Businesses with name, address, phone, website, rating and reviews count. Download it as JSON, CSV, Excel, HTML or XML, or read it from the API.

Am I charged when something fails? No. An input that fails is listed with its reason in the run summary and is never charged.

Can I run it on a schedule? Yes. Create a schedule in Apify Console (hourly, daily, weekly) and connect webhooks, Google Sheets, Slack, n8n, Make or Zapier.

Can I use it from Python, JavaScript or an AI agent? Yes: see the code samples above, or connect AI agents through MCP with the google_maps_business_check tool.

All input fields

The main fields are described above; these are the others the form accepts:

  • currentPlaces (Current places (advanced)) — Bring your own place records (e.g. from a prior Google Maps scraper run) instead of Vigia fetching them.
  • locationQuery (Location (for search queries)) — City/region to search in, e.g. "Montreal, Canada". Only used with searchQueries.
  • searchQueries (Search queries (advanced)) — Alternative to placeUrls: search terms, e.g. "coffee shop" combined with a location.

Your feedback

Did this Actor save you time? A short review on the Reviews tab helps other people find it, and every review is read. Something missing or broken? Open an issue on the Issues tab: it is answered and fixed fast.

More Actors from the same author