# Google Maps Scraper - Fast Business Lead Extractor (`mehedi798/google-maps-scraper-fast-business-lead-extractor`) Actor

Extract high-quality leads from Google Maps instantly. Scrapes business names, phone numbers, addresses, websites, and total reviews based on your search keyword and location. Fast, reliable, and perfectly structured data for your B2B marketing needs.

- **URL**: https://apify.com/mehedi798/google-maps-scraper-fast-business-lead-extractor.md
- **Developed by:** [Sahanur Begum](https://apify.com/mehedi798) (community)
- **Categories:** Lead generation, Automation, SEO tools
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## 🗺️ Google Maps Lead Scraper

**Extract business leads from Google Maps in seconds — no login, no API key, no proxies required.**

Google Maps Lead Scraper is a production-ready Apify Actor that lets you harvest valuable business intelligence directly from Google Maps search results. Whether you are a marketer, sales developer, or small business owner, this tool automates the most tedious part of lead generation and delivers structured, ready-to-use data straight to your dataset.

---

### ✨ Key Features

- **No Login Required** — Works without a Google account or any authentication.
- **No Proxy Required** — Runs cleanly on standard infrastructure out of the box.
- **Headless Browser Automation** — Uses a real Chromium browser for reliable, human-like scraping.
- **Smart Scroll Loading** — Automatically scrolls the results panel to load more businesses until your desired count is reached.
- **Structured Data Output** — Returns clean JSON with all the fields you need for outreach.
- **Pay-Per-Use** — Only pay for what you scrape. No subscriptions.
- **Highly Configurable** — Just set a keyword and a location — the Actor handles the rest.

---

### 📋 Extracted Data Fields

| Field          | Description                                      |
|----------------|--------------------------------------------------|
| `title`        | Business name                                    |
| `rating`       | Average star rating (e.g., `4.5`)               |
| `reviewsCount` | Total number of customer reviews                 |
| `address`      | Street address or area                           |
| `phone`        | Primary phone number                             |
| `website`      | Business website URL                             |
| `profileUrl`   | Full Google Maps listing URL                     |

---

### 🚀 How to Use

#### On Apify Platform

1. Navigate to the Actor page and click **Try for free**.
2. Fill in the **Input** form:
   - **Search Keyword**: e.g., `Dentists`, `Italian Restaurants`, `Plumbers`
   - **Location**: e.g., `New York`, `London`, `Dhaka`
   - **Max Results**: How many leads you want (default: `10`)
3. Click **Start** and wait for the run to complete.
4. Download your leads as **JSON**, **CSV**, or **Excel** from the **Dataset** tab.

#### Running Locally

```bash
## 1. Clone the project and install dependencies
npm install

## 2. Edit storage/key_value_stores/default/INPUT.json with your search params

## 3. Run the Actor
npm start
````

***

### 📦 Sample JSON Output

```json
[
  {
    "title": "The Spice Garden Restaurant",
    "rating": "4.5",
    "reviewsCount": "1,203",
    "address": "123 Gulshan Avenue, Dhaka",
    "phone": "+880 1712-345678",
    "website": "https://www.spicegarden.com",
    "profileUrl": "https://www.google.com/maps/place/..."
  },
  {
    "title": "Dhanmondi Kitchen",
    "rating": "4.2",
    "reviewsCount": "876",
    "address": "45 Dhanmondi Road, Dhaka",
    "phone": "+880 1800-654321",
    "website": "N/A",
    "profileUrl": "https://www.google.com/maps/place/..."
  }
]
```

***

### ⚙️ Input Parameters

| Parameter       | Type    | Default | Description                                    |
|-----------------|---------|---------|------------------------------------------------|
| `searchKeyword` | String  | —       | Business type to search for on Google Maps.    |
| `location`      | String  | —       | City or area to restrict the search to.        |
| `maxResults`    | Integer | `10`    | Maximum number of business listings to scrape. |

***

### 💡 Use Cases

- **Sales & Lead Generation**: Build targeted prospect lists for cold outreach.
- **Market Research**: Analyze competitors and understand local market density.
- **SEO & Local Business Audits**: Collect data about local businesses for reporting.
- **Directory Building**: Populate niche business directories automatically.
- **Data Enrichment**: Supplement existing CRM data with up-to-date contact info.

***

### ⚖️ Legal & Ethical Usage

This Actor interacts with publicly available data on Google Maps. Always ensure your usage complies with Google's Terms of Service and applicable local data protection regulations. The data extracted is publicly visible to any user visiting Google Maps.

***

### 🛠️ Tech Stack

- [Apify SDK](https://docs.apify.com/sdk/js/) — Actor lifecycle management and dataset handling.
- [Crawlee](https://crawlee.dev/) — Reliable `PuppeteerCrawler` web scraping framework.
- [Puppeteer](https://pptr.dev/) — Headless Chromium browser automation.
- Node.js 18+

***

*Built with ❤️ for the Apify community. If this Actor saves you time, please leave a star ⭐ and a review on the Apify Store!*

## Actor input object example

```json
{}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("mehedi798/google-maps-scraper-fast-business-lead-extractor").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("mehedi798/google-maps-scraper-fast-business-lead-extractor").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call mehedi798/google-maps-scraper-fast-business-lead-extractor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=mehedi798/google-maps-scraper-fast-business-lead-extractor",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Maps Scraper - Fast Business Lead Extractor",
        "description": "Extract high-quality leads from Google Maps instantly. Scrapes business names, phone numbers, addresses, websites, and total reviews based on your search keyword and location. Fast, reliable, and perfectly structured data for your B2B marketing needs.",
        "version": "0.0",
        "x-build-id": "5geyDum6CthGUbxYv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/mehedi798~google-maps-scraper-fast-business-lead-extractor/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-mehedi798-google-maps-scraper-fast-business-lead-extractor",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/mehedi798~google-maps-scraper-fast-business-lead-extractor/runs": {
            "post": {
                "operationId": "runs-sync-mehedi798-google-maps-scraper-fast-business-lead-extractor",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/mehedi798~google-maps-scraper-fast-business-lead-extractor/run-sync": {
            "post": {
                "operationId": "run-sync-mehedi798-google-maps-scraper-fast-business-lead-extractor",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {}
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
