Google Maps Scraper API

Extract business data from Google Maps with a simple REST API — names, addresses, phone numbers, emails, websites, ratings and reviews. Flat credit pricing, no proxies to manage, results in 30–120 seconds. Official SDKs for Node.js and Python, plus an MCP server for AI agents.

Free tier: 10 credits (5 searches) — no credit card required

Quickstart in Your Language

Three endpoints, one workflow: submit a search, poll the job, download your leads. Or let an SDK handle the whole loop in one call.

cURL
raw REST
# 1. Submit a scrape job (costs 2 credits)
curl -X POST https://gmapsscraper.io/api/v1/scrape \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"keywords": ["coffee shop in Austin TX"], "email": true}'
# → {"id": "job_xxx", "credits_remaining": 8}

# 2. Poll until complete
curl https://gmapsscraper.io/api/v1/jobs/job_xxx \
  -H "Authorization: Bearer YOUR_API_KEY"
# → {"id": "job_xxx", "status": "complete"}

# 3. Download results as CSV
curl https://gmapsscraper.io/api/v1/jobs/job_xxx/download \
  -H "Authorization: Bearer YOUR_API_KEY" -o leads.csv
Node.js
@gmapsscraper/sdk
// npm install @gmapsscraper/sdk
import GMapsScraper from '@gmapsscraper/sdk';

const client = new GMapsScraper(process.env.GMAPSSCRAPER_API_KEY);

// One call: submit → poll → parsed results
const leads = await client.scrape('dentist in Chicago IL', {
  email: true,
});

console.log(leads[0]);
// { title, address, phone, email, website, rating, ... }
Python
gmapsscraper-sdk
# pip install gmapsscraper-sdk
from gmapsscraper import GMapsScraper

client = GMapsScraper("YOUR_API_KEY")

leads = client.scrape("plumber in Miami FL", email=True)

for lead in leads[:5]:
    print(lead["title"], lead["phone"], lead["email"])
MCP (AI Agents)
@gmapsscraper/mcp
// Claude Desktop / Cursor / Windsurf config
{
  "mcpServers": {
    "gmapsscraper": {
      "command": "npx",
      "args": ["-y", "@gmapsscraper/mcp"],
      "env": { "GMAPSSCRAPER_API_KEY": "your_key" }
    }
  }
}
// Then just ask: "Find 50 dentists in Chicago with emails"

API Endpoints

EndpointMethodDescription
/api/v1/scrapePOSTSubmit a Google Maps scrape job — keywords, location auto-geocoded, optional email extraction
/api/v1/jobs/{id}GETCheck job status: runningcomplete
/api/v1/jobs/{id}/downloadGETDownload results as CSV — 12 data fields per business
/api/v1/creditsGETCheck remaining credit balance

Data returned per business: title, address, phone, email, website, rating, reviews count, category, latitude, longitude, Google Maps URL, opening hours

Why Use a Google Maps Scraper API Instead of the Official Places API?

The official Google Places API caps results at 60 per search, charges per-request fees that grow quickly at scale, and — critically — never returns email addresses. A dedicated Google Maps scraper API removes all three limits: unlimited results per keyword, flat credit pricing, and built-in email extraction that crawls each business's website for contact addresses.

  • No result caps — pull every listing that matches your keyword and radius, not just the first 60
  • Email extraction included — we crawl business websites in real time; the Places API has no email field at all
  • Flat, predictable pricing — each search costs 2 credits regardless of how many keywords you batch into it
  • Zero infrastructure — no proxies, no headless browsers, no CAPTCHA farms; we handle the scraping stack

Built for Developers and AI Agents

Everything is open source and installable today: the Node.js SDK (npm install @gmapsscraper/sdk), the Python SDK (pip install gmapsscraper-sdk), and an MCP server listed in the official Model Context Protocol registry. Claude, Cursor and Windsurf users can scrape Google Maps in plain conversation — the agent asks for confirmation before spending credits.

If you've seen the popular "build an AI agent that scrapes Google Maps" tutorials, you know the drill: wire up an n8n workflow, connect an Apify actor, paste in an OpenAI key, debug the nodes — and the demo caps out at 20 results. The MCP server replaces that entire pipeline with one config block: your agent searches any volume conversationally, asks before spending credits, and returns structured results — no workflow builder involved.

Rate limit is 1,000 requests per day per key with up to 10 concurrent jobs. Jobs typically finish in 30–120 seconds. The full machine-readable reference lives at /llms.txt — paste it into any LLM as context. For a step-by-step walkthrough, see the API tutorial.

Google Maps Scraper API Pricing

Every plan includes full API access — including the free tier. Each scrape job costs 2 credits, and batching multiple keywords into one job costs the same 2 credits. Compared with per-record APIs, flat pricing means a 10,000-lead month costs the same as a 500-lead month on the same plan.

  • Free — 10 credits (5 searches), no credit card
  • Starter $19/mo — 30,000 credits (15,000 searches), 1 API key
  • Pro $49/mo — 150,000 credits, unlimited API keys, 10 parallel jobs, priority queue

See the full pricing page for yearly plans and one-time credit packs.

Google Maps Scraper API — FAQ

Is scraping Google Maps legal?

Scraping publicly available business information is generally permitted — the data businesses publish on Google Maps (name, phone, address, website) is public by design. Our API enforces responsible rate limits automatically. For the full legal picture, read our guide to Google Maps scraping legality.

Is there a free Google Maps scraper API?

Yes — the free tier includes 10 credits (5 searches) with full API access and email extraction, no credit card required. That's enough to test the complete workflow end to end before upgrading.

How do I get emails from Google Maps via API?

Pass "email": true in your scrape request. We visit each business's website and extract contact emails in real time — a field the official Places API doesn't offer. See the email extractor page for how it works.

What formats can I export?

The download endpoint returns CSV. The Node.js and Python SDKs also parse results into native objects/dicts, and the web dashboard adds Excel and JSON export plus HubSpot sync.

Can AI agents use this API?

Yes — install @gmapsscraper/mcp to give Claude, Cursor or any MCP client four scraping tools, or use the 8 open-source Claude agent skills.

Start Scraping Google Maps in 5 Minutes

Grab a free API key, run one cURL command, and have your first lead list before your coffee gets cold.

Get Free API Key