Google Maps Scraper โ Emails, Reviews & Local Rank Grid
Pricing
from $0.70 / 1,000 google maps places
Google Maps Scraper โ Emails, Reviews & Local Rank Grid
Scrape Google Maps businesses with up to 134 fields on a live row: emails, phones, socials, reviews with owner replies, photos, hours and search rank. Also returns each website's tech stack and what it is missing, and a local rank grid showing where a business is invisible on its own map.
Pricing
from $0.70 / 1,000 google maps places
Rating
0.0
(0)
Developer
Kelopr_bk
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Google Maps Scraper | Leads, Emails & Reviews
Find the business. Get the contacts. Know who to pitch first.
Turn Google Maps searches, place URLs, Place IDs, and data IDs into sales-ready business records with public emails, phones, websites, social profiles, reviews, owner replies, opening hours, photos, search rank, and explainable lead intelligence โ plus two things place scrapers normally leave on the table: the technology each business runs on its own website, and a point-by-point map of where it actually ranks.
From $0.70 per 1,000 results on eligible Apify subscription tiers. Export everything as JSON, CSV, Excel, XML, or RSS.
This Actor is built for lead generation, local SEO research, reputation analysis, competitor discovery, directory creation, sales prospecting, and CRM enrichment. It combines place data, contact enrichment, review intelligence, and opportunity scoring in one structured dataset.
Examples below are fictional. Field availability depends on what each business publicly publishes, the selected mode, listing type, location, and requested limits.
Why use this Google Maps Scraper?
Most place datasets tell you what a business is. This Actor also helps answer:
- Can I contact this business?
- How complete is its digital presence?
- How strong is its reputation?
- Does it respond to customers?
- Where did it rank for my search?
- Where does it rank across its own neighbourhood, block by block?
- What is its website built on, and what is missing from it?
- Which businesses should my sales team contact first?
You get the source-backed fields and the derived decision signals in the same row, ready for filtering or export.
What you get
Business and location data
- Business name, subtitle, primary category, and all available categories
- Full address, neighborhood, street, city, state, postal code, and country
- Latitude, longitude, time zone, Plus Code, and location context
- Google Maps URL, Place ID, data ID, CID, and KGMID
- Business description, price level, owner name, and ownership signal when available
- Open, closed, temporarily closed, and permanently closed status signals
Emails, phones, and public profiles
- Primary phone and normalized phone
- Additional public phones and total phone count
- Website, display domain, public email addresses, and email count
- Facebook, Instagram, LinkedIn, X/Twitter, YouTube, TikTok, Pinterest, Discord, and WhatsApp
- Tripadvisor, Yelp, and Foursquare links when published
- Contact evidence URLs and enrichment status
- Contact completeness and lead scores
Reviews and reputation data
- Google rating and total listing review count
- Review text, rating, publication date, language, likes, URL, and photos
- Reviewer name, profile URL, photo, reviewer ID, review count, and photo count when available
- Owner reply text, reply date, and evidence URL
- Collected-review average rating
- One-, two-, three-, four-, and five-star counts for the collected sample
- Positive, neutral, and negative collected-review counts
- Owner response count and response rate
- Latest and oldest collected review dates
- Reviews from the last 30 and 90 days
- Review languages and review photo totals
Hours, services, and commercial links
- Current open/closed state
- Todayโs hours and weekly opening-hours records
- Current status text, next opening text, and closing text
- Accessibility, amenities, service options, offerings, payments, planning, crowd, and parking attributes
- Booking, reservation, menu, and ordering links
tableReservationLinksfor restaurant reservation providers- Reservation platform domains
- Action links published on the listing, with logo and tracking URLs filtered out
Search and media intelligence
- Original search phrase
- Search rank and search position
- Search-term match flag, match score, and matched terms
- Main image, photo URLs, image records, captions, and saved image count
- Photo author name and upload date where Google publishes them, so recency of the photo set is visible
- Listing highlights and local posts when available
Website technology and gaps
Every website we open for contacts is also read for the software behind it, at no extra cost and no extra request.
cms,ecommercePlatform, andbookingSystemโ WordPress, Wix, Squarespace, Shopify, Calendly, Square Appointments, and 45 signatures in totalhasOnlineBooking,hasAnalytics,hasAdvertisingPixel,hasLiveChat,acceptsOnlinePaymentstechnologiesandtechnologyCountโ every detected product, with its categorywebsiteGapsโ what the site does not have, in plain words: no online booking, no analytics, no advertising pixel, no live chat, no online payments
websiteGaps is the pitch. A restaurant with no booking system and no pixel is a different conversation from one already running Shopify and Meta ads.
Local rank grid
Google has no single ranking for a keyword. Search the same words from two points a few blocks apart and the top three change. A single "we rank #3" number hides that completely.
Turn on rankGrid and the Actor runs a real coordinate-anchored Google Maps search at every point of a grid drawn around the business, then reports:
rankGridโ every point with its latitude, longitude, distance, and the rank found thererankGridAverageRank,rankGridBestRank,rankGridWorstRankrankGridTop3Share,rankGridTop10Shareโ how much of the map the business ownsrankGridNotFoundShareโ how much of its own neighbourhood the business is invisible inrankGridVisibilityScoreโ 0 to 100, one number to sort a whole city byrankGridKeyword,rankGridSize,rankGridRadiusKm,rankGridPointsMeasured,rankGridStatus
Leave rankGridKeyword empty and each business is measured on its own primary Google category. This is the data local-SEO tools sell as a separate subscription; here it arrives in the same row as the contacts.
Exclusive lead intelligence
The Actor adds transparent, deterministic business scores calculated from the fields in the same record. They are designed for sorting and qualification, and every opportunity score includes its contributing reasons.
digitalPresenceScore โ 0 to 100
Measures how complete the public digital footprint is using:
- Website presence
- Public email availability
- Public phone availability
- Social profile coverage
- Business description
- Opening hours
- Photos
Use it to find businesses that may benefit from website, social media, local SEO, or profile-completion services.
reputationScore โ 0 to 100
Combines:
- Google rating
- Total review volume
- Owner response rate from the collected review sample
Use it to compare businesses whose star ratings look similar but whose review volume and customer engagement differ.
outreachOpportunityScore โ 0 to 100
Ranks businesses using contact availability and visible growth opportunities, including:
- Public contact available
- No website
- Website without a discovered public email
- No discovered social profiles
- Incomplete digital presence
- Strong customer rating
- Established review demand
- Listing appears unclaimed
Related fields:
outreachPriority:high,medium, orlowoutreachReasons: exact signals contributing to the scoreintelligenceConfidence:high,medium, orpartial
intelligenceConfidence prevents incomplete contact coverage from being presented as a confirmed business weakness.
Choose your mode
| Mode | Best for | Included data |
|---|---|---|
fast | Large lists, directory data, market discovery, location research | Core business data, phones, websites, ratings, coordinates, photos, search position, status, hours, and lightweight intelligence |
full | Lead generation, reputation research, agency prospecting, CRM enrichment | Everything in Fast plus public emails, extra phones, social profiles, website tech stack and gaps, detailed attributes, reviews, owner replies, and complete intelligence metrics |
Use Fast for broad discovery. Use Full when every saved business needs contact, website and review context. The local rank grid works in either mode and is controlled by its own switch.
Quick start
{"mode": "full","queries": ["independent coffee shops","specialty bakeries"],"locationQuery": "Sydney, Australia","maxCrawledPlacesPerSearch": 25,"maxImages": 5,"maxReviews": 10,"reviewsSort": "newest","language": "en","countryCode": "AU"}
The queries list accepts any supported combination of:
- Text searches such as
dentists,plumbers, orItalian restaurants - Direct Google Maps place URLs
- Google Place IDs
0x...:0x...data IDs
Duplicate places are saved once.
Input reference
| Field | Type | Default | What it controls |
|---|---|---|---|
mode | string | fast | Select fast or full. |
queries | array of strings | required | Searches, Google Maps URLs, Place IDs, or data IDs. Add one search phrase per entry. |
locationQuery | string | empty | Optional city, neighborhood, address, postal code, or country added to text searches. |
maxCrawledPlacesPerSearch | integer | 50 | Maximum unique businesses saved for each text search. |
maxImages | integer | 20 | Maximum saved photo URLs per business. |
maxReviews | integer | 50 | Maximum reviews per business in Full mode. |
reviewsSort | string | relevant | Collect relevant, newest, highest, or lowest reviews first. |
categoryFilterWords | array of strings | [] | Keep businesses matching at least one category word. |
placeMinimumStars | number | 0 | Minimum Google rating; 0 disables the filter. |
website | string | allPlaces | Keep all businesses, only those with a website, or only those without one. |
skipClosedPlaces | boolean | false | Exclude listings marked permanently closed. |
language | string | en | Result language code such as en, de, fr, or ru. |
countryCode | string | US | Two-letter country code such as US, GB, DE, or AU. |
rankGrid | boolean | false | Measure where each business ranks point by point across a grid. Off unless you ask for it. |
rankGridKeyword | string | empty | Words to be ranked for. Empty means each business is measured on its own primary category. |
rankGridSize | integer | 3 | Points per side: 3 is 9 searches per business, 5 is 25, 7 is 49. |
rankGridRadiusKm | integer | 2 | How far the grid reaches from the business, in kilometres. |
Output views
Every successful row carries the complete available business record โ up to 162 fields. Seven focused views make common workflows easier:
| View | Best for | Key fields |
|---|---|---|
| Places | Directory building and location research | Identity, address, coordinates, categories, rating, status, and search rank |
| Leads & contacts | Prospecting and CRM imports | Emails, phones, websites, social profiles, lead score, and outreach priority |
| Website & tech stack | Agency and software pitching | CMS, store, booking system, analytics, pixels, chat, payments, and websiteGaps |
| Local rank grid | Local SEO audits and reporting | Per-point ranks, top-3 and top-10 share, not-found share, and visibility score |
| Reputation | Reputation and customer-experience analysis | Rating split, owner replies, response rate, and recent-review counts |
| Location & hours | Territory planning and routing | Coordinates, address parts, time zone, plus code, and weekly hours |
| Booking & media | Hospitality and listing research | Booking and table-reservation links, price level, photos, and local posts |
Export the full dataset or any focused view as JSON, CSV, Excel, XML, or RSS.
Example output
{"title": "Demo Coffee Lab","categoryName": "Coffee shop","categories": ["Coffee shop", "Cafe"],"address": "100 Example Street, Sydney NSW 2000","city": "Sydney","countryCode": "AU","phone": "+61 2 5550 0100","phones": ["+61 2 5550 0100"],"website": "https://demo-coffee.example.test","emails": ["hello@demo-coffee.example.test"],"instagram": ["https://instagram.com/demo_coffee_lab"],"rating": 4.7,"reviewsCount": 286,"searchQuery": "independent coffee shops in Sydney, Australia","searchRank": 3,"searchTermMatchScore": 100,"businessStatus": "open","openingHoursToday": "7 amโ5 pm","scrapedReviewsCount": 10,"ownerResponseRate": 70.0,"digitalPresenceScore": 94,"reputationScore": 88,"outreachOpportunityScore": 38,"outreachPriority": "low","intelligenceConfidence": "high","cms": "WordPress","bookingSystem": null,"hasOnlineBooking": false,"hasAnalytics": true,"hasAdvertisingPixel": false,"technologies": ["WordPress", "Google Analytics 4", "Cloudflare"],"websiteGaps": ["no_online_booking", "no_advertising_pixel"],"rankGridKeyword": "coffee shop","rankGridAverageRank": 6.4,"rankGridBestRank": 1,"rankGridTop3Share": 33.3,"rankGridNotFoundShare": 22.2,"rankGridVisibilityScore": 61,"outreachReasons": ["public_contact_available","strong_customer_rating","established_review_demand"],"latitude": -33.8688,"longitude": 151.2093,"placeId": "DEMO-PLACE-ID","googleMapsUrl": "https://www.google.com/maps/place/?q=place_id:DEMO-PLACE-ID"}
Pricing
The primary event is one successfully saved Google Maps business. Current Store pricing is tiered by the userโs Apify subscription:
| Subscription tier | Price per 1,000 saved businesses |
|---|---|
| Free | $1.30 |
| Bronze | $1.10 |
| Silver | $0.90 |
| Gold and higher eligible tiers | $0.70 |
Actor start: $0.00005. The price shown in the Apify Console before a run is the authoritative price for that account and tier.
The local rank grid is billed separately, and only if you switch it on. Nothing changes for runs that leave it off.
| Subscription tier | Price per 1,000 grid points |
|---|---|
| Free | $0.60 |
| Bronze | $0.55 |
| Silver | $0.50 |
| Gold and higher eligible tiers | $0.40 |
One point is one real Google Maps search from one coordinate. A 3ร3 grid is 9 points per business, a 5ร5 is 25, a 7ร7 is 49 โ so a 3ร3 grid on 20 businesses is 180 points, about $0.07 at the Gold tier. Only points that were actually measured are charged; a grid that could not run bills nothing and says why in rankGridStatus. This pricing takes effect on 1 October 2026.
Start with a small result limit, inspect the output, and raise the limit after confirming the fields needed for your workflow.
Ready-to-use workflows
Build a qualified local lead list
- Select Full mode.
- Enter one business category and a concrete location.
- Collect a small review sample.
- Open the Business intelligence view.
- Sort by
outreachOpportunityScore. - Filter
outreachPrioritytohighormedium. - Export the Contacts view to CSV or Excel.
Find businesses without websites
{"mode": "fast","queries": ["roofing contractors"],"locationQuery": "Dallas, TX","maxCrawledPlacesPerSearch": 100,"website": "withoutWebsite"}
Use the results for website-development, local SEO, directory, or profile-completion outreach.
Audit local visibility across a neighbourhood
{"mode": "full","queries": ["pizza in Chicago, IL"],"maxCrawledPlacesPerSearch": 5,"maxReviews": 0,"rankGrid": true,"rankGridSize": 5,"rankGridRadiusKm": 3}
Open the Local rank grid view and sort by rankGridNotFoundShare. A high share is a business paying for a location its own neighbours cannot find on the map โ the clearest local-SEO pitch there is.
Find businesses whose website is missing something
{"mode": "full","queries": ["dentists in Austin, TX"],"maxCrawledPlacesPerSearch": 50,"maxReviews": 0}
Open the Website & tech stack view and filter websiteGaps for no_online_booking or no_advertising_pixel. These are businesses already spending on a website but not converting or measuring it.
Analyze review engagement
{"mode": "full","queries": ["hotels"],"locationQuery": "London, UK","maxCrawledPlacesPerSearch": 20,"maxReviews": 25,"reviewsSort": "newest"}
Compare rating, reviewsCount, ownerResponseRate, recent-review counts, and reputationScore.
Enrich known businesses
{"mode": "full","queries": ["ChIJN1t_tDeuEmsRUsoyG83frY4","https://www.google.com/maps/place/Example"],"maxImages": 5,"maxReviews": 10}
Use this workflow when your CRM already contains Google Maps URLs or Place IDs.
Map a local market
- Run Fast mode across several specific cities or neighborhoods.
- Export category, coordinates, rating, review count, search rank, and business status.
- Group or visualize the results in your analytics tool.
API example
curl -X POST \"https://api.apify.com/v2/acts/trakk~google-maps-business-intelligence-v2/runs?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode": "full","queries": ["dentists"],"locationQuery": "Austin, TX","maxCrawledPlacesPerSearch": 20,"maxImages": 5,"maxReviews": 10,"reviewsSort": "newest"}'
For small synchronous jobs, use the run-sync-get-dataset-items endpoint. For larger jobs, start the Actor asynchronously and read its default dataset after completion.
Data availability and accuracy
- Missing public source values are omitted instead of guessed.
- Public contact enrichment returns only contact data found on the businessโs published website or linked public profiles.
- Public emails are extracted and normalized, but they are not presented as mailbox-verified.
reviewsCountis the listingโs total count when available; collected-review metrics describe only the review sample requested in your input.imagesCountdescribes the saved image set under your selected limit.detailStatus,contactsStatus, andreviewsStatusexplain whether optional data succeeded, was unavailable, was not requested, timed out, or failed.- Intelligence scores are derived metrics, not fields published by Google.
FAQ
Can one run include searches and known places?
Yes. Mix text searches, Google Maps URLs, Place IDs, and data IDs in the same queries list.
Which mode should I use?
Use Fast for broad lists and location research. Use Full for public emails, extra phones, social profiles, reviews, owner replies, and complete lead intelligence.
Can I export to Excel?
Yes. Export the complete dataset or any focused view as Excel, CSV, JSON, XML, or RSS.
Why can email or social fields be empty?
Not every business publishes them. The matching status and confidence fields distinguish a confirmed empty result from partial coverage.
Are emails verified?
No separate mailbox-verification claim is made. The Actor returns normalized public email addresses with contact evidence when available.
How should I control the run size?
Begin with one precise category, one concrete location, and a small maxCrawledPlacesPerSearch value. Review the output before increasing place, photo, or review limits.
Can I automate the Actor?
Yes. Trigger runs with Apify schedules, webhooks, API calls, Make, Zapier, n8n, or your own workflow.
How much does the rank grid cost?
Only what you switch on. Each grid point is one real search, billed at $0.40 to $0.60 per 1,000 points depending on your tier โ a 3ร3 grid on 20 businesses is about $0.07 at the Gold tier. Leaving rankGrid off costs nothing at all.
Why is the rank grid better than the search rank field?
searchRank is the position in one search, from wherever Google decided to search from. The grid measures the same keyword from many coordinates and shows the business's rank at each one, including the points where it does not appear at all.
How is the website technology detected?
From the pages already fetched during contact enrichment, by matching the markup and scripts each site publishes. No extra requests are made, and no claim is made about software that leaves no public trace.
Are the intelligence scores explainable?
Yes. The underlying source fields remain in the record, outreachReasons lists the contributing opportunity signals, and intelligenceConfidence reports contact-coverage confidence.
Responsible use
Use the Actor for legitimate business research. Handle exported contact and reviewer data according to applicable laws, platform terms, and your organizationโs privacy and retention policies.