# Google Maps Test Scraper (`scrapers-hub/google-maps-test-scraper`) Actor

🚀 Google Maps Test Scraper extracts business listings, ratings, addresses & more for faster local research. 📍 Ideal for lead gen, market research & directory audits. ⚡ Efficient, reliable, and easy to use.

- **URL**: https://apify.com/scrapers-hub/google-maps-test-scraper.md
- **Developed by:** [Scrapers Hub](https://apify.com/scrapers-hub) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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 Email Scraper – The #1 Tool to Scrape Emails from Google Maps 📍📩**

The **Google Maps Email Scraper** is a high-performance lead generation tool designed to **scrape emails from Google Maps** businesses at scale. Unlike basic scrapers, this tool visits the website of every business found on Google Maps to extract **verified emails**, **phone numbers**, **social media links**, and more.

If you need a reliable **google maps email scraper** to build targeted B2B lead lists, this actor is the ultimate solution. It bypasses rate limits, handles proxies automatically, and delivers **clean, structured data** ready for your cold outreach campaigns.

---

### **Input Parameters 🧩**

To start using this **google maps email scraper**, simply enter your keywords and target location.

#### **JSON Example**

```json
{
  "googleMapsSearchTerm": "coffee shops",
  "googleMapsLocation": [
    "Miami, Florida"
  ],
  "maxBusinesses": 20,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
````

#### **Input Table**

| Parameter | Type  | Description                                       | Required |
| --------- | ----- | ------------------------------------------------- | -------- |
| googleMapsSearchTerm | String | Niche or business type to search (e.g., "Dentists") | Yes      |
| googleMapsLocation   | Array  | List of Cities, States, or Countries (e.g., "New York, NY") | Yes      |
| maxBusinesses        | Integer| Maximum number of leads to scrape (1-1000)          | No       |
| scrapeMaxBusinessesPerLocation | Boolean | If true, scrapes up to maxBusinesses per location rather than globally | No       |

***

### **Output Format 📤**

This **google maps email scraper** provides detailed output for every business, including valid contact info.

#### **JSON Example**

```json
{
  "name": "Maman Coffee",
  "website": "https://mamannyc.com",
  "phone": "(305) 397-8158",
  "full_address": "5801 Sunset Dr South Miami Florida 33143 US",
  "scraped_emails": [
    {
      "email": "bonjour@mamannyc.com",
      "confidence_score": 50,
      "validation_status": "valid"
    }
  ],
  "scraped_social_media": [
      "https://instagram.com/_mamannyc_"
  ],
  "emails_found": 1,
  "scrape_status": "success"
}
```

#### **Output Fields**

| Field                | Description                     |
| -------------------- | ------------------------------- |
| name                 | Business Name                   |
| website              | Website URL                     |
| phone                | Contact Phone                   |
| full\_address         | Full Physical Address           |
| scraped\_emails       | Validated Email Addresses       |
| scraped\_social\_media | Social Profile Links (IG, FB, etc.) |
| rating               | Google Maps Rating              |
| reviews              | Total Review Count              |

***

### **Key Features of this Google Maps Email Scraper ⭐**

- **📧 Advanced Email Extraction**
  Goes beyond basic listing data to **scrape emails from websites** linked to Google Maps profiles.

- **📍 Precise Location Targeting**
  Extract leads from any city, state, or country using our smart **google maps location** filtering.

- **🔍 Validated Emails Only**
  This scraper defaults to returning a clean list of businesses that actually have contact info by automatically filtering out any listings without an email.

- **⚡ Bulk Scraping Capabilities**
  Perfect for agencies and sales teams needing thousands of leads.

- **🛡️ Built-in Proxy Support**
  Avoid IP bans and captchas with integrated Apify Proxy support.

***

### **How to use this Google Maps Email Scraper 🧑‍💻**

1. **Enter Search Term**: e.g., "Real Estate Agents" in `googleMapsSearchTerm`.
2. **Set Location**: e.g., "London, UK" in `googleMapsLocation`.
3. **Run Scraper**: Click start to begin extracting **google maps emails**.
4. **Download Leads**: Export your data in Excel, CSV, or JSON format.

***

### **Use Cases for Google Maps Email Scraper 🎯**

- **Cold Email Outreach**: Generate thousands of targeted leads for your campaigns.
- **Agency Lead Gen**: Find local businesses (plumbers, dentists, restaurants) in need of services.
- **Competitor Analysis**: Research business density and ratings in specific areas.
- **B2B Sales**: Direct access to decision-makers via verified corporate emails.

***

### **FAQ ❓**

#### **1. Is this the best google maps email scraper?**

Yes, because it combines Google Maps discovery with deep website crawling to find emails that other tools miss.

#### **2. Can I scrape leads from any country?**

Absolutely. This **google maps email scraper** works globally.

#### **3. Does it includes phone numbers?**

Yes, both from the Google Maps listing and the business website.

#### **4. How fast is it?**

It collects data in real-time and is optimized for speed and efficiency.

***

### **Support 💬**

For any questions or custom feature requests for this **google maps email scraper**, please contact us!

**Contact:** leadheavencontact@gmail.com

# Actor input Schema

## `googleMapsSearchTerm` (type: `string`):

Enter the business type or niche for the google maps email scraper (e.g., 'coffee shops', 'dentists').

## `googleMapsLocation` (type: `array`):

Target geographic location for the google maps email scraper (e.g., 'Miami, Florida').

## `maxBusinesses` (type: `integer`):

Target number of businesses to find (1-1000). The scraper will stop when this target is reached.

## `scrapeMaxBusinessesPerLocation` (type: `boolean`):

If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.

## `proxyConfiguration` (type: `object`):

Proxy settings for scraping. Recommended for large-scale scraping.

## Actor input object example

```json
{
  "googleMapsSearchTerm": "coffee shops",
  "googleMapsLocation": [
    "Miami, Florida"
  ],
  "maxBusinesses": 20,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# 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 = {
    "googleMapsSearchTerm": "coffee shops",
    "googleMapsLocation": [
        "Miami, Florida"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers-hub/google-maps-test-scraper").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 = {
    "googleMapsSearchTerm": "coffee shops",
    "googleMapsLocation": ["Miami, Florida"],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("scrapers-hub/google-maps-test-scraper").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 '{
  "googleMapsSearchTerm": "coffee shops",
  "googleMapsLocation": [
    "Miami, Florida"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call scrapers-hub/google-maps-test-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Maps Test Scraper",
        "description": "🚀 Google Maps Test Scraper extracts business listings, ratings, addresses & more for faster local research. 📍 Ideal for lead gen, market research & directory audits. ⚡ Efficient, reliable, and easy to use.",
        "version": "1.0",
        "x-build-id": "xtofnZjTN6uYDQe3i"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapers-hub~google-maps-test-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapers-hub-google-maps-test-scraper",
                "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/scrapers-hub~google-maps-test-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapers-hub-google-maps-test-scraper",
                "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/scrapers-hub~google-maps-test-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapers-hub-google-maps-test-scraper",
                "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",
                "required": [
                    "googleMapsLocation",
                    "googleMapsSearchTerm"
                ],
                "properties": {
                    "googleMapsSearchTerm": {
                        "title": "Google Maps Search Term",
                        "type": "string",
                        "description": "Enter the business type or niche for the google maps email scraper (e.g., 'coffee shops', 'dentists').",
                        "default": "coffee shops"
                    },
                    "googleMapsLocation": {
                        "title": "Google Maps Location",
                        "type": "array",
                        "description": "Target geographic location for the google maps email scraper (e.g., 'Miami, Florida').",
                        "default": [
                            "Miami, Florida"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxBusinesses": {
                        "title": "Maximum Businesses With Emails",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Target number of businesses to find (1-1000). The scraper will stop when this target is reached.",
                        "default": 20
                    },
                    "scrapeMaxBusinessesPerLocation": {
                        "title": "Scrape Max Businesses Per Location",
                        "type": "boolean",
                        "description": "If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Proxy settings for scraping. Recommended for large-scale scraping."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
