Google Maps Place Detail — Photos & Popular Times (No API Key) avatar

Google Maps Place Detail — Photos & Popular Times (No API Key)

Pricing

from $2.00 / 1,000 place scrapeds

Go to Apify Store
Google Maps Place Detail — Photos & Popular Times (No API Key)

Google Maps Place Detail — Photos & Popular Times (No API Key)

Extract full place details from any Google Maps URL — hours, popular times, photos, amenities & ordering links. No API key, no browser.

Pricing

from $2.00 / 1,000 place scrapeds

Rating

0.0

(0)

Developer

Romy

Romy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share


What it does

This actor extracts the full detail view of any Google Maps place — the same data you see when you tap a place in the Google Maps mobile app — using Google's internal Android gRPC API directly. No browser, no API key, no login required.

Paste any Google Maps URL and get back structured data that's hard to get anywhere else: 7-day × 24-hour popular times, full photo galleries (200+ photos), GoFood/GrabFood/ShopeeFood ordering URLs, 40+ amenity attributes, menu items, and live busyness.

Need to find places by keyword first? Use Google Maps Place Scraper to search and discover places, then pipe results here for the full detail view.


Use cases

Use CaseHow
Competitor researchScrape hours, amenities, and popular times for every competitor in your city
Lead enrichmentAdd phone, website, and address to a list of business names or URLs
Restaurant/hotel directoriesBuild a database of menus, photos, and ordering links
Market researchExtract popular times data to understand foot traffic patterns
Delivery app aggregationCollect GoFood/GrabFood/ShopeeFood ordering URLs for any business

Quick start

  1. Open the actor on Apify Console and click Try for free
  2. Paste one or more Google Maps place URLs into the URLs field
  3. Click Start — results appear in seconds
  4. Export as JSON, CSV, Excel, or XML from the Dataset tab

Input

Three input formats are accepted — mix and match freely in a single run:

Copy directly from your browser after opening any place on Google Maps.

{
"urls": [
"https://www.google.com/maps/place/Giyanti+Coffee+Roastery/@-6.1952,106.8302,17z/data=!3m1!4b1!4m6!3m5!1s0x2e69f4151ceb7767:0x79ac645c2aef736f!8m2!3d-6.1952!4d106.8302!16s%2Fg%2F12vqtc6zk",
"https://www.google.com/maps/place/RS+Pondok+Indah+-+Bintaro+Jaya/@-6.2710959,106.6917807,15z/data=!4m6!3m5!1s0x2e69faf2843a31c3:0xb02d6a1a5860823b!8m2!3d-6.2714566!4d106.6970665!16s%2Fg%2F11c7wbqpgh"
],
"maxPhotos": 20,
"includePopularTimes": true
}

2. Structured places (from google-maps-place-scraper)

Pipe the output of Place Scraper directly here for batch enrichment.

{
"places": [
{
"place_id": "0x2e69f4151ceb7767:0x79ac645c2aef736f",
"name": "Giyanti Coffee Roastery",
"place_path": "/g/12vqtc6zk"
}
]
}

3. Raw feature IDs

{
"featureIds": [
"0x2e69f4151ceb7767:0x79ac645c2aef736f",
"0x2e69fb81d3659859:0x83a7983ca17aa370"
]
}

Input fields

FieldTypeDefaultDescription
urlsstring[]Google Maps place URLs
placesobject[]{place_id, name?, place_path?} — from Place Scraper output
featureIdsstring[]Raw 0xHIGH:0xLOW feature IDs
maxPhotosinteger20Max photos per place (0 = skip, max 500)
includePopularTimesbooleantrueInclude 7-day × 24-hour busyness data

At least one of urls, places, or featureIds is required.


Output

One JSON object per place pushed to the dataset.

Example — RS Pondok Indah - Bintaro Jaya:

{
"name": "RS Pondok Indah - Bintaro Jaya",
"feature_id": "0x2e69faf2843a31c3:0xb02d6a1a5860823b",
"category": "General hospital",
"full_address": "CBD Emerald, Jl. Boulevard Bintaro Jaya No.1, Parigi, Pondok Aren, South Tangerang City, Banten 15227",
"neighborhood": "Parigi, Pondok Aren",
"timezone": "Asia/Jakarta",
"plus_code": "PMHW+CR Parigi, South Tangerang City, Banten",
"phone": "+62 21 2960 5555",
"website": "https://rspondokindah.co.id",
"hours": {
"Monday": "Open 24 hours",
"Tuesday": "Open 24 hours",
"Wednesday": "Open 24 hours",
"Thursday": "Open 24 hours",
"Friday": "Open 24 hours",
"Saturday": "Open 24 hours",
"Sunday": "Open 24 hours"
},
"popular_times": {
"days": [
{
"day": "Mon",
"hours": [
{ "hour": 6, "busyness": 20, "label": "Not too busy" },
{ "hour": 9, "busyness": 65, "label": "Usually a bit busy" },
{ "hour": 12, "busyness": 80, "label": "Usually as busy as it gets" }
]
}
],
"live_busyness": 42
},
"amenities": [
"On-site services available",
"Has toilet",
"Accepts credit cards",
"Accepts NFC mobile payments",
"Has nursing room",
"Paid parking lot",
"Drive-through"
],
"photos": [
{
"url": "https://gz0.googleusercontent.com/gps-cs-s/...",
"url_thumb": "https://gz0.googleusercontent.com/...",
"caption": "Suasana kamar rawat inap",
"timestamp_ms": 1639353600000
}
],
"photos_total": 201,
"place_path": "/g/11c7wbqpgh",
"maps_url": "https://www.google.com/maps/place/RS+Pondok+Indah+-+Bintaro+Jaya/..."
}

Pricing

Pay Per Event — you only pay per place scraped. No subscription, no minimum spend.

EventPrice
Actor start$0.05 (one-time per run)
Per place scraped$0.002
ScenarioPlacesCost
Quick lookup10~$0.07
Small batch100~$0.25
Large batch1,000~$2.05
Full campaign10,000~$20.05

Good value? Competing Google Maps scrapers charge $1.50–$2.50 per 1,000 places and return less data (no popular times, no ordering links, no full photo galleries). This actor returns the deepest available place data at $2.00 per 1,000 places.


Tips

  • Getting the URL — open any place on Google Maps in your browser and copy the URL from the address bar. Works for any country and place type.
  • Use with Place Scraper — search by keyword using Google Maps Place Scraper, then feed the output directly into the places field here.
  • Skip photos for speed — set maxPhotos: 0 to skip photo fetching and cut run time roughly in half.
  • Get all photos — set maxPhotos: 200 (or higher) to retrieve every available photo for a place.
  • Popular times availability — only places with enough visitor data have this. Some places (hospitals, government offices, 24-hour spots) may not have it.

FAQ

How is this different from Google Places API? The official Places API doesn't expose popular times, full photo galleries, GoFood/GrabFood ordering links, or menu items. This actor calls Google's internal Android gRPC endpoint — the same source the mobile app uses — and returns all of it at a fraction of the Places API cost.

Does it need a browser, API key, or login? No. It uses the Android Maps internal API with the public key embedded in the Maps app — no browser, no OAuth, no account.

What URL format is accepted? Any URL starting with https://www.google.com/maps/place/. Copy it directly from your browser — no editing needed. Short URLs (goo.gl/maps/...) are not supported; open them in your browser first to get the full URL.

Why is a field missing? Google only returns data that exists for a place. Small or unclaimed businesses often have no phone, hours, or description. Popular times require enough visitor data to generate.

Can I get reviews too? Reviews are not included in this actor. Use Google Maps Reviews Scraper to paginate all reviews for specific places.

Will it get blocked? The actor uses authentic Android app credentials and behaves like a real mobile client. No proxy is required for normal usage volumes.

Issues or feature requests? Open a ticket in the Issues tab.