Google Maps API and Google Reviews: Complete Usage Guide
Google reviews have become the number one purchase decision factor for consumers. 92% of users read reviews before choosing a local business. But how can you systematically access this data? How can you analyze it on a large scale?
This is where the Google Maps API comes in. It provides structured access to data from millions of places, including reviews, ratings, hours, and much more.
This article shows you how to use the Google Maps API, its real limits, how to secure your API key, and above all, how to leverage reviews for your sales prospecting.
What is the Google Maps API?
The Google Maps API is not a single tool. It is a suite of distinct APIs, each with a specific role.
Main Google Maps APIs
Maps JavaScript API Integrates interactive maps into your web pages. You can add markers, polygons, routes. Used by 99% of websites with an embedded map.
Geocoding API Converts an address into GPS coordinates (latitude/longitude) or vice versa. Example: "10 rue de la Paix, Paris" → 48.8566, 2.3522.
Directions API Calculates routes between two points. Modes: driving, biking, public transport, walking. Returns duration, distance, detailed steps.
Places API Accesses information about places: restaurants, hotels, shops, services. This is the API you are interested in if you want to extract business data (name, address, phone, website, reviews).
Distance Matrix API Calculates distances and durations between multiple points. Useful for optimizing delivery or service routes.
Maps Static API Generates static map images (PNG, GIF, JPG) without an interactive interface.
Street View API Accesses Street View panoramic images.
For sales prospecting and review analysis, you will mainly use the Places API.
How to Obtain a Google Maps API Key
Step 1: Create a Google Cloud Account
Go to console.cloud.google.com.
Sign in with your Google account (or create one).
Step 2: Create a Project
In the console, click on "Create a Project" (top left).
Give it a name: "Sales Prospecting", "Review Analysis", etc.
Wait a few seconds for the project to be created.
Step 3: Enable Necessary APIs
In the left menu, go to "APIs & Services" → "Library".
Search for "Places API" and click "Enable".
Do the same for "Geocoding API" and "Maps JavaScript API" if you need them.
Step 4: Create an API Key
Go to "APIs & Services" → "Credentials".
Click on "Create Credentials" → "API Key".
Your API key will be displayed (a long string of random characters).
Copy it and keep it secret.
Step 5: Set Up Billing
Google offers $200 in free credits per month for new accounts.
Go to "Billing" and link a credit card.
Important: even with free credits, you must set up billing to use the API. Without it, the API will be blocked after the trial credits are exhausted.
Google Maps API Pricing: What You Need to Know
Google charges per API call. Rates vary by service.
Actual Costs (2024)
Places API (search and details)
- Text search: $32 for 1,000 requests
- Nearby search: $32 for 1,000 requests
- Place details: $17 for 1,000 requests
Geocoding API
- $5 for 1,000 requests
Directions API
- $5 for 1,000 requests
Concrete Example: Extracting 10,000 Restaurants in France
To search for all restaurants in France via Places API:
- 1 search request per geographic area
- If you divide France into 50 areas, it will cost you: 50 × 0.032$ = 1.60$
- To retrieve the details of each restaurant (phone, hours, reviews): 10,000 × 0.017$ = 170$
- Total: ~171.60$ for 10,000 restaurants.
That's a lot if you need to do it regularly.
Quotas and Limits
Google imposes quotas to protect its servers:
- Requests per second: 50 (free) or 100+ (with special request)
- Requests per day: unlimited (but charged)
- Results per request: max 20 results (Places API)
- Total results per search: max 60 results (3 pages of 20)
Critical limitation: with Places API, you can only retrieve 60 results per search. To extract 10,000 restaurants, you need to make 167 different searches (by geographic division or category).
This means 167 search requests × 0.032$ = 5.34$ minimum, plus detail requests.
Securing Your Google Maps API Key
Your API key is like a password. If someone steals it, they can make API calls at your expense.
Real Risks
- An attacker uses your key to make 100,000 requests in one night: $3,000 in fees
- Your web application exposes the key in JavaScript: any user can copy it from the source code
- An employee accidentally posts it on GitHub: bots detect it in seconds
How to Protect Your Key
1. Restrict by Domain (HTTP Referrer)
In the Google Cloud console, go to "Credentials" → click on your API key.
Under "Application Restrictions", choose "HTTP referrer (web sites, domains)".
Add your allowed domains:
www.yoursite.comyoursite.comapp.yoursite.com
Only requests from these domains will be accepted.
2. Restrict by API
Under "API Restrictions", check only the APIs you use.
If you only use Places API, disable Geocoding, Directions, Street View, etc.
This way, even if someone steals your key, they cannot use it to access other services.
3. Monitor Usage
Go to "Billing" → "Usage Reports".
Check daily how many API calls you are making.
Set up an alert: if you exceed X$ per day, you receive an email.
4. Regular Rotation
Create a new API key every 3 months.
Delete the old key.
This limits the duration during which a stolen key can be used.
5. Never Expose the Key in Frontend
❌ Bad:
// In your visible JavaScript code
const apiKey = "AIzaSyD..."; // EXPOSED
fetch(`https://maps.googleapis.com/maps/api/place/textsearch/json?key=${apiKey}&query=restaurants`)
✅ Good:
// From your frontend
fetch('/api/search-restaurants?query=restaurants')
// Your backend makes the API call with the key
Your backend (Node.js, Python, PHP) keeps the key secret. The frontend never sees it.
6. For Mobile Applications
Use a backend proxy. Your mobile app calls your server, which calls Google Maps.
Never store the API key in the app (it can be decompiled).
Places API: How to Extract Place Data
Places API gives you access to basic information about a place.
Types of Search
Text Search (text-based search)
https://maps.googleapis.com/maps/api/place/textsearch/json?query=restaurants+paris&key=YOUR_API_KEY
Returns:
- Restaurant name
- Address
- Google rating
- Number of reviews
- GPS coordinates
- Place ID
Nearby Search (nearby search)
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=48.8566,2.3522&radius=5000&type=restaurant&key=YOUR_API_KEY
Searches for all restaurants within a 5 km radius of a coordinate.
Place Details (place details)
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ...&key=YOUR_API_KEY
Retrieves complete info: phone, website, hours, photos, reviews, etc.
Data Available via Places API
- Name, full address, postal code
- Phone
- Website
- Categories (type of business)
- Google rating (0-5 stars)
- Total number of reviews
- Opening hours
- Photos (number and URL)
- GPS coordinates
- Place ID (unique Google identifier)
What Places API Does NOT Provide
❌ Review text (comment content) ❌ Review authors ❌ Review dates ❌ Listing details (detailed photos, videos) ❌ Change history
To access review text, you need to scrape the Google Maps page directly or use a specialized tool.
Analyzing Google Reviews: Strategy and Implementation
Google reviews are a goldmine for understanding your competitors and identifying business opportunities.
Step 1: Define Your Analysis Criteria
Before analyzing, decide what you are looking for.
Use Case 1: Identify Poorly Rated Competitors
You are an online reputation agency. You are looking for businesses with a rating < 3 stars to contact.
Criteria:
- Average rating < 3 stars
- At least 20 reviews (to avoid isolated cases)
- Latest reviews dated within the last 3 months (recent problem)
Use Case 2: Analyze Satisfaction by Sector
You are a marketing consultant. You analyze the average satisfaction in your area for each sector (restaurants, hair salons, plumbers, etc.).
Criteria:
- Average rating by sector
- Number of reviews by sector
- Rating trend over 12 months
Use Case 3: Find Clients for a Web Agency
You sell web services. You are looking for businesses with a poor website (outdated, not responsive, no contact form).
Criteria:
- No website (or very old site)
- Google rating < 4 stars (possible dissatisfaction related to the web)
- Number of reviews > 50 (established business, can afford to invest)
Step 2: Extract Data
Use Places API to retrieve the rating and number of reviews.
Example in Python:
import requests
API_KEY = "YOUR_API_KEY"
def search_restaurants(city, min_rating=3.0):
url = "https://maps.googleapis.com/maps/api/place/textsearch/json"
params = {
"query": f"restaurants {city}",
"key": API_KEY
}
response = requests.get(url, params=params)
results = response.json().get("results", [])
filtered = [
{
"name": r["name"],
"address": r["formatted_address"],
"rating": r.get("rating", 0),
"review_count": r.get("user_ratings_total", 0),
"place_id": r["place_id"]
}
for r in results
if r.get("rating", 0) >= min_rating
]
return filtered
# Usage
restaurants = search_restaurants("Paris", min_rating=4.0)
for r in restaurants:
print(f"{r['name']} - {r['rating']} ⭐ ({r['review_count']} reviews)")
Step 3: Analyze Review Content
Places API does not provide review text. You need to scrape them directly or use a tool.
Manual Analysis (for small volume)
- Go to Google Maps
- Open the competitor's listing
- Read the reviews (from most recent to oldest)
- Note recurring themes: service, price, cleanliness, timing, etc.
Automated Analysis (for large volume) Use a scraping tool or a third-party API that extracts review text.
Look for themes:
- Positive: "quick service", "warm welcome", "excellent value for money"
- Negative: "too long wait", "rude staff", "expensive for the quality"
Step 4: Identify Opportunities
Example 1: Poorly Rated Plumber
You find a plumber with 2.8 ⭐ (45 reviews). Recent reviews mention: "too expensive estimate", "no follow-up", "long response time".
Opportunity: contact the owner to propose a marketing agency to improve their reputation and customer service.
Example 2: Restaurant Without a Website
You find a restaurant with 4.2 ⭐ (120 reviews), but no website. Reviews mention: "hard to find hours", "no online reservation".
Opportunity: propose a website with online booking.
Example 3: Declining Hair Salon
You find a salon with a declining rating (4.5 → 3.8 in 6 months). Recent reviews: "the owner has changed", "not as good as before", "prices increased".
Opportunity: contact the new owner to propose customer training or a service audit.
Real Limits of the Google Maps API for Data Extraction
Limit 1: You Can Only Retrieve 60 Results per Search
Places API returns a maximum of 20 results per page, 3 pages = 60 results.
To extract 10,000 restaurants in France, you need to make 167 different searches (by geographic area or sub-category).
Impact: long processing time, high costs, risk of hitting quotas.
Limit 2: Reviews Are Not Accessible
Places API provides the number of reviews and average rating, but not the review text.
To analyze the content (what customers actually say), you need to scrape Google Maps directly.
Impact: you need to use two tools (API + scraper) to get a complete view.
Limit 3: Quotas and Costs Accumulate Quickly
Each request costs. To extract 10,000 restaurants with details, expect $170+.
If you need to update the data every month, that's at least $2,000 per year.
Impact: costly solution for SMEs and agencies.
Limit 4: Data Is Not Updated in Real-Time
The API indexes data, but there is a delay. A new restaurant may take days to appear.
Impact: slightly outdated data.
Limit 5: Geographic and Legal Restrictions
Google limits requests by region to prevent abuse. Some countries have additional restrictions.
Impact: impossible to extract certain sectors en masse.
Using IBLead: An Alternative for Google Maps Prospecting
If you are looking to extract Google Maps data and reviews on a large scale, the Google Maps API has its limits (costs, quotas, incomplete data).
IBLead offers a different approach: a pre-indexed database of 50M+ Google Maps listings, updated monthly, with full access to Google reviews.
Ready to get started?
Access every Google Maps business, enriched with emails and legal data.
Try IBLead freeRelated articles
10 Proven Tips to Get Customers to Leave More Google Reviews on Maps
Learn 10 actionable strategies to increase Google Maps reviews. Timing, incentives, QR codes, and response tactics that actually work.
7 Cold Email Mistakes to Avoid: Examples & Templates
Avoid these 7 cold email mistakes to avoid examples that kill response rates. Real examples, AIDA templates, and proven fixes for better outreach.
ABM Google Maps Data: The Complete Strategic Guide
Learn how abc account based marketing google maps data drives 208% more revenue. Build precise target lists with 50M+ pre-indexed businesses.