VOOZH about

URL: https://apify.com/automation-lab/google-maps-shared-list-scraper

⇱ Google Maps Shared List Scraper & Saved Places Export Β· Apify


Pricing

from $0.06 / 1,000 scraped places

Go to Apify Store

Google Maps Shared List Scraper

πŸ—ΊοΈ Export public Google Maps shared lists into structured place datasets with names, addresses, coordinates, notes, and list context.

Pricing

from $0.06 / 1,000 scraped places

Rating

0.0

(0)

Developer

πŸ‘ Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Export public Google Maps shared lists into clean place datasets for lead generation, travel research, venue sourcing, and market mapping.

What does Google Maps Shared List Scraper do?

Google Maps Shared List Scraper turns a public Google Maps saved-list link into structured rows.

It accepts links such as:

  • https://maps.app.goo.gl/MMjvFNWpUTjiupHc9
  • https://www.google.com/maps/placelists/list/...

For every saved place that is visible in the public list payload, the actor exports the place name, address, coordinates, Google Maps link, list title, list owner, user note, and scrape timestamp.

Who is it for?

This scraper is useful for several practical workflows:

  • πŸ§‘β€πŸ’Ό Lead-generation teams exporting curated prospect lists from Google Maps.
  • πŸ™οΈ Local-market researchers turning neighborhood lists into CSV or JSON.
  • 🍽️ Restaurant and hospitality analysts collecting saved venue shortlists.
  • ✈️ Travel planners converting itineraries into structured data.
  • 🧭 Sales teams sharing Google Maps lists internally and then enriching them in a CRM.
  • πŸ§ͺ Data analysts who need repeatable exports from public Maps collections.

Why use this actor?

Google Maps shared lists are easy to create but hard to analyze at scale. Copying place names by hand is slow and loses important context such as coordinates and notes.

This actor gives you:

  • βœ… Public-list URL input
  • βœ… One row per saved place
  • βœ… List context on every row
  • βœ… Coordinates when exposed by Google Maps
  • βœ… Notes written by the list owner
  • βœ… Dataset exports to CSV, JSON, Excel, XML, RSS, and HTML through Apify
  • βœ… API access for scheduled or automated workflows

What data can it extract?

FieldDescription
listUrlOriginal URL you submitted
resolvedListUrlFinal Google Maps URL after redirects
listIdPublic shared-list identifier
listTitleList title when visible
listOwnerPublic list owner name when visible
listDescriptionList description when visible
listPlaceCountTotal places reported by Google Maps
placeNameSaved place name
placeUrlGoogle Maps search URL for the place
placeIdGoogle feature ID or fallback ID
googleFeatureIdGoogle feature identifier when present
addressPlace address from the shared-list payload
latitudeLatitude
longitudeLongitude
categoryReserved for detail enrichment; null when not exposed
ratingReserved for detail enrichment; null when not exposed
reviewCountReserved for detail enrichment; null when not exposed
phoneReserved for detail enrichment; null when not exposed
websiteReserved for detail enrichment; null when not exposed
emailsReserved for website enrichment; empty by default
openingHoursReserved for detail enrichment; empty by default
imageUrlReserved for detail enrichment; null when not exposed
noteNote/comment saved in the shared list
sourceListContextOwner, title, and position within the list
scrapedAtISO timestamp for the scrape

How much does it cost to export Google Maps shared lists?

This actor uses pay-per-event pricing.

  • A small start event is charged once per run.
  • A result event is charged only for successfully extracted place records.
  • Failed URLs and skipped lists are not charged as place results.

Formula-derived tier pricing is set from measured cloud run costs and rounded up to the platform-supported minimum. The BRONZE result price is $0.10 per 1,000 exported places before Apify account-tier discounts.

Input

The main input is listUrls.

{
"listUrls":[
{"url":"https://maps.app.goo.gl/MMjvFNWpUTjiupHc9"}
],
"maxPlacesPerList":20,
"includeDetails":false,
"includeWebsiteEmails":false,
"language":"en",
"countryCode":"us"
}

Input fields

FieldTypeRequiredDefaultDescription
listUrlsarrayYessample URLPublic Google Maps shared-list URLs
maxPlacesPerListintegerNo20Maximum places to export from each list
includeDetailsbooleanNofalseReserved for future detail enrichment
includeWebsiteEmailsbooleanNofalseReserved for future email enrichment
maxEmailsPerPlaceintegerNo3Reserved for future email enrichment
languagestringNoenGoogle Maps language code
countryCodestringNousGoogle Maps region code

Output example

{
"listUrl":"https://maps.app.goo.gl/MMjvFNWpUTjiupHc9",
"resolvedListUrl":"https://www.google.com/maps/@...",
"listId":"PiSwyqmbpwpP_Nr5sAang4x5QxbKwA",
"listTitle":"Tokyo",
"listOwner":"Shahed Khan",
"listDescription":null,
"listPlaceCount":63,
"placeName":"SAVOY Azabujuban",
"placeUrl":"https://www.google.com/maps/search/?api=1&query=SAVOY%20Azabujuban...",
"placeId":"/g/1tgpsl_t",
"googleFeatureId":"/g/1tgpsl_t",
"address":"Japan, γ€’106-0045 Tokyo, Minato City...",
"latitude":35.6548695,
"longitude":139.7364827,
"category":null,
"rating":null,
"reviewCount":null,
"phone":null,
"website":null,
"emails":[],
"openingHours":[],
"imageUrl":null,
"note":"Bluefin tuna pizza",
"sourceListContext":{
"owner":"Shahed Khan",
"listTitle":"Tokyo",
"position":1
},
"scrapedAt":"2026-06-04T10:00:00.000Z"
}

How to scrape a Google Maps shared list

  1. Open Google Maps.
  2. Open a public saved list.
  3. Click Share and copy the public list link.
  4. Paste the link into listUrls.
  5. Set maxPlacesPerList to a safe first-run value such as 25.
  6. Run the actor.
  7. Download the dataset as CSV, JSON, Excel, or another Apify export format.

Tips for best results

  • Use public shared-list URLs, not private lists.
  • Start with a low maxPlacesPerList to verify the list is accessible.
  • Use maps.app.goo.gl short links or full google.com/maps/placelists/list/... URLs.
  • Keep enrichment options disabled unless a future version enables them.
  • If a list has fewer places than requested, the actor exports only the places Google Maps returns.

Integrations

You can connect the output to common workflows:

  • 🧾 Export CSV rows into Google Sheets.
  • πŸ§‘β€πŸ’Ό Send places into a CRM as lead records.
  • πŸ—ΊοΈ Join coordinates with GIS tools.
  • πŸ“Š Analyze curated venue lists in BI dashboards.
  • πŸ” Schedule repeat runs through Apify tasks.
  • 🧩 Trigger webhooks after each dataset is ready.

API usage with Node.js

import{ ApifyClient }from'apify-client';
const client =newApifyClient({token: process.env.APIFY_TOKEN});
const run =await client.actor('automation-lab/google-maps-shared-list-scraper').call({
listUrls:[{url:'https://maps.app.goo.gl/MMjvFNWpUTjiupHc9'}],
maxPlacesPerList:20
});
const{ items }=await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/google-maps-shared-list-scraper').call(run_input={
'listUrls':[{'url':'https://maps.app.goo.gl/MMjvFNWpUTjiupHc9'}],
'maxPlacesPerList':20,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

API usage with cURL

curl-X POST "https://api.apify.com/v2/acts/automation-lab~google-maps-shared-list-scraper/runs?token=$APIFY_TOKEN"\
-H'Content-Type: application/json'\
-d'{
"listUrls": [{"url":"https://maps.app.goo.gl/MMjvFNWpUTjiupHc9"}],
"maxPlacesPerList": 20
}'

MCP usage

Use the Apify MCP server with Claude Desktop or Claude Code:

$claude mcp add apify-google-maps-shared-list "https://mcp.apify.com/?tools=automation-lab/google-maps-shared-list-scraper"

Claude Desktop JSON configuration:

{
"mcpServers":{
"apify-google-maps-shared-list":{
"url":"https://mcp.apify.com/?tools=automation-lab/google-maps-shared-list-scraper"
}
}
}

Direct MCP URL:

https://mcp.apify.com/?tools=automation-lab/google-maps-shared-list-scraper

Example prompts:

  • "Export this Google Maps shared list and summarize the venues by neighborhood."
  • "Scrape this saved list and return a CSV of names, addresses, and coordinates."
  • "Run the Google Maps Shared List Scraper for these three public list URLs."

Limitations

Google Maps changes internal payloads over time. This actor is designed around the public shared-list payload and avoids high-risk browser scraping for the first version.

Some detail fields, such as phone, website, ratings, reviews, hours, and photos, may be null or empty unless Google exposes them in the shared-list response or a later enrichment version is enabled.

Troubleshooting

Why did my run return no places?

Check that the list is public. Private or account-only lists cannot be exported without access and are not supported.

Why are phone or website fields empty?

The MVP exports reliable shared-list data. Phone and website are detail fields and may require separate place-detail enrichment, which is intentionally disabled in this build.

Can I scrape multiple lists at once?

Yes. Add multiple entries to listUrls. Each output row includes the source list context.

FAQ

Is it legal to scrape Google Maps shared lists?

This actor is intended for public data that you are allowed to access. You are responsible for using the output in compliance with applicable laws, platform terms, privacy rules, and your own business policies.

Do private Google Maps lists work?

No. The actor only supports public shared lists that can be opened without logging in.

Does the actor enrich websites and emails?

Not in the MVP. Website and email fields are included for schema stability and future enrichment, but the current version avoids extra detail requests unless they become cheap and reliable.

Legality

Use this actor only for public data that you are allowed to process. Do not scrape private lists, personal data you are not allowed to process, or content behind login walls. Review Google Maps terms and applicable privacy laws before using exported data in production workflows.

Related scrapers

Other Apify actors by Automation Lab may help with adjacent workflows:

Changelog

0.1

Initial build: export places from public Google Maps shared lists using an HTTP-first public list payload.

Support

If a public list URL does not work, open an Apify issue and include:

  • The list URL
  • Your input JSON
  • Run ID
  • Whether the list opens in an incognito browser

Development notes

This actor is built with the Apify SDK and TypeScript.

Local development uses:

npminstall
npm run build
timeout120 apify run

Store keywords

Google Maps shared list scraper, Google Maps list export, Google Maps saved places CSV, Google Maps places dataset, Google Maps lead generation.

You might also like

Google Maps Shared List Scraper

maximedupre/google-maps-shared-list-scraper

Export places from public Google Maps shared lists. Get names, notes, addresses, coordinates, phones, websites, ratings, reviews, hours, photos, source-list context, and scrape timestamps.

πŸ‘ User avatar

Maxime DuprΓ©

8

Google Maps πŸ—ΊοΈ Shared List πŸ“– Scraper

parseforge/google-maps-shared-list-scraper

Extract complete place data from Google Maps shared lists instantly. Get names, addresses, ratings, phone numbers, websites, photos, and business hours. Optional AI-powered travel recommendations with visit scores. Export to CSV or JSON. Process 30+ places per minute.

211

5.0

(3)

Real Estate Agent Email Scraper

contacts-api/real-estate-agent-email-scraper

Real estate agent email scraper to extract verified realtor emails from property listings, agency websites, and directories πŸ“§πŸ‘ Perfect for lead generation, outreach, and real estate marketing. Fast, accurate, and reliable data extraction.

Mortgage Broker Email Scraper

contacts-api/mortgage-broker-email-scraper

Mortgage broker email scraper to extract verified broker emails from mortgage companies, lending firms, and financial service directories πŸ“§πŸ  Perfect for B2B outreach, partnerships, and mortgage industry lead generation.

Assisted Living Facilities Email Scraper

contacts-api/assisted-living-facilities-email-scraper

Assisted living facilities email scraper to collect verified emails from senior care homes and facility websites πŸ“§πŸ₯ Ideal for healthcare marketing, partnerships, and targeted lead generation. Fast and easy data extraction.

Cardiologist Email Scraper

contacts-api/cardiologist-email-scraper

Cardiologist email scraper to extract verified cardiologist emails from hospitals, clinics, and medical directories πŸ“§β€οΈ Ideal for healthcare outreach, marketing campaigns, and targeted medical lead generation.

Special Trade Contractors Email Scraper

contacts-api/special-trade-contractors-email-scraper

Special trade contractors email scraper to extract verified contractor emails from construction directories, business listings, and company websites πŸ“§πŸ—οΈ Perfect for B2B outreach, partnerships, and construction industry lead generation.

Churchfinder Scraper

parseforge/churchfinder-scraper

Scrape church data from ChurchFinder.com with 300,000+ listings across all US states. Extract name, full address, city, state, ZIP code, phone number, denomination, service times, and descriptions. Search by state, city, or provide direct URLs. Ideal for religious organization research and outreach.

AllTrails Scraper

parseforge/alltrails-scraper

Supercharge your outdoor adventure planning with our comprehensive AllTrails Scraper! Automate collection of detailed trail information, ratings, reviews, and photos from AllTrails.com. Perfect for hikers, outdoor enthusiasts, and travel planners who need accurate without manual work.

86

4.0

(6)