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

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

Pricing

from $0.00005 / actor start

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, category, phone, website, opening hours, Place ID and GPS - and optionally emails and social profiles from each business website. No proxies. Export CSV, JSON, Excel.

Pricing

from $0.00005 / actor start

Rating

0.0

(0)

Developer

Zaver

Zaver

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

13 days ago

Last modified

Categories

Share

Scrape Google Maps at scale - businesses with ratings, phone, website, opening hours, Place ID and GPS. Scrape Google Maps places for any list of queries and export them as CSV, JSON or Excel - with country (gl), language (hl) and date-range filters and pagination. No proxies, no CAPTCHAs, no browser to babysit: every request goes through a hosted Google API, so results are fast and complete.

⭐ $2.49 / 1,000 places · bulk queries · country + language + date filters · pagination · pay only per row · CSV/JSON/Excel · API & MCP ready.

What data does it extract?

One row per result with: title, address, latitude, longitude, rating, ratingCount, priceLevel, type/types, phoneNumber, website, openingHours, placeId, cid, fid, thumbnailUrl, position - plus the query, page and result type each row came from, so multi-query exports stay separable. Everything Google returns for the item is passed through, so new fields appear automatically.

Get emails and social profiles for every business

Google shows a business's phone and website, but not its email. Turn on Get emails and social profiles and the Actor visits each business website and adds:

FieldDescription
email, emailsThe best email address, and every address found, the business's own domain first
facebook, instagram, linkedin, twitter, youtube, tiktok, pinterest, whatsapp, telegramLinks to the business's social profiles
websitePhonesExtra phone numbers from the site's call links
contactStatusemail_found, social_only, none, unreachable, no_website or website_is_social

It reads the home page and the contact, imprint or about page, including addresses hidden by Cloudflare email protection or written as name [at] domain [dot] com. This turns a list of places into a Google Maps email extractor: a lead list you can contact.

You pay for this only when it works. A business is charged the contact rate when the website scan finds an email address. Social profiles and phone numbers found without an email are free, and so are businesses with no website, an unreachable site, or nothing to find.

Why choose this scraper

  • 💸 Cheap - a flat $2.49 / 1,000 places, billed per row delivered. A query that returns nothing costs nothing.
  • 🌍 Localised - gl (country) and hl (language) give you the results a real user in that market sees; dateRange restricts to the past hour, day, week, month or year.
  • 📦 Bulk & deep - up to 1,000 queries per run, maxPages to go deeper.
  • ⚡ Reliable - no proxies, no CAPTCHAs, no rate-limit roulette; results come from a hosted Google search API.
  • 🔌 Automate - Apify API, MCP server, schedules, Make, Zapier, n8n.

How to use it

  1. Paste your queries into queries (one per line).
  2. Optionally set gl (e.g. in, us, th), hl (e.g. hi, en), dateRange (qdr:d = past day, qdr:w = past week, qdr:m, qdr:y, qdr:h), plus ll / placeId / cid.
  3. Set maxPages for depth.
  4. Turn on Get emails and social profiles if you want contact details for each business.
  5. Run and download as CSV, JSON or Excel - or pull via the API.

Input example

{
"queries": ["influencer goa"],
"ll": "@15.2993,74.1240,12z", "hl": "en", "maxPages": 3
}
FieldTypeDescription
queriesarrayRequired. Search queries, one per line.
glstringCountry code (us, in, th, gb...).
hlstringLanguage code (en, hi, th, es...).
dateRangestringqdr:h / qdr:d / qdr:w / qdr:m / qdr:y for past hour/day/week/month/year.
llstringMap centre + zoom: @lat,lng,zoom (e.g. @15.2993,74.1240,12z).
placeIdstringTarget one place by Google Place ID.
cidstringTarget one place by Google Maps CID.
maxPagesintegerPages per query (default 1).
includeContactsbooleanScan each business website for emails and social profiles (default off).

Pricing

EventCharged forPrice
place-resulteach place delivered$2.49 / 1,000 places
contacts-foundoptional: each place where the website scan found an email address$1.99 / 1,000 places
  • 1,000 places, place data only → $2.49
  • 1,000 places with contacts found for 400 of them → $3.29

Only delivered rows are billed; queries that error or return nothing cost nothing. The contact rate applies only with Get emails and social profiles on, and only to places where an email was found.

Use cases

Lead lists of local businesses with phone, website and GPS

Lead lists of local businesses with phone, website and GPS

Competitor density and rating benchmarks by neighbourhood

Competitor density and rating benchmarks by neighbourhood

Store-locator and POI datasets for apps and analysis

Store-locator and POI datasets for apps and analysis

Franchise and expansion research by map area

Franchise and expansion research by map area

Monitoring ratings and review counts over time

Monitoring ratings and review counts over time

FAQ

Does it find email addresses? Yes, when you turn on Get emails and social profiles. The Actor scans each business website for emails and social links. Expect an email for roughly a third to a half of businesses that have a website; many small businesses only offer a contact form.

Why does a business have no email? It has no website on Google, the site could not be reached, or the site does not publish an address. contactStatus tells you which. None of those cases is charged the contact rate, even when social profiles were found.

Is scraping Google Maps legal? This is general information, not legal advice. The Actor collects business listings that Google shows publicly, and contact details that businesses publish on their own websites. Business contact data can still be personal data under laws such as GDPR when it identifies a person, and email marketing is regulated in most countries. Collect only what you need, follow the rules for cold outreach where your recipients are, and ask a lawyer before building a commercial product on the data.

Do I need proxies or a Google account? No. Requests go through a hosted Google search API - nothing to configure.

Can I get localised results? Yes - set gl for the country and hl for the language, exactly as a user in that market would see them.

How do I limit to recent results? Set dateRange to qdr:d (past 24h), qdr:w, qdr:m or qdr:y.

How many results per query? Google's own limit applies; use maxPages to page deeper.

Can I schedule it? Yes - Apify schedules, the API, or the MCP server.

🔌 Use this Actor from Claude, ChatGPT or Cursor (MCP)

Add it as a tool in any MCP client - Claude Code, Claude Desktop, Cursor, VS Code or ChatGPT - through Apify's hosted MCP server. The client runs the Actor for you and reads the results back, so you never leave the chat.

Actor-specific server URL

https://mcp.apify.com/?tools=actors,docs,zaver.api/google-maps-scraper

Claude Code - one command:

$claude mcp add --transport http googlemaps "https://mcp.apify.com/?tools=actors,docs,zaver.api/google-maps-scraper"

Claude Desktop, Cursor or any client with a JSON config:

{
"mcpServers": {
"googlemaps": {
"url": "https://mcp.apify.com/?tools=actors,docs,zaver.api/google-maps-scraper"
}
}
}

The first connection opens a browser to sign in to Apify, so no API token sits in your config. If your client cannot do OAuth, send Authorization: Bearer <YOUR_APIFY_TOKEN> instead.

Then simply ask:

Find dentists in Manhattan with phone numbers and websites


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