Google Maps Scraper - Places, Ratings, Phone, Website & GPS avatar

Google Maps Scraper - Places, Ratings, Phone, Website & GPS

Pricing

from $2.49 / 1,000 place rows

Go to Apify Store
Google Maps Scraper - Places, Ratings, Phone, Website & GPS

Google Maps Scraper - Places, Ratings, Phone, Website & GPS

Just $2.49 per 1,000 places. Scrape Google Maps for any query - business name, address, rating, reviews count, category, phone, website, opening hours, Place ID and GPS - with a map position/zoom, language and pagination. No proxies. Export CSV, JSON, Excel.

Pricing

from $2.49 / 1,000 place rows

Rating

0.0

(0)

Developer

Zaver

Zaver

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Scrape Google Maps places with the fields that matter for outreach and analysis - phone, website, opening hours, rating, review count, Place ID and exact coordinates. Target a query, a map area by coordinates, or a single place by ID.

⭐ map-area targeting · phone, website & opening hours · Place ID + CID · GPS coordinates · pay per row delivered · CSV/JSON/Excel · API, MCP & schedules

What data does it extract?

One row per place, with the query, page and type it came from so multi-query exports stay separable. Fields Google does not return for an item are simply absent, and any new field Google adds is passed through automatically.

FieldDescription
titleBusiness name
addressFull address
latitudeLatitude
longitudeLongitude
ratingAverage star rating
ratingCountNumber of reviews
item_typeGoogle's own category value (renamed so it cannot clash with the row type)
typesAll Google categories for the place
phoneNumberPhone, where listed
websiteWebsite, where listed
openingHoursOpening hours per day
placeIdGoogle Place ID
cidGoogle customer ID
thumbnailUrlListing photo
positionRank within the page
queryThe query this row came from
pageWhich results page it came from

Example output

{
"query": "coffee shop new york",
"page": 1,
"type": "place",
"position": 1,
"title": "787 coffee",
"address": "245 W 46th St, New York, NY 10036",
"latitude": 40.7597441,
"longitude": -73.9875048,
"rating": 4.9,
"ratingCount": 3585,
"item_type": "Coffee shop",
"types": [
"Coffee shop"
]
}

How to use it

  1. Paste your queries into queries - one per line.
  2. Set the options you need from the table below.
  3. Run it, then download the dataset as CSV, Excel, JSON, JSONL or XML - or read it straight from the Apify API.

Input example

{
"queries": [
"coffee shop",
"gym"
],
"ll": "@40.7128,-74.0060,12z",
"hl": "en",
"maxPages": 5
}
OptionTypeDescription
queriesarrayRequired. Search queries, one per line.
llstringMap centre and zoom - @40.7128,-74.0060,12z. Required to page beyond page 1.
placeIdstringFetch one specific place by Google Place ID.
cidstringFetch one specific place by Google Maps CID.
glstringCountry code - us, in, gb, de...
hlstringLanguage code - en, hi, es...
maxPagesintegerPages per query, default 1. Each page is one request.

Pricing

EventPrice
place-result$2.49 per 1,000 places ($0.00249 per place)

1,000 places → $2.49 · 10,000 → $24.90 · 100,000 → $249.00

You are billed per row delivered, as it is delivered. Queries that fail or return nothing cost you nothing, and an interrupted run only ever bills the rows already in your dataset.

Use cases

Build outreach lists of local businesses with phone and website

Maps carries phone, site and opening hours in one row - everything a cold-call or local-service campaign needs, with GPS for routing.

Sweep a city area by area

Move the ll centre across a grid of coordinates to cover a metro systematically instead of hoping one query returns everything.

Benchmark competitor density and ratings by neighbourhood

Compare how many places rank per area and what they score, to spot saturated and thin markets.

Create store-locator and POI datasets

Coordinates, Place ID and categories give you a clean base layer for an app or analysis.

Monitor ratings and review counts over time

Schedule the same query set and track rating and ratingCount drift per placeId.

Good to know

  • Set ll when maxPages > 1 - Google requires a map centre for paginated Maps search.
  • About 20 places per page; each page is one request.
  • There is no date filter for Maps results; recency options do not apply here.

Frequently asked questions

Do I need proxies, an API key or a Google account?

No. Requests run through hosted Google search infrastructure on our side - nothing to configure.

Why do I need ll and what does it do?

ll sets the map centre and zoom, for example @40.7128,-74.0060,12z. Google requires it to return page 2 and beyond, so set ll whenever maxPages is above 1 - without it, deeper pages return an error instead of places.

How many places can I get per query?

About 20 per page. Depth comes from maxPages with ll set; for large areas, move the ll centre across a grid of points rather than paging very deep.

Can I scrape one specific business?

Yes - pass placeId or cid to fetch a single listing, which is the cheapest way to refresh records you already hold.

Do I get emails or reviews?

Neither. Maps exposes phone, website and hours; review text and emails are separate products. Feed the website column into a contact extractor for emails.

How is this different from the Google Places Scraper?

Maps adds opening hours, Place ID and map-area targeting by coordinates. Places reads Google's local search results and is simpler for plain "service + city" prospecting.

How do I export Google Maps data to CSV or Excel?

Download the run's dataset as CSV, Excel, JSON, JSONL or XML, or read it via the Apify API.

Am I charged for queries that return no places?

No. Billing is per row delivered.


Not affiliated with or endorsed by Google. Returns publicly available search results.