Google Maps Scraper API — Business & Location Data

Scrape Google Maps business data at scale. Full reviews, photos, ratings, phone numbers across 9 endpoints. No 5-review limit. Start free.

Free tier available
JSON responses
Real-time data

What Is the FlyByAPIs Google Maps Extractor API?

FlyByAPIs Google Maps Extractor API lets developers extract structured business data from Google Maps — including business details, reviews, photos, Q&A, and nearby search results — via a simple REST API with 9 dedicated endpoints. Unlike the official Google Places API, there is no 5-review cap and no per-field billing. Available on RapidAPI starting at $0/month with 100 free requests.


Google Maps Data Extraction — Business Listings, Reviews & More

The Google Maps Scraper API gives you programmatic access to the richest local business dataset on the planet — listings, full review histories, photos, Q&A, phone numbers, hours, and coordinates — returned as clean structured JSON.

9

Endpoints

Reviews per business

700+

Active users

<3s

Response time

The official Google Places API caps reviews at 5 per business and charges per-field at rates that compound fast. This API has no review cap, no per-field billing, and a free tier that gets you into production in minutes. Whether you’re building lead generation tools, local SEO platforms, or competitive intelligence dashboards — you get the same complete business data the Maps app shows, as structured JSON.

Start free — see pricing plans

100 requests/month free · No credit card required


Endpoints

EndpointKey ParametersDescription
/locate_and_searchquery, language, country, limit, zoomResolves a text query to coordinates, then searches nearby businesses. Returns both data (businesses) and location (resolved lat/lng). Main search endpoint.
/search_nearbyquery, lat, lng, language, countrySearch businesses near a specific lat/lng coordinate pair directly. Use when you already have coordinates.
/query_locatequery, language, country, lat, lng, zoomResolve a text query (e.g. “New York City”) to geographic coordinates. Returns location with latitude, longitude, name, altitude, zoom.
/business_detailsbusiness_id, language, countryFull business profile: address, phone, website, hours, categories, rating, reviews sample, photos sample, Q&A, popular times, owner info, price range, and more. Accepts Google ID or place ID.
/business_reviewsbusiness_id, limit, sort_by, next_page_token, languageAll customer reviews with rating, text, date, reviewer info, and owner responses. Paginated via next_page_token. No 5-review cap.
/business_photosbusiness_id, limit, category, next_page_token, languagePhoto URLs for a business. Filter by category. Paginated.
/business_photos_categoriesbusiness_id, language, countryList all available photo categories for a business (e.g. “Food”, “Exterior”, “Interior”). Use to filter /business_photos calls.
/business_questions_and_answersbusiness_id, languageUser-submitted questions and owner answers from the business listing.
/autocompletequery, language, country, lat, lng, filter_typesGoogle Maps autocomplete predictions for a partial query. Optional coordinate bias and type filtering.

Code Examples (Python, JavaScript, cURL)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import requests

url = "https://google-maps-extractor2.p.rapidapi.com/locate_and_search"

querystring = {
    "query": "coffee shops in San Francisco, CA",
    "language": "en",
    "country": "us",
    "limit": "10",
    "zoom": "13"
}

headers = {
    "X-RapidAPI-Key": "YOUR_API_KEY",
    "X-RapidAPI-Host": "google-maps-extractor2.p.rapidapi.com"
}

response = requests.get(url, headers=headers, params=querystring)
data = response.json()

print(f"Location resolved: {data['location']['name']} ({data['location']['latitude']}, {data['location']['longitude']})")

for business in data.get("data", []):
    print(f"{business['name']}{business.get('rating', 'N/A')} stars ({business.get('reviews_count', 0)} reviews)")
    print(f"  {business.get('full_address', 'No address')}")
    print(f"  {business.get('phone', 'No phone')} | {business.get('website_url', 'No website')}")
    print()
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
const url = "https://google-maps-extractor2.p.rapidapi.com/locate_and_search?" +
  "query=coffee%20shops%20in%20San%20Francisco%2C%20CA&language=en&country=us&limit=10&zoom=13";

const options = {
  method: "GET",
  headers: {
    "X-RapidAPI-Key": "YOUR_API_KEY",
    "X-RapidAPI-Host": "google-maps-extractor2.p.rapidapi.com",
  },
};

const response = await fetch(url, options);
const { data, location } = await response.json();

console.log(`Location resolved: ${location.name} (${location.latitude}, ${location.longitude})`);

data?.forEach((business) => {
  console.log(`${business.name}${business.rating ?? "N/A"} stars (${business.reviews_count ?? 0} reviews)`);
  console.log(`  ${business.full_address ?? "No address"}`);
  console.log(`  ${business.phone ?? "No phone"} | ${business.website_url ?? "No website"}\n`);
});
1
2
3
4
5
6
7
8
curl -G "https://google-maps-extractor2.p.rapidapi.com/locate_and_search" \
  --data-urlencode "query=coffee shops in San Francisco, CA" \
  --data-urlencode "language=en" \
  --data-urlencode "country=us" \
  --data-urlencode "limit=10" \
  --data-urlencode "zoom=13" \
  -H "X-RapidAPI-Key: YOUR_API_KEY" \
  -H "X-RapidAPI-Host: google-maps-extractor2.p.rapidapi.com"

Example JSON Response

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
{
  "status": true,
  "location": {
    "id": "0x80858080b0f93a49:0x11b2be7748ef36e8",
    "name": "San Francisco, CA, USA",
    "latitude": 37.7749295,
    "longitude": -122.4194155,
    "altitude": 12.5,
    "zoom": 13
  },
  "data": [
    {
      "google_id": "0x808580848a808a09:0x19f4b92a1f04e24",
      "place_id": "ChIJaU9OubkpwokR6HClFOoZ1OM",
      "name": "Sightglass Coffee",
      "address": "270 7th St, San Francisco, CA 94103",
      "full_address": "270 7th St, San Francisco, CA 94103, USA",
      "detailed_address": {
        "street_number": "270",
        "street": "7th Street",
        "city": "San Francisco",
        "state": "California",
        "zip": "94103",
        "country": "United States"
      },
      "main_category": "Coffee shop",
      "categories": ["Coffee shop", "Cafe", "Espresso bar"],
      "rating": 4.6,
      "reviews_count": 2847,
      "phone": "+1 415-861-1313",
      "full_phone": "+14158611313",
      "website_url": "https://sightglasscoffee.com",
      "website_domain": "sightglasscoffee.com",
      "latitude": 37.7749,
      "longitude": -122.4094,
      "time_zone": "America/Los_Angeles",
      "working_hours": {
        "Monday": ["7:00 AM–6:00 PM"],
        "Tuesday": ["7:00 AM–6:00 PM"],
        "Wednesday": ["7:00 AM–6:00 PM"],
        "Thursday": ["7:00 AM–6:00 PM"],
        "Friday": ["7:00 AM–6:00 PM"],
        "Saturday": ["8:00 AM–6:00 PM"],
        "Sunday": ["8:00 AM–6:00 PM"]
      },
      "price_range": "$$",
      "price_breakdown": null,
      "featured_photo": "https://lh5.googleusercontent.com/p/AF1QipO1n2s_example=w800-h600-k-no",
      "owner_name": "Sightglass Coffee",
      "owner_id": "109824763158204820000",
      "owner_profile_url": "https://www.google.com/maps/contrib/109824763158204820000",
      "about": {"Accessibility": ["Wheelchair accessible entrance", "Wheelchair accessible seating"]},
      "about_descriptions": ["Specialty coffee roaster and cafe in SoMa"],
      "can_claim": false,
      "reservation_url": null,
      "reservation_domain": null,
      "order_online_url": "https://sightglasscoffee.com/order"
    },
    {
      "google_id": "0x80858093b20f1a41:0x3c25a27b63e8ac17",
      "place_id": "ChIJQRry-YOAhYAREKzoY3snJTw",
      "name": "Ritual Coffee Roasters",
      "address": "1026 Valencia St, San Francisco, CA 94110",
      "full_address": "1026 Valencia St, San Francisco, CA 94110, USA",
      "detailed_address": {
        "street_number": "1026",
        "street": "Valencia Street",
        "city": "San Francisco",
        "state": "California",
        "zip": "94110",
        "country": "United States"
      },
      "main_category": "Coffee shop",
      "categories": ["Coffee shop", "Cafe", "Coffee roaster"],
      "rating": 4.4,
      "reviews_count": 1592,
      "phone": "+1 415-641-1011",
      "full_phone": "+14156411011",
      "website_url": "https://ritualroasters.com",
      "website_domain": "ritualroasters.com",
      "latitude": 37.7578,
      "longitude": -122.4213,
      "time_zone": "America/Los_Angeles",
      "working_hours": {
        "Monday": ["6:00 AM–7:00 PM"],
        "Tuesday": ["6:00 AM–7:00 PM"],
        "Wednesday": ["6:00 AM–7:00 PM"],
        "Thursday": ["6:00 AM–7:00 PM"],
        "Friday": ["6:00 AM–7:00 PM"],
        "Saturday": ["7:00 AM–7:00 PM"],
        "Sunday": ["7:00 AM–7:00 PM"]
      },
      "price_range": "$$",
      "price_breakdown": null,
      "featured_photo": "https://lh5.googleusercontent.com/p/AF1QipOexample2=w800-h600-k-no",
      "owner_name": "Ritual Coffee Roasters",
      "owner_id": "104512839274810230000",
      "owner_profile_url": "https://www.google.com/maps/contrib/104512839274810230000",
      "about": {"Service options": ["Dine-in", "Takeout"], "Accessibility": ["Wheelchair accessible entrance"]},
      "about_descriptions": ["Third-wave coffee roaster with multiple SF locations"],
      "can_claim": false,
      "reservation_url": null,
      "reservation_domain": null,
      "order_online_url": null
    }
  ]
}

Google Maps Data Extraction Features

  • Comprehensive Business Search — Find businesses by keyword, category, or location with rich listing data.
  • Full Business Profiles — Access hours, phone numbers, websites, categories, price levels, and operational attributes.
  • Customer Reviews — Get review text, star ratings, dates, and owner responses for sentiment analysis and reputation monitoring. No 5-review cap.
  • Business Photos — Retrieve high-quality photo URLs for any business listing.
  • Q&A Extraction — Pull question-and-answer threads that appear on business listings.
  • Autocomplete — Build smart search interfaces with Google Maps autocomplete predictions.
  • Geocoding & Reverse Geocoding — Convert between addresses and coordinates seamlessly.
  • Global CoverageWorks for any location indexed by Google Maps, worldwide.

Use Cases

Lead Generation with Google Maps Business Data

Search for businesses by niche and city, extract phone numbers, websites, and addresses in bulk. Build targeted prospect lists for any industry in minutes — not days of manual research.

Review Monitoring & Local SEO Auditing

Aggregate all new reviews daily across hundreds of client locations — no artificial 5-review cap. Track rating trends, response rates, and review sentiment over time to power local SEO audit dashboards.

Local Business Competitive Analysis via Google Maps

Track competitor ratings, review velocity, photo counts, and operational changes across an entire industry category. Get alerted when a competitor's rating drops or a new location opens in your area.

Real Estate Research & Market Intelligence

Map business density, category distribution, and neighborhood activity across target areas. Use geocoding to enrich property listings and identify underserved markets by analyzing business coverage gaps geographically.

Start building — view pricing

Free tier · No credit card · Cancel anytime


Why Developers Switch

The official Google Places API was built for map embedding, not data extraction. It caps reviews at 5 per business — which makes it useless for reputation monitoring or sentiment analysis at scale. It charges per-field on top of per-request, so costs spike fast on large datasets. And building your own Maps scraper is a different problem entirely: Maps is a client-rendered JavaScript application designed to resist automation.

We built server-side extraction that emulates the Google Maps mobile client — returning the same complete business data the app shows, without browser automation overhead. The result is a simple REST endpoint that returns full business profiles in under 3 seconds.

Why other approaches fail

Google Places API — 5-review cap, per-field billing

Capped at 5 reviews per business, making it useless for reputation analysis. At scale, per-field billing adds up to $17+ per 1,000 requests — and you still can't get full review data or photos in a single call.

DIY Playwright / Selenium scraper

Google Maps is a complex client-rendered app. Headless browser infrastructure is slow (5–15s per page), expensive to run at scale, and breaks every time Maps updates its rendering pipeline.

$

Outscraper and Apify — unpredictable per-row costs

Per-row pricing sounds cheap until you're pulling thousands of businesses with full review histories. Costs become hard to forecast, and neither offers a simple REST API — you're working with credits, job queues, and async flows.


See pricing plans

Free tier available — no credit card required


vs. Competitors

FeatureFlyby Maps APIGoogle Places APIOutscraperApify Scraper
Starting priceFree$17/1K req$0.001–0.01/rowCredits-based
Reviews per business Unlimited✗ Max 5✓ Unlimited✓ Unlimited
Simple REST API✗ Async/jobs
Photos & Q&A endpoints✓ Photos only
Predictable monthly cost✗ Per-field✗ Per-row✗ Credits
Response time <3s<1sVariesAsync (mins)
Global coverage

Get Started in Minutes

  1. Sign up on RapidAPI — it’s free.
  2. Subscribe to the Basic plan (no credit card required).
  3. Copy your API key from the RapidAPI dashboard.
  4. Make your first request using the code examples above.

The 100 free requests cover all 9 endpoints — enough to test business search, pull a full review history, and see exactly what data you get. Pro at $9.99 gives you 3,000 requests. Most users who need volume run their full lead gen or SEO audit workflows comfortably within Ultra. Start free, get your first result in under 3 seconds.

Simple Pricing

Start Free, Scale as You Grow

All plans include full API access to every endpoint. No feature gating.

Basic

Free
  • 100 requests/month
  • Shared rate limit
Start Free

Pro

$9.99 /mo
  • 3,000 requests/month
  • Standard rate limit
Choose Plan

Mega

$149.99 /mo
  • 200,000 requests/month
  • Priority rate limit
Choose Plan
FAQ

Frequently Asked Questions

Q How do I extract Google Maps business data programmatically?

FlyByAPIs Google Maps Extractor API provides 9 REST endpoints for extracting business listings, details, reviews, photos, Q&A, and autocomplete data from Google Maps. Make a GET request with a search query and location, and get structured JSON back — business names, addresses, phone numbers, ratings, hours, and more. Available on RapidAPI with 100 free requests/month.

Q Is there a Google Maps API that returns more than 5 reviews?

Yes. The official Google Places API caps reviews at 5 per business, which makes it impractical for sentiment analysis or reputation monitoring. FlyByAPIs Google Maps Extractor API has no review cap — you can retrieve the full review history for any business, paginated via tokens, with review text, ratings, dates, and owner responses.

Q How do I scrape Google Maps reviews without getting blocked?

FlyByAPIs Google Maps Extractor API handles all extraction server-side — no browser automation, no proxies, no CAPTCHA handling on your end. The /business_reviews endpoint returns paginated reviews as structured JSON in under 3 seconds. No review limit per business. Starts free with 100 requests/month on RapidAPI.

Q What is the cheapest alternative to Google Places API for data extraction?

FlyByAPIs Google Maps Extractor API starts free with 100 requests/month and offers paid plans from $9.99/month. Unlike Google Places API, there is no per-field billing and no 5-review cap. You get full business profiles, unlimited reviews, photos, and Q&A — all included in a flat monthly rate.

Q How do I build a lead generation tool with Google Maps data?

Use FlyByAPIs Google Maps Extractor API to search businesses by niche and location, then extract phone numbers, websites, addresses, and ratings in bulk. The /locate_and_search endpoint resolves any text query to coordinates and returns nearby businesses with full contact details as structured JSON.

Q Can I get Google Maps business data for any country?

Yes. FlyByAPIs Google Maps Extractor API works for any location indexed by Google Maps worldwide — from New York to Tokyo to Sao Paulo. Specify a language and country parameter to get localized results.

Q How do I get Google Maps photos via API?

FlyByAPIs Google Maps Extractor API includes dedicated /business_photos and /business_photos_categories endpoints. You get direct image URLs for any business, filterable by category (Food, Interior, Exterior, etc.), with pagination support for large photo galleries.

Q What is the best API for scraping Google Maps business listings?

FlyByAPIs Google Maps Extractor API is a purpose-built REST API for Google Maps data extraction. It offers 9 endpoints covering search, business details, reviews (no 5-review cap), photos, Q&A, and autocomplete — all as structured JSON with a free tier on RapidAPI. Unlike DIY scrapers, it requires zero maintenance and handles anti-bot detection automatically.

Ready to Get Started?

Sign up for free and make your first API call in under 5 minutes.