Limited Time — Lifetime Access for just $99. Lock in before prices rise.

UScraper
Tutorials

How to Scrape Google Maps Leads by Keyword to CSV

Learn how to scrape Google Maps leads by keyword. Export names, ratings, addresses, websites, phones and coordinates to CSV with UScraper locally.

UScraper
June 23, 2026
10 min read
#google maps lead scraper#how to scrape google maps#google maps scraping tutorial#google maps leads scraper#google maps scraper by keyword#google maps local search#google maps radius search#google maps to csv#google maps scraper alternative#local desktop app scraper
How to Scrape Google Maps Leads by Keyword to CSV

This tutorial shows how to scrape Google Maps leads by keyword into a local CSV using the Google Maps Leads Scraper by Keywords template for UScraper. You will prepare keyword result place URLs, import the workflow, set the export path, run a small validation batch, and review the output before using it for local-business research.

Prerequisites

Before you scrape Google Maps leads

You need UScraper installed as a local desktop app, the free template from the UScraper template library, a short list of Google Maps place URLs collected from keyword and location searches, and a folder for CSV exports. Start with three to five URLs; the first run is for validation, not scale.

The template does not perform the local search by itself. Search a query such as dentists in Miami, open the relevant place pages, copy approved place URLs, then let UScraper extract the deeper profile fields.

Scraping visible business data is still a compliance decision. Review the current Google Maps Platform terms, avoid bypassing access controls, keep batches modest, and get legal advice before using exported leads for sales outreach, resale, or automated enrichment.


Workflow

How the Google Maps lead scraper works

The workflow is compact: Set Window Size, Navigate, Wait for Page Load, Sleep, Wait for Element, Structured Export, then Loop Continue. Navigate holds the place URLs, waits let the dynamic profile panel render, Structured Export writes the CSV row, and Loop Continue advances to the next URL.


Export shape

What the CSV contains

The export is intentionally wide because Google Maps lead research is rarely just a name and phone number. Sales teams need contacts, local SEO teams need ratings and categories, and researchers need identifiers for deduplication.

Field groupExample columnsHow to use it
Search contextkeyword, page_urlTrace each row back to the keyword batch and source page
Business profiletitle, category, description, current_statusFilter by business type and profile completeness
Reputationreviews, review_points, popular-times columnsCompare activity and local demand signals
Contact datawebsite, phone, address, city, state, countryBuild a reviewed lead sheet before CRM import
Location and IDslatitude, longitude, plus_code, google_id, place_idDedupe rows and map coverage by territory
Media and hoursmain_image, image_1, open_time, weekday hour columnsAdd context for audits, listings checks, or manual review

Because there is no CSV sample bundled with the template package, treat the workflow JSON as the authoritative output definition. The key export settings look like this:

{
  "block_type": "process",
  "title": "Structured Export",
  "config": {
    "rowSelector": "body",
    "fileName": "google-maps-scraper-store-details-by-keyword.csv",
    "includeHeaders": true,
    "fileMode": "append",
    "columns": [
      { "name": "keyword", "attribute": "text", "isJs": true },
      { "name": "title", "attribute": "text", "isJs": true },
      { "name": "reviews", "attribute": "text", "isJs": true },
      { "name": "review_points", "attribute": "text", "isJs": true },
      { "name": "website", "attribute": "text", "isJs": true },
      { "name": "phone", "attribute": "text", "isJs": true }
    ]
  }
}

Runbook

How to scrape Google Maps by keyword

1

Import the workflow

Open the Google Maps Leads Scraper by Keywords template, download the JSON, and import it.

2

Build a small URL list

Search Google Maps by keyword and location, then paste a few approved place-detail URLs into Navigate.

3

Confirm waits

Keep the page-load wait, sleep, and visible title check to reduce sparse rows.

4

Set the export folder

Confirm the CSV name, local save location, headers, and append mode.

5

Run and validate

Run one to three URLs and compare key fields against the browser.

6

Scale gradually

Add more URLs after the test rows are clean. Save separate CSVs by city or campaign.


Quality checks

Validate the lead export

Before importing the CSV into a CRM, sort by page_url, google_id, place_id, website domain, and phone number. A clean dataset has one row per input URL and source links you can reopen.

SymptomLikely causeFix
Empty titleThe place detail page did not fully loadHandle consent, extend waits, and rerun a single URL
Blank phone or websiteThe profile does not expose that fieldLeave it blank or enrich manually from the business site
Wrong city or stateAddress format differs by localeAdjust parsing for that market before scaling
Duplicate rowsAppend mode reused an old file or input URLs repeatedDedupe by page_url, google_id, phone, and website
Sparse image fieldsMaps did not render those modulesTreat them as optional enrichment

Alternatives

UScraper vs API and hosted scraper options

Use the official Places API for products and dashboards that need stable contracts. Use hosted scraper tools for scheduling and cloud throughput. Use UScraper for analyst-led research where you inspect loaded pages, control the local CSV path, and avoid writing a scraper from scratch.


FAQ

Common questions about Google Maps lead scraping

Google Maps can show public business information, but automated collection may still be restricted by Google terms, privacy law, database rights, copyright, and local data-use rules. Use modest batches, avoid bypassing access controls, and get legal review before commercial use.

Next step

Download the template and run one keyword batch

Use the Google Maps Leads Scraper by Keywords template as the download path, then test one keyword and location before widening the URL list. For related workflows, browse all UScraper templates or read more tutorials in the UScraper blog.

FAQ

Frequently asked questions

Here are some of our most common questions. Can't find what you're looking for?

View All FAQs

Stop writing scripts. Start scraping visually.

Download UScraper and build your first web scraper in under 10 minutes. No subscriptions, no code, no limits.

Available on Windows 10+ and macOS 12+ · Need help? [email protected]