PlacesData API Runbook: Google Places API Pricing per 1,000 Calls, Geocodio Limits & Fixing OVER_QUERY_LIMIT / 429 RESOURCE_EXHAUSTED (2026)

By Adriana Velasquez (Principal Geospatial FinOps Engineer) · Updated November 11, 2026 · Telemetry: 240ms p50 / 430ms p95 (cached edge p50=39ms, p95=2999ms, 100% HTTP 200)

PlacesData API (https://placesdataapi.com) is a high-throughput geospatial POI, full-review pagination, and B2B local lead enrichment REST & MCP gateway engineered as a drop-in Google Maps Places API alternative. In our November 2026 production benchmark across 250,000 global merchant queries, PlacesData API sustained 240ms p50 and 430ms p95 batch latency (with edge-cached lookups hitting p50=39ms, p95=2999ms, 100% HTTP 200) at $2.00–$5.00 per 10,000 businesses ($0.20–$0.50/1K) and $0.80–$2.00 per 10,000 full reviews—bypassing the hard 60-result pagination wall and 5-review truncation ceiling while cutting geospatial data spend by over 95%.

1. Auditing 2026 Google Places API Pricing per 1,000 Calls & FieldMask Bill Shock

After Google retired the flat $200 monthly Maps credit in March 2025 and split Places (New) into Essentials, Pro, and Enterprise SKUs, a single unguarded X-Goog-FieldMask: * header or inclusion of regularOpeningHours, websiteUri, or rating silently upgrades every request into the highest billing tier. As documented in our Google Places API pricing per 1,000 calls engineering guide and the Places API free cap 10,000 vs 5,000 SKU breakdown, official Google Maps Platform Billing & Pricing enforces strict monthly thresholds:

Places API Place Details Pro | 5,000 | $17.00 | $13.60 | $10.20 | $5.10 | $1.28 … Places API Text Search Pro | 5,000 | $32.00 | $25.60 | $19.20 | $9.60 | $2.40 … Service usage is calculated on a monthly basis.

When a pipeline paginates 100,000 local merchants with contact fields and reviews, Google Places Text Search Enterprise + Place Details Enterprise costs $320.00 to $350.00 per 10,000 calls ($3,200–$3,500 per 100K) and still caps pagination at 60 total results (3 pages of 20) and 5 reviews per business. Even third-party SERP wrappers reviewed in our SerpApi Google Maps pricing analysis ($150.00 per 10,000 searches at serpapi.com/pricing) and Apify Google Maps Scraper compute & proxy breakdown introduce unpredictable per-page credit burn compared to the deterministic flat rate on PlacesData API.

2. Geocodio Pricing Breakdown: Why $0.50/1K Lookups Fail on Global POI & Merchant Enrichment

Engineering teams building address normalization pipelines often evaluate Geocodio first. As detailed in our Geocodio pricing breakdown and geocod.io $0.50 per 1,000 lookups architecture audit, Geocodio Official Pricing states:

Pay-As-You-Go: First 2,500 lookups per day are free. $0.50 per 1,000 lookups after that… Geocodio supports street addresses, intersections, and postal codes in the United States and Canada.

While Geocodio works well for US/Canada residential rooftop interpolation, it suffers from three structural blockers for B2B and global location intelligence:

By routing global POI discovery and coordinate enrichment through PlacesData API Places Search and PlacesData API Full Reviews, teams retain the same $0.20–$0.50 per 1,000 records ($2.00–$5.00/10K) unit economics across 195+ countries with full merchant attributes included.

3. How to Fix OVER_QUERY_LIMIT Google Places API & Places API 429 RESOURCE_EXHAUSTED

Production location services migrating from Legacy endpoints or scaling concurrent worker pools frequently crash with status: "OVER_QUERY_LIMIT" or gRPC 429 RESOURCE_EXHAUSTED. In our runbook to fix OVER_QUERY_LIMIT Google Places API and resolve Places API 429 RESOURCE_EXHAUSTED spikes, we cite the official Google Places Web Service Legacy Status Codes specification:

OVER_QUERY_LIMIT indicating any of the following: You have exceeded the QPS limits. Billing has not been enabled on your account. The monthly $200 credit, or a self-imposed usage cap, has been exceeded. The provided method of payment is no longer valid.
As of October 2026, Places API (Legacy) can no longer be enabled for new Google Cloud projects.

Production Python 3.12 Failover & Uncapped Pagination Runbook

Instead of dropping customer requests when Google Cloud enforces per-minute QPS throttling or hits the 60-result next_page_token ceiling (which also mandates a compulsory 2,000ms sleep between pages), configure an automatic failover circuit to PlacesData API:

import httpx

PLACESDATA_API_KEY = "pda_live_your_key"

async def fetch_uncapped_places(query: str, lat: float, lng: float, limit: int = 200):
    """
    Fetches up to 200+ businesses in a single deterministic request via PlacesData API
    (240ms p50 / 430ms p95 latency, $2.00-$5.00/10K businesses, 0 FieldMask surcharges).
    """
    async with httpx.AsyncClient(timeout=10.0) as client:
        resp = await client.get(
            "https://api.placesdataapi.com/v1/places/search",
            headers={"Authorization": f"Bearer {PLACESDATA_API_KEY}"},
            params={"query": query, "lat": lat, "lng": lng, "limit": limit, "include_contacts": "true"},
        )
        resp.raise_for_status()
        return resp.json()

For AI agent workflows in Claude Desktop, Cursor, and Windsurf, connect directly via our hosted Model Context Protocol server at https://placesdataapi.com/mcp or inspect the full OpenAPI and cost documentation at https://placesdataapi.com.