EN
Test it for free Login
Google Maps listings, ratings and reviews in JSON

Google Maps Scraper API

One Google Maps search, every listing it returns: name, category, address, website, rating, review count and opening hours, with the rank of each listing.

  • 1000 free requests
  • No credit card

What each listing returns

Listings come in Google Maps order, with the following fields.

FieldDescription
rank_type, rank_serpRank of the listing in the results
titleBusiness name
cidGoogle ID (CID) of the listing
typeBusiness category (e.g. Restaurant)
addressPostal address
websiteBusiness website
ratingAverage rating out of 5
reviewsNumber of reviews
status_label, status_detailOpening status (Open, Closed) and its detail, such as opening hours
commentSnippet shown on the listing
imagesList of the listing's images

Geolocated down to the city

A search for “plumber” doesn't return the same listings in Boston and in Denver. The geolocation parameter places the search in the city of your choice, so you see what a local searcher sees.

What for

Local SEO

Track the rank of your listings on your keywords, city by city, and spot the ones slipping.

Competitor monitoring

Compare the rating, review count and category of the businesses around you in the results.

Market research

List the businesses of a category in an area, with their address and website.

Request parameters

The same POST request to /v1/serp as for Google Search, with search_engine set to google_maps. Several keywords per call.

ParameterDescription
search_enginegoogle_maps
keywordThe search, e.g. “restaurant”
depthCollection depth, from 1 to 10
locationGoogle version, e.g. fr for google.fr or en for google.com
languageLanguage (e.g. en)
geolocationOptional: city, region and country separated by commas
priorityOptional: processing priority, from 1 to 10
callback_urlOptional: URL that receives the results once the search is processed

Build your request

curl -X POST 'https://api.semscraper.com/v1/serp' \
  -H 'Authorization: Bearer API_KEY' \
  -H 'Content-Type: application/json' \
  -d '[{"search_engine":"google_maps","keyword":"restaurant","location":"fr","language":"fr","depth":1,"geolocation":"Nice, Alpes-Maritimes, France"}]'

Pay per request

Same price as Google Search. No subscription: you top up your balance, and each search is deducted.

0.30 € per 1,000 searches, depth 1
+0.20 € per extra depth level, for 1,000 searches

1 to 10% discount depending on the amount topped up. Your balance never expires.

FAQ

Frequently asked questions

Is this the official Google Maps API?
No. Semscraper is not affiliated with Google and does not replace the Google Maps Platform APIs (maps, directions, geocoding). The API collects the public results of a Google Maps search and returns them structured.
Do you return the text of reviews?
The API returns the average rating, the review count and the snippet shown on the listing. It does not return the full text of each review.
Can I target a specific city?
Yes, with the geolocation parameter: give the city, region and country separated by commas, for example “Nice, Alpes-Maritimes, France”.
How is it different from the Google Search local pack?
The local pack only shows a few listings within the Google results page, and it is returned by the Google Search API. The Google Maps API returns the list of listings from the Google Maps search itself.

Ready to scrape Google Maps?

1,000 free requests, no credit card required.