# Google Business Profile (`truefetch/google-business-profile`) Actor

Extract any Google Maps listing worldwide — phone, email, hours, popular times, rating summary, photo URLs, and 40 structured fields per business. $3.80 per 1,000.

- **URL**: https://apify.com/truefetch/google-business-profile.md
- **Developed by:** [TrueFetch](https://apify.com/truefetch) (community)
- **Categories:** Travel, Social media, News
- **Stats:** 241 total users, 13 monthly users, 100.0% runs succeeded, 6 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

> **Affiliate disclosure:** Apify links on this page may include referral parameters. If you sign up through one of these links, TrueFetch may earn a commission from Apify at no extra cost to you. Pricing, features, and Actor access are unaffected.

[![Google Business Profile](https://img.shields.io/badge/Google%20Business%20Profile-4285F4?style=for-the-badge&logo=google&logoColor=white)](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)
[![Local Business Data](https://img.shields.io/badge/Local%20Business%20Data-34A853?style=for-the-badge)](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)
[![Pay per Result](https://img.shields.io/badge/$3.80%20per%201%2C000%20stores-2E8B57?style=for-the-badge)](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)
[![No Cookies](https://img.shields.io/badge/No%20Login%20%7C%20No%20Cookies-555555?style=for-the-badge)](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)
[![Telegram Support](https://img.shields.io/badge/Telegram-Support-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/AiAgentApi)
[![Telegram Group](https://img.shields.io/badge/Telegram-Group-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/Apify_Actor)

## Google Business Profile — Local Business Data, Reviews & Maps API

**Search Google Maps by keyword and location and extract structured business data — name, category, address, phone, website, opening hours, ratings, reviews, popular times, prices, and photos — in a single Apify Actor run.** Returns clean JSON / CSV / Excel for local SEO, lead generation, and competitive intelligence, with no Google login or cookies required.

> **TL;DR (40-word answer):** Google Business Profile Scraper is a no-login Apify Actor that returns rich local business data per Google Maps listing at **$3.80 per 1,000 stores**, with optional per-review ($0.20/1k) and per-photo ($0.20/1k) add-ons. Last verified 2026-05-02.

> **What it is NOT:** Google Business Profile Scraper is _not_ a Google Maps routing or directions tool, _not_ a paid Google Places API replacement with identical quotas, and _not_ a tool for writing or submitting reviews — it only reads publicly visible Google Business Profile data from Google Maps search results.

> **Google Business Profile is an Apify Actor that searches Google Maps by keyword and location and returns structured business data — place ID, name, category, address, coordinates, phone, website, opening hours, rating, review count, popular times, amenities, prices, reviews, and photos — as a unified JSON schema.** Supports any language and location worldwide. Maintained by TrueFetch on the Apify Store.

---

### 🗺️ Why choose Google Business Profile

**Google Business Profile Scraper is best for** local SEO agencies, B2B lead generators, and developers who need rich Google Maps business data without paying per-call API fees.

- **📊 25+ fields per business** — place ID, name, category, address, coordinates, phone, website, opening hours, rating, rating_counts, review_count, popular times, amenities, about, prices, price_range, menu_url, photos, thumbnail, reviews, review_tags, related_links, social_media, located_in.
- **🌍 Any location worldwide** — city, town, suburb, state, or country; any language supported by Google Maps.
- **⚡ Pay-per-result pricing** — **$0.0038 per store** ($3.80/1,000), plus optional **$0.0002 per review** and **$0.0002 per photo**. Free Apify plan includes $5 monthly credits ≈ **~1,300 free stores per month**.

---

### 🚀 Quick Start — run in 3 steps

#### Run in Apify Console

1. **Open the Actor** — go to [Google Business Profile on Apify](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi) and click **Try for free**.
2. **Configure inputs** — enter a `keyword`, `location`, `language`, and `max_results`; optionally set `photos` and `reviews` counts.
3. **Click Start** — the Actor scrapes matching business profiles and writes them to the default dataset; download as JSON, CSV, or Excel.

#### Run via Apify API

```bash
curl -X POST "https://api.apify.com/v2/acts/TrueFetch~google-business-profile/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "keyword": "pizza restaurant",
    "location": "New York",
    "language": "English",
    "max_results": 20,
    "reviews": 5,
    "photos": 3
  }'
````

#### Run via MCP (for AI agents)

Google Business Profile Scraper is callable from Claude, ChatGPT, Cursor, and any MCP-compatible client through the [Apify MCP Server](https://docs.apify.com/platform/integrations/mcp?fpr=aiagentapi). Reference the Actor as `TrueFetch/google-business-profile` and pass the same JSON input as above.

***

### ⚙️ Input parameters

| Parameter     | Type    | Required | Default | Description                                                                                               | Example       |
| ------------- | ------- | :------: | ------- | --------------------------------------------------------------------------------------------------------- | ------------- |
| `keyword`     | string  |    ✅    | —       | Search term to query on Google Maps (business type, name, or category).                                   | `coffee shop` |
| `location`    | string  |    ✅    | —       | City, state, country, or area to search within.                                                           | `London`      |
| `language`    | string  |    ✅    | —       | Language for Google Maps results. Must be a supported language name (e.g. `English`, `French`, `German`). | `English`     |
| `max_results` | integer |    ✅    | —       | Maximum number of businesses to return. Minimum: `1`.                                                     | `20`          |
| `reviews`     | integer |    ✅    | `0`     | Maximum number of reviews to collect per business. Set to `0` to skip reviews.                            | `5`           |
| `photos`      | integer |    ✅    | `0`     | Maximum number of photos to collect per business. Set to `0` to skip photos.                              | `3`           |

```json
{
  "keyword": "sushi restaurant",
  "location": "Tokyo",
  "language": "English",
  "max_results": 15,
  "reviews": 10,
  "photos": 5
}
```

***

### 📦 Output dataset

Each run writes structured business objects to the **default Apify dataset**, exportable as JSON, JSONL, CSV, Excel, XML, RSS, or via the dataset API.

| Field           | Type            | Always present? | Description                                                  | Example                                       |
| --------------- | --------------- | :-------------: | ------------------------------------------------------------ | --------------------------------------------- |
| `name`          | string          |    optional     | Business name.                                               | `Joe's Pizza`                                 |
| `category`      | string          |    optional     | Primary business category from Google Maps.                  | `Pizza restaurant`                            |
| `address`       | string          |    optional     | Full formatted address.                                      | `7 Carmine St, New York, NY`                  |
| `coordinates`   | object          |    optional     | `{lat, lng}` coordinates.                                    | `{"lat": 40.7, "lng": -74.0}`                 |
| `phone`         | string          |    optional     | Phone number.                                                | `+1 212-366-1182`                             |
| `website`       | string          |    optional     | Business website URL.                                        | `https://joespizzanyc.com`                    |
| `opening_hours` | object          |    optional     | Weekly opening hours.                                        | `{"Monday": "11am–11pm"}`                     |
| `rating`        | number          |    optional     | Average star rating (1–5).                                   | `4.6`                                         |
| `rating_counts` | object          |    optional     | Count of 1–5 star reviews.                                   | `{"5": 850, "4": 120, ...}`                   |
| `review_count`  | integer         |    optional     | Total number of Google reviews.                              | `1024`                                        |
| `popular_times` | object          |    optional     | Busyness percentages by day and hour.                        | `{"Monday": ["20% busy at 9am.", ...]}`       |
| `amenities`     | object          |    optional     | Accessibility, parking, payment options, etc.                | `{"Wheelchair accessible": true}`             |
| `about`         | object          |    optional     | Additional business details and highlights.                  | `{"Service options": ["Dine-in", "Takeout"]}` |
| `prices`        | array           |    optional     | Menu items or service prices.                                | `["Margherita $12", "Pepperoni $14"]`         |
| `price_range`   | string          |    optional     | Price range indicator.                                       | `$$`                                          |
| `menu_url`      | string          |    optional     | Link to the business's menu.                                 | `https://joespizzanyc.com/menu`               |
| `photos`        | array\<string> |    optional     | Photo URLs (up to `photos` input count).                     | `["https://lh3.googleusercontent.com/..."]`   |
| `thumbnail`     | string          |    optional     | First photo URL used as thumbnail.                           | `https://lh3.googleusercontent.com/...`       |
| `reviews`       | array           |    optional     | Review objects (up to `reviews` input count).                | `[{"author": "Alice", "rating": 5, ...}]`     |
| `review_tags`   | array           |    optional     | Keyword tags extracted from Google reviews.                  | `["great pizza", "fast service"]`             |
| `related_links` | array\<string> |    optional     | Related links surfaced on the business profile.              | `["https://..."]`                             |
| `social_media`  | object          |    optional     | Social media links found on the business website.            | `{"facebook": "https://..."}`                 |
| `located_in`    | string          |    optional     | Shopping centre or building this business is located inside. | `Time Out Market`                             |
| `place_id`      | string          |    optional     | Google Maps unique place ID.                                 | `ChIJN1t_tDeuEmsRUsoyG83frY4`                 |
| `detail_url`    | string          |    optional     | Google Maps detail URL for this business.                    | `https://www.google.com/maps/place/...`       |

#### Sample output

```json
{
  "name": "Joe's Pizza",
  "category": "Pizza restaurant",
  "address": "7 Carmine St, New York, NY 10014",
  "coordinates": { "lat": 40.73, "lng": -74.002 },
  "phone": "+1 212-366-1182",
  "website": "https://joespizzanyc.com",
  "rating": 4.6,
  "review_count": 1024,
  "price_range": "$$",
  "popular_times": { "Friday": ["70% busy at 8pm."] },
  "photos": ["https://lh3.googleusercontent.com/..."],
  "place_id": "ChIJN1t_tDeuEmsRUsoyG83frY4"
}
```

***

### 💡 Use cases

#### For local SEO agencies auditing competitor profiles

- **Problem:** auditing 50 competitors' Google Business Profiles — checking ratings, review counts, opening hours, and photos — requires visiting each profile manually.
- **How Google Business Profile Scraper solves it:** extract all 25+ fields per business in one run and build a structured comparison report.
- **Outcome:** a complete local SEO audit at **$3.80 per 1,000 businesses**.

#### For B2B lead generators building prospect lists

- **Problem:** sourcing verified phone numbers and websites for all "accounting firms in Chicago" on Google Maps requires manual research.
- **How Google Business Profile Scraper solves it:** search by keyword + city and extract `phone`, `website`, `email` (from website contact extraction), and `address` for every result.
- **Outcome:** a verified local business contact list at **$3.80 per 1,000 leads**.

#### For AI agents answering local business questions

- **Problem:** LLM agents asked "what are the top-rated sushi restaurants in Tokyo with over 500 reviews?" cannot trust stale training data.
- **How Google Business Profile Scraper solves it:** call the Actor over the [Apify MCP Server](https://docs.apify.com/platform/integrations/mcp?fpr=aiagentapi) and surface grounded, up-to-date Google Maps data.
- **Outcome:** accurate, source-cited local business data in production AI assistants.

***

### 💰 Pricing, limits, and performance

| Fact                        | Value                                                              |
| --------------------------- | ------------------------------------------------------------------ |
| Pricing model               | Pay-per-result (events: `store`, `review`, `photo`, `actor_usage`) |
| Per-store price             | **$0.0038 per business = $3.80 per 1,000**                         |
| Per-review price            | **$0.0002 per review = $0.20 per 1,000**                           |
| Per-photo price             | **$0.0002 per photo = $0.20 per 1,000**                            |
| Free-tier monthly allowance | $5 Apify credits ≈ **~1,315 free stores / month**                  |
| Min results per run         | 1                                                                  |
| Locations supported         | **Worldwide** (any city, state, or country)                        |
| Languages supported         | 30+ (English, German, French, Spanish, Italian, and more)          |
| Output fields per result    | **25+**                                                            |
| Login / cookies required    | **No** — works without a Google account                            |
| Export formats              | JSON, JSONL, CSV, Excel, XML, RSS, dataset API                     |

***

### ⚖️ Compared with alternatives

| Capability                                          | **Google Business Profile** |     Google Places API     |    Custom scraper    |
| --------------------------------------------------- | :-------------------------: | :-----------------------: | :------------------: |
| Keyword search for businesses on Google Maps        |             ✅              |    ✅ (paid per call)     | you build & maintain |
| 25+ fields incl. popular times, prices, review tags |             ✅              |          partial          | you build & maintain |
| Reviews and photos as optional add-ons              |             ✅              |      separate calls       | you build & maintain |
| No API key or Google account required               |             ✅              | requires Google Cloud key | you build & maintain |
| Pay-per-store pricing                               |      **$0.0038/store**      |       ~$0.017+/call       |   infra + dev cost   |
| Export to CSV / JSON                                |             ✅              |       you implement       |    you implement     |
| Setup time to first result                          |      **< 60 seconds**       |  hours (key setup + SDK)  |      days–weeks      |

**Verdict.** Google Business Profile Scraper delivers the same data as the Google Places API at a fraction of the cost per record, with no Google Cloud account, billing setup, or API key required.

***

### ⚠️ Common mistakes to avoid

1. **Setting `reviews` and `photos` to large numbers.** Each review and photo is billed separately — set these only as high as your workflow requires.
2. **Using too broad a location.** Passing "USA" or "Europe" as location may fail geocoding — use a city, state, or specific area for reliable results.
3. **Passing an unsupported language.** Use an exact language name from the supported list (e.g. `English`, not `en`).
4. **Expecting `email` as a direct field.** The Actor extracts emails from the business website — not all websites expose contact emails.
5. **Running duplicate keyword + location pairs.** Results are deduplicated by `place_id` per run — you'll only pay for unique businesses.

***

### 🛠️ Troubleshooting

| Problem                          | Likely cause                                         | Fix                                                                         |
| -------------------------------- | ---------------------------------------------------- | --------------------------------------------------------------------------- |
| No results returned              | Location geocoding failed or no Google Maps results. | Check the location spelling and verify it resolves on Google Maps directly. |
| Fewer results than `max_results` | Google Maps returned fewer matching businesses.      | Try a broader keyword or larger location area.                              |
| `language` validation error      | Language name not in supported list.                 | Use the exact English name: `English`, `French`, `German`, etc.             |
| `opening_hours` is empty         | Business has no hours listed on Google Maps.         | Expected for some businesses — check the `detail_url` directly.             |
| `Charge limit reached`           | Account-level monthly spend limit hit.               | Raise the run / monthly limit in your Apify plan settings.                  |

***

### ❓ FAQ

#### What data does Google Business Profile Scraper return?

Google Business Profile Scraper returns 25+ structured fields per Google Maps business listing including name, category, address, phone, website, opening hours, rating, reviews, popular times, prices, amenities, photos, and social media links.

#### How much does Google Business Profile Scraper cost?

The Actor uses pay-per-result pricing: **$0.0038 per business profile** ($3.80/1,000), plus optional **$0.0002 per review** and **$0.0002 per photo**. The Apify Free plan includes $5 of monthly credits, covering approximately **1,300 free business profiles per month**.

#### Does Google Business Profile Scraper require a login?

No. The Actor reads publicly visible Google Maps business profiles without any login or cookies.

#### What locations and languages are supported?

Any location worldwide — city, suburb, state, or country. 30+ languages are supported, including English, French, German, Spanish, Italian, Indonesian, Japanese, and more.

#### Can I get reviews and photos?

Yes. Set `reviews` and `photos` to the number of items you want per business. Each review and photo is billed separately at $0.0002 each.

#### Can I schedule Google Business Profile Scraper to run automatically?

Yes. Use Apify [Schedules](https://docs.apify.com/platform/schedules?fpr=aiagentapi) to monitor business profiles on a recurring cadence and push results via [Webhooks](https://docs.apify.com/platform/integrations/webhooks?fpr=aiagentapi).

***

### 🔌 Integrations

Google Business Profile Scraper plugs straight into the Apify ecosystem:

- **Schedules** — monitor business profiles on a recurring schedule ([docs](https://docs.apify.com/platform/schedules?fpr=aiagentapi)).
- **Webhooks** — POST results to your endpoint on `ACTOR.RUN.SUCCEEDED` ([docs](https://docs.apify.com/platform/integrations/webhooks?fpr=aiagentapi)).
- **Apify API** — `run-sync-get-dataset-items` for blocking calls, `runs` for async ([docs](https://docs.apify.com/api/v2?fpr=aiagentapi)).
- **MCP Server** — call the Actor from Claude, ChatGPT, or Cursor agents ([docs](https://docs.apify.com/platform/integrations/mcp?fpr=aiagentapi)).
- **No-code** — Make, Zapier, n8n, Pipedream, Google Sheets, Airtable.

***

### 🧱 Sister Actors from TrueFetch

#### Jobs

- [Best Job Search](https://apify.com/TrueFetch/best-job-search?fpr=aiagentapi)
- [Glassdoor Job Search](https://apify.com/TrueFetch/glassdoor-job-search?fpr=aiagentapi)
- [Glints Company Finder](https://apify.com/TrueFetch/glints-company-finder?fpr=aiagentapi)
- [Glints Job Finder](https://apify.com/TrueFetch/glints-job-finder?fpr=aiagentapi)
- [Indeed Job Search](https://apify.com/TrueFetch/indeed-job-search?fpr=aiagentapi)
- [JobStreet Company Finder](https://apify.com/TrueFetch/jobstreet-company-finder?fpr=aiagentapi)
- [JobStreet Job Finder](https://apify.com/TrueFetch/jobstreet-job-finder?fpr=aiagentapi)
- [LinkedIn Job Search](https://apify.com/TrueFetch/linkedin-job-search?fpr=aiagentapi)
- [StepStone Company Finder](https://apify.com/TrueFetch/stepstone-company-finder?fpr=aiagentapi)
- [StepStone Job Finder](https://apify.com/TrueFetch/stepstone-job-finder?fpr=aiagentapi)

#### Shopping & Deals

- [Amazon Deals Scraper](https://apify.com/TrueFetch/amazon-deals-scraper?fpr=aiagentapi)
- [Amazon Store Finder](https://apify.com/TrueFetch/amazon-store-finder?fpr=aiagentapi)
- [Argos Deals Scraper](https://apify.com/TrueFetch/argos-deals-scraper?fpr=aiagentapi)
- [ASOS Fashion Scraper](https://apify.com/TrueFetch/asos-fashion-scraper?fpr=aiagentapi)
- [eBay Deals Scraper](https://apify.com/TrueFetch/ebay-deals-scraper?fpr=aiagentapi)
- [eBay Seller Finder](https://apify.com/TrueFetch/ebay-seller-finder?fpr=aiagentapi)
- [Flipkart Deals Scraper](https://apify.com/TrueFetch/flipkart-deals-scraper?fpr=aiagentapi)
- [John Lewis Deals Scraper](https://apify.com/TrueFetch/john-lewis-deals-scraper?fpr=aiagentapi)
- [Lidl Deals Scraper](https://apify.com/TrueFetch/lidl-deals-scraper?fpr=aiagentapi)
- [Magalu Deals Scraper](https://apify.com/TrueFetch/magalu-deals-scraper?fpr=aiagentapi)
- [MediaMarkt Deals Scraper](https://apify.com/TrueFetch/mediamarkt-deals-scraper?fpr=aiagentapi)
- [Mercado Livre Deals Scraper](https://apify.com/TrueFetch/mercado-livre-deals-scraper?fpr=aiagentapi)
- [Nykaa Beauty Scraper](https://apify.com/TrueFetch/nykaa-beauty-scraper?fpr=aiagentapi)
- [OTTO Deals Scraper](https://apify.com/TrueFetch/otto-deals-scraper?fpr=aiagentapi)
- [Target Deals Scraper](https://apify.com/TrueFetch/target-deals-scraper?fpr=aiagentapi)
- [TradeIndia Product Finder](https://apify.com/TrueFetch/tradeindia-product-finder?fpr=aiagentapi)
- [TradeIndia Supplier Finder](https://apify.com/TrueFetch/tradeindia-supplier-finder?fpr=aiagentapi)
- [Walmart Deals Scraper](https://apify.com/TrueFetch/walmart-deals-scraper?fpr=aiagentapi)

#### Vehicles

- [AutoTrader Car Finder](https://apify.com/TrueFetch/autotrader-car-finder?fpr=aiagentapi)
- [AutoTrader Dealer Finder](https://apify.com/TrueFetch/autotrader-dealer-finder?fpr=aiagentapi)
- [Cars.com Car Finder](https://apify.com/TrueFetch/carscom-car-finder?fpr=aiagentapi)
- [Cars.com Dealer Finder](https://apify.com/TrueFetch/carscom-dealer-finder?fpr=aiagentapi)
- [Webmotors Car Finder](https://apify.com/TrueFetch/webmotors-car-finder?fpr=aiagentapi)

#### Real Estate

- [MagicBricks Builder Finder](https://apify.com/TrueFetch/magicbricks-builder-finder?fpr=aiagentapi)
- [MagicBricks Home Finder](https://apify.com/TrueFetch/magicbricks-home-finder?fpr=aiagentapi)
- [US Real Estate](https://apify.com/TrueFetch/us-real-estate?fpr=aiagentapi)
- [Zillow Real Estate](https://apify.com/TrueFetch/zillow-real-estate?fpr=aiagentapi)

#### Local Business & Food

- [BBB Business Finder](https://apify.com/TrueFetch/bbb-business-finder?fpr=aiagentapi)
- [BBB Review Checker](https://apify.com/TrueFetch/bbb-review-checker?fpr=aiagentapi)
- [Google Business Profile](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)
- [Reclame Aqui Company Finder](https://apify.com/TrueFetch/reclame-aqui-company-finder?fpr=aiagentapi)
- [Zomato Menu Checker](https://apify.com/TrueFetch/zomato-menu-checker?fpr=aiagentapi)
- [Zomato Restaurant Finder](https://apify.com/TrueFetch/zomato-restaurant-finder?fpr=aiagentapi)

#### Classifieds

- [Kleinanzeigen Listing Finder](https://apify.com/TrueFetch/kleinanzeigen-listing-finder?fpr=aiagentapi)
- [Kleinanzeigen Seller Finder](https://apify.com/TrueFetch/kleinanzeigen-seller-finder?fpr=aiagentapi)
- [OLX Listing Finder](https://apify.com/TrueFetch/olx-listing-finder?fpr=aiagentapi)
- [OLX Seller Finder](https://apify.com/TrueFetch/olx-seller-finder?fpr=aiagentapi)

#### Social Media

- [Find Any Company On LinkedIn](https://apify.com/TrueFetch/find-any-company-on-linkedin?fpr=aiagentapi)
- [Find Anyone On LinkedIn](https://apify.com/TrueFetch/find-anyone-on-linkedin?fpr=aiagentapi)
- [Instagram Explore](https://apify.com/TrueFetch/instagram-explore?fpr=aiagentapi)
- [Instagram Post](https://apify.com/TrueFetch/instagram-post?fpr=aiagentapi)
- [Instagram Profile](https://apify.com/TrueFetch/instagram-profile?fpr=aiagentapi)
- [Reddit Community Post](https://apify.com/TrueFetch/reddit-community-post?fpr=aiagentapi)
- [Reddit Community Profile](https://apify.com/TrueFetch/reddit-community-profile?fpr=aiagentapi)
- [Reddit Community User](https://apify.com/TrueFetch/reddit-community-user?fpr=aiagentapi)
- [Reddit Post Search](https://apify.com/TrueFetch/reddit-post-search?fpr=aiagentapi)
- [Reddit User Profile](https://apify.com/TrueFetch/reddit-user-profile?fpr=aiagentapi)
- [Social Media Marketing](https://apify.com/TrueFetch/social-media-marketing?fpr=aiagentapi)
- [Telegram Channel Message](https://apify.com/TrueFetch/telegram-channel-message?fpr=aiagentapi)
- [Telegram Group Member](https://apify.com/TrueFetch/telegram-group-member?fpr=aiagentapi)
- [Telegram Profile](https://apify.com/TrueFetch/telegram-profile?fpr=aiagentapi)
- [X Community Profile](https://apify.com/TrueFetch/x-community-profile?fpr=aiagentapi)
- [X User Profile](https://apify.com/TrueFetch/x-user-profile?fpr=aiagentapi)

#### Videos & Text

- [Best Video Downloader](https://apify.com/TrueFetch/best-video-downloader?fpr=aiagentapi)
- [Instagram To Text](https://apify.com/TrueFetch/instagram-to-text?fpr=aiagentapi)
- [TikTok Live Recorder](https://apify.com/TrueFetch/tiktok-live-recorder?fpr=aiagentapi)
- [TikTok Video Downloader](https://apify.com/TrueFetch/tiktok-video-downloader?fpr=aiagentapi)
- [TikTok Video Lookup](https://apify.com/TrueFetch/tiktok-video-lookup?fpr=aiagentapi)
- [Video Subtitles Downloader](https://apify.com/TrueFetch/video-subtitles-downloader?fpr=aiagentapi)
- [Video To Text](https://apify.com/TrueFetch/video-to-text?fpr=aiagentapi)
- [YouTube Niche Scraper](https://apify.com/TrueFetch/youtube-niche-scraper?fpr=aiagentapi)
- [YouTube Video Downloader](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)

#### Content & Articles

- [Medium Article Finder](https://apify.com/TrueFetch/medium-article-finder?fpr=aiagentapi)
- [Medium Writer Finder](https://apify.com/TrueFetch/medium-writer-finder?fpr=aiagentapi)

***

### 📞 Support, changelog, last updated

#### Support

- 💬 **Telegram Group:** [t.me/Apify\_Actor](https://t.me/Apify_Actor)
- 📧 **Direct support:** [t.me/AiAgentApi](https://t.me/AiAgentApi)
- 📖 **Actor page & docs:** [apify.com/TrueFetch/google-business-profile](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)

Maintained by **TrueFetch** on the [Apify Store](https://apify.com/TrueFetch?fpr=aiagentapi).

> **Cost of doing nothing:** manually auditing 100 local businesses on Google Maps — copying names, ratings, phone numbers, and opening hours into a spreadsheet — takes an entire day. Google Business Profile Scraper delivers structured data at $3.80 per 1,000 businesses. → [Try it free with $5 of Apify credits](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi).

#### Changelog

- **2026-05-02** — README rewritten for SEO + GEO; documented all 25+ output fields, full pricing, troubleshooting matrix, and FAQ.
- **2026-04** — Added popular times extraction from viewer data.
- **2026-03** — Improved review and photo extraction; added social media link enrichment from business websites.
- **2026-02** — Initial release: Google Maps keyword + location business search.

***

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "SoftwareApplication",
      "@id": "https://apify.com/TrueFetch/google-business-profile#software",
      "name": "Google Business Profile",
      "description": "Apify Actor that searches Google Maps by keyword and location, returning 25+ structured fields per local business including name, address, phone, opening hours, rating, reviews, popular times, prices, and photos. Pay-per-result at $0.0038 per store.",
      "applicationCategory": "BusinessApplication",
      "operatingSystem": "Web, Cloud",
      "url": "https://apify.com/TrueFetch/google-business-profile",
      "offers": {
        "@type": "Offer",
        "price": "0.0038",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock"
      },
      "author": { "@id": "https://apify.com/TrueFetch#author-TrueFetch" },
      "publisher": { "@id": "https://apify.com/TrueFetch#publisher" }
    },
    {
      "@type": "Organization",
      "@id": "https://apify.com/TrueFetch#publisher",
      "name": "TrueFetch",
      "url": "https://apify.com/TrueFetch",
      "sameAs": ["https://t.me/Apify_Actor", "https://t.me/AiAgentApi"]
    },
    {
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "What data does Google Business Profile Scraper return?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Google Business Profile Scraper returns 25+ structured fields per Google Maps business listing including name, category, address, phone, website, opening hours, rating, reviews, popular times, prices, amenities, photos, and social media links."
          }
        },
        {
          "@type": "Question",
          "name": "How much does Google Business Profile Scraper cost?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "The Actor uses pay-per-result pricing: $0.0038 per business profile ($3.80/1,000), plus optional $0.0002 per review and $0.0002 per photo. The Apify Free plan covers approximately 1,300 free business profiles per month."
          }
        },
        {
          "@type": "Question",
          "name": "Does Google Business Profile Scraper require a Google API key?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "No. The Actor reads publicly visible Google Maps business profiles without any Google Cloud account, API key, or login."
          }
        }
      ]
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Apify",
          "item": "https://apify.com"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Local Business",
          "item": "https://apify.com/store?category=BUSINESS"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Google Business Profile",
          "item": "https://apify.com/TrueFetch/google-business-profile"
        }
      ]
    }
  ]
}
```

***

**Last Updated:** May 2, 2026
**Schema version:** 1.1
**Maintained by:** [TrueFetch](https://apify.com/TrueFetch?fpr=aiagentapi) · 💬 [Telegram Group](https://t.me/Apify_Actor) · 📧 [Support](https://t.me/AiAgentApi)

# Actor input Schema

## `keyword` (type: `string`):

What you'd type in Google Maps — a business type, name, or category (e.g., 'coffee shop', 'plumber near me', 'Italian restaurant')

## `location` (type: `string`):

Where to search — city, state, or country (e.g., 'Los Angeles, CA', 'London, UK', 'Tokyo, Japan')

## `language` (type: `string`):

Language for search results and business info. Pick the language that matches your target area

## `max_results` (type: `integer`):

How many businesses to find per search

## `reviews` (type: `integer`):

How many customer reviews per business. Set to 0 to skip reviews

## `photos` (type: `integer`):

How many photos per business. Set to 0 to skip photos and speed up the search

## Actor input object example

```json
{
  "keyword": "coffee shop",
  "location": "Los Angeles, CA",
  "language": "English",
  "max_results": 1
}
```

# Actor output Schema

## `results` (type: `string`):

Google Business Profile listings with reviews, contact details, hours, and location data

# 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 = {
    "keyword": "coffee shop",
    "location": "Los Angeles, CA",
    "language": "English",
    "max_results": 1,
    "reviews": 0,
    "photos": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("truefetch/google-business-profile").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 = {
    "keyword": "coffee shop",
    "location": "Los Angeles, CA",
    "language": "English",
    "max_results": 1,
    "reviews": 0,
    "photos": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("truefetch/google-business-profile").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 '{
  "keyword": "coffee shop",
  "location": "Los Angeles, CA",
  "language": "English",
  "max_results": 1,
  "reviews": 0,
  "photos": 0
}' |
apify call truefetch/google-business-profile --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Google Business Profile",
        "description": "Extract any Google Maps listing worldwide — phone, email, hours, popular times, rating summary, photo URLs, and 40 structured fields per business. $3.80 per 1,000.",
        "version": "1.0",
        "x-build-id": "TF1WxuSsp6pVua6FK"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/truefetch~google-business-profile/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-truefetch-google-business-profile",
                "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/truefetch~google-business-profile/runs": {
            "post": {
                "operationId": "runs-sync-truefetch-google-business-profile",
                "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/truefetch~google-business-profile/run-sync": {
            "post": {
                "operationId": "run-sync-truefetch-google-business-profile",
                "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": [
                    "max_results",
                    "language",
                    "location",
                    "keyword"
                ],
                "properties": {
                    "keyword": {
                        "title": "Keyword",
                        "type": "string",
                        "description": "What you'd type in Google Maps — a business type, name, or category (e.g., 'coffee shop', 'plumber near me', 'Italian restaurant')"
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Where to search — city, state, or country (e.g., 'Los Angeles, CA', 'London, UK', 'Tokyo, Japan')"
                    },
                    "language": {
                        "title": "Language",
                        "enum": [
                            "Afrikaans",
                            "Arabic",
                            "Armenian",
                            "Belarusian",
                            "Bulgarian",
                            "Catalan",
                            "Chinese_Simplified",
                            "Chinese_Traditional",
                            "Croatian",
                            "Czech",
                            "Danish",
                            "Dutch",
                            "English",
                            "Esperanto",
                            "Estonian",
                            "Filipino",
                            "Finnish",
                            "French",
                            "German",
                            "Greek",
                            "Hebrew",
                            "Hindi",
                            "Hungarian",
                            "Icelandic",
                            "Indonesian",
                            "Italian",
                            "Japanese",
                            "Korean",
                            "Latvian",
                            "Lithuanian",
                            "Norwegian",
                            "Persian",
                            "Polish",
                            "Portuguese",
                            "Romanian",
                            "Russian",
                            "Serbian",
                            "Slovak",
                            "Slovenian",
                            "Spanish",
                            "Swahili",
                            "Swedish",
                            "Thai",
                            "Turkish",
                            "Ukrainian",
                            "Vietnamese"
                        ],
                        "type": "string",
                        "description": "Language for search results and business info. Pick the language that matches your target area"
                    },
                    "max_results": {
                        "title": "Max Results",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "How many businesses to find per search"
                    },
                    "reviews": {
                        "title": "Reviews",
                        "minimum": 0,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "How many customer reviews per business. Set to 0 to skip reviews"
                    },
                    "photos": {
                        "title": "Photos",
                        "minimum": 0,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "How many photos per business. Set to 0 to skip photos and speed up the search"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
