Google Maps Shared List Scraper
Pricing
from $0.50 / 1,000 saved places
Google Maps Shared List Scraper
Export places from public Google Maps shared lists as structured rows. Keep source-list context, addresses, ratings, phones, websites, hours, photos, and optional public website emails when available.
Pricing
from $0.50 / 1,000 saved places
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
1
Bookmarked
76
Total users
13
Monthly active users
2 days ago
Last modified
Categories
Share
🗺️ Export places from a Google Maps shared list
Google Maps Shared List Scraper helps travelers, researchers, and sales teams turn public Google Maps shared lists into structured place data. Add one or more public list links and get rows with source-list details, addresses, ratings, phone numbers, websites, hours, photos, reviews, and more when Google Maps shows them.
Use cases
- Export a saved restaurant shortlist with Google Maps Restaurant List Export.
- Move saved trip ideas into a dataset with Google Maps Travel List Export.
- Prepare list rows for a spreadsheet with Google Maps Shared List to Spreadsheet.
- Collect saved venues for research with Google Maps Venue List Scraper.
- Build a local lead list with Google Maps Local Lead List.
- Compare ratings and review counts with Google Maps Place Rating Comparison.
- Preserve creator notes and list order with Google Maps List Notes Export.
📦 Google Maps place and list data
Each saved dataset row represents the first eligible match for one place from a public shared list. The row keeps list position and source-list context with public place details. Google Maps may not expose every field for every place, so unavailable fields can be absent.
🚀 Run the shared-list export
- Open the Actor in Apify Console.
- Add one or more public links under Shared list URLs.
- Set Places per list and, if needed, Total places.
- Start the run and open the dataset.
Public list rules
Short maps.app.goo.gl links and full google.com/maps shared-list links are accepted when they lead to a public list. Private or login-protected lists are not supported.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
listUrls | array of string | Required public Google Maps shared-list links, one per line. Short links and full shared-list links work. |
maxPlacesPerList | integer | Optional positive cap for each list. Leave it empty to return all available places until the source is exhausted. |
maxResults | integer | Optional positive cap across the run. Leave it empty to return all available places until the source is exhausted. |
includeWebsiteEmails | boolean | When on, visit discovered business websites and add public contact emails when found. This can make the run take longer. |
maxEmailsPerPlace | integer | When Website emails is on, keep up to this many public emails from each place website. It accepts 1 to 10 and is ignored when Website emails is off. |
Successful input example
This example is copied from the hosted Actor's public default input.
{"listUrls": ["https://maps.app.goo.gl/MMjvFNWpUTjiupHc9"],"maxPlacesPerList": 2,"maxResults": 2,"includeWebsiteEmails": false,"maxEmailsPerPlace": 3}
🧾 Output
Dataset link
The results output is a string link to the default dataset. Each saved row follows the field table below.
Output fields
| Field | Type | What it does |
|---|---|---|
name | string | Place name shown by Google Maps. |
note | string | Public note for the place in the shared list. |
address | string | Full place address shown by Google Maps. |
city | string | City from the public address. |
state | string | State, province, or region from the public address. |
postalCode | string | Postal code from the public address. |
countryCode | string | Country code from the public address. |
latitude | number | Place latitude from Google Maps. |
longitude | number | Place longitude from Google Maps. |
categories | array of string | Google Maps categories for the place. |
rating | number | Google Maps star rating. |
reviewCount | integer | Number of Google Maps reviews. |
phone | string | Public phone number shown by Google Maps. |
website | string | Business website URL shown by Google Maps. |
emails | array of string | Public emails found on the business website when Website emails is on and an email is found. |
currentStatus | string | Current Google Maps status, such as open or closed. |
isClaimed | boolean | Whether Google Maps marks the listing as claimed. |
isPermanentlyClosed | boolean | Whether Google Maps marks the place as permanently closed. |
businessHours | array of object | Opening hours exposed by Google Maps for the place. |
businessHours[].day | string | Day of the week. |
businessHours[].hours | array of string | Opening times exposed for that day. |
businessHours[].hours[] | string | One opening time or a closed-day value. |
timezone | string | Place timezone. |
plusCode | string | Google Maps plus code. |
description | string | Public Google Maps place description when available. |
priceLevel | string | Public price indication shown by Google Maps. |
photos | array of string | Public Google-hosted photo URLs for the place. |
reviews | array of object | Recent public Google Maps reviews. |
reviews[].reviewerName | string | Public name shown for the reviewer. |
reviews[].reviewerProfileUrl | string | Public profile URL for the reviewer. |
reviews[].reviewerPhotoUrl | string | Public photo URL for the reviewer. |
reviews[].reviewerId | string | Public identifier for the reviewer. |
reviews[].rating | number | Star rating for the review. |
reviews[].text | string | Text of the review. |
reviews[].publishedAtText | string | Date text shown for the review. |
reviews[].publishedAt | string | Review date when available. |
reviews[].language | string | Language of the review. |
reviews[].reviewUrl | string | URL for opening the review. |
reviews[].reviewId | string | Public identifier for the review. |
googleMapsUrl | string | URL for opening the place in Google Maps. |
placeId | string | Compact Google place ID. |
placeIdChIJ | string | Google ChIJ place ID. |
cid | string | Google Maps CID. |
listId | string | Google Maps shared-list ID. |
sourceListName | string | Public name of the shared list that contains the place. |
sourceListUrl | string | Submitted or resolved shared-list URL that first found this place. |
sourceIndex | integer | One-based place position in the source shared list. |
savedByName | string | Public name of the user who saved the place. |
savedAt | string | Saved date from Google Maps. |
Example place row
This shortened row is copied from a successful current-beta run with Website emails enabled and a public email found. It keeps useful place, list, and contact fields. The photos and reviews arrays use the string "..." as an omission marker, so this is not a complete row.
{"name": "State Bird Provisions","note": "https://www.opentable.com/r/state-bird-provisions-san-francisco","address": "State Bird Provisions, 1529 Fillmore St, San Francisco, CA 94115","city": "San Francisco","state": "California","postalCode": "94115","countryCode": "US","latitude": 37.783732199999996,"longitude": -122.4329951,"categories": ["American restaurant","Asian fusion restaurant","Californian restaurant","Restaurant"],"rating": 4.5,"reviewCount": 196,"phone": "+1 415-795-1272","website": "http://www.statebirdsf.com/","emails": ["info@statebirdsf.com"],"currentStatus": "Closed · Opens 5:30 PM","isClaimed": true,"isPermanentlyClosed": false,"businessHours": [{"day": "Sunday","hours": ["5:30 PM-10 PM"]},{"day": "Monday","hours": ["5:30 PM-10 PM"]},{"day": "Tuesday","hours": ["5:30 PM-10 PM"]},{"day": "Wednesday","hours": ["5:30 PM-10 PM"]},{"day": "Thursday","hours": ["5:30 PM-10 PM"]},{"day": "Friday","hours": ["5:30 PM-10:30 PM"]},{"day": "Saturday","hours": ["5:30 PM-10:30 PM"]}],"timezone": "America/Los_Angeles","plusCode": "849VQHM8+FR","priceLevel": "$100+","photos": ["..."],"reviews": ["..."],"googleMapsUrl": "https://www.google.com/maps?cid=7596983855284674601","placeId": "/m/0xmdqk9","placeIdChIJ": "ChIJQ7kGpLmAhYARKeCe2pDobWk","cid": "7596983855284674601","listId": "MVwuZ5EWRrW3kuXnMtpxlA","sourceListName": "CS Reserve Exclusive OpenTable","sourceListUrl": "https://maps.app.goo.gl/L8auUjEtcSsp3wBV8","sourceIndex": 1,"savedByName": "Xander Sigler","savedAt": "2026-03-07T02:27:04.171Z"}
You can export dataset rows in the formats offered by Apify or read them through the dataset API.
💳 Pricing
Saved-place charges
Pay-per-event pricing charges one event for each place saved to the dataset. Your total depends on the number of places saved and the current event price shown by Apify.
🔌 Integrations
Workflow options
Use the Apify API, schedules, webhooks, or available Apify integrations to send saved rows to your workflow. This video shows how to connect an Actor with other tools:
❓ FAQ
Can I use a short Google Maps link?
Yes. Add a public maps.app.goo.gl shared-list link or a full Google Maps shared-list link.
Can I submit more than one shared list?
Yes. Add one or more public list links. The saved row keeps the source-list context for its first eligible match.
Can I scrape a private Google Maps list?
No. The list must open without a Google login.
Can I run the Actor through the Apify API?
Yes. Start the Actor with the same public input and read the default dataset after the run.
Do I need a Google Maps API key?
No. Add the public shared-list URL to the Actor input.
Why are some place fields empty?
Google Maps may not show every field for every place. The Actor keeps the public fields available for that place.
Does businessHours always contain the full week?
No. It contains the opening hours Google Maps exposes for that place, which may be only part of the week.
What happens when a place appears more than once?
The first eligible match is saved. A later match for the same place is ignored, so the saved row keeps only the first list context.
📝 Changelog
v0.2
- Complete large public Google Maps lists more reliably, while keeping collected places available when a temporary source issue affects a list.
- Include the public shared-list name with each exported place.
v0.1
- Scrape complete shared lists with no preset place ceiling, or use any positive per-list and total place limits.
v0.0
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Website Email Scraper finds public contact emails on the business websites linked by exported places.
- Google Maps Phone Number Scraper builds phone-focused local lead rows when you need search-based discovery.
- Business Address Scraper checks company websites for address details after you collect their URLs.
- Website URL Crawler & Link Extractor maps public pages and links on a place website.
- Yelp Business Review Scraper lets you compare public reviews for places that also appear in your Google Maps lists.
Made with ❤️ by Maxime Dupré