Google Custom Search JSON API Alternative in 2026 — fastCRW [Replacement Before the 2027 Shutdown]
Google's Custom Search JSON API is closing to new customers and existing users must migrate off by 2027-01-01. fastCRW is a search + full-page scrape replacement with a public benchmark, flat credits, and a single AGPL-3.0 self-host binary.
Google's Custom Search JSON API is closing (migrate by 2027-01-01); fastCRW is the replacement when you need real web search plus full-page content, without a shutdown deadline or a hard 10,000-query/day ceiling.
If you are evaluating a google search api alternative because Google's Custom Search JSON API is shutting down, this page is a sourced comparison of fastCRW against the Custom Search JSON API on the dimensions that drive the migration: the 2027-01-01 deadline, the per-query caps, combined search-and-scrape, latency, self-host shape, and pricing at agent scale.
Verdict
Google's Custom Search JSON API (also marketed as the Programmable Search / CSE JSON API) is being retired. It is closed to new customers, and existing users must migrate off by 2027-01-01 (per developers.google.com/custom-search/v1/overview, verified 2026-07). That deadline alone forces a replacement decision. Google now points existing users to Vertex AI Search (for up to 50 domains) or a contact form for full web search (per developers.google.com/custom-search/v1/overview, verified 2026-07); fastCRW is a simpler drop-in for teams that just want real web search plus page content without adopting Vertex.
There is also a precision point worth stating up front: the Custom Search JSON API does not search raw Google web ranking. It searches a configured Programmable Search Engine — a set of sites you define (per developers.google.com/custom-search/v1/overview, verified 2026-07). For searching within your own site or a small fixed list of domains, that is purpose-built and cheap. For open-web research an agent actually needs, it is the wrong shape even before the shutdown.
Choose fastCRW when you need real web search plus the full text of the results, one API, flat credits, and an AGPL-3.0 self-host path with no shutdown deadline. If all you ever needed was site search over a small fixed set of your own sites, note that below before you migrate.
Why You Need a Replacement
The Custom Search JSON API stops being a viable dependency for three concrete reasons (all per developers.google.com/custom-search/v1/overview, verified 2026-07):
- The shutdown. It is closed to new customers and existing users must migrate off by 2027-01-01. Anything you build on it now has a hard expiry date.
- The 10,000-query/day ceiling. You get 100 queries/day free, then $5 per 1,000 queries, up to a hard ceiling of 10,000 queries/day that cannot be raised. An agent whose query volume tracks user traffic hits a wall you cannot pay your way past.
- 10 results per call. A single call returns at most 10 results (up to 100 per query with paging). Fan-out for RAG means many metered calls, each still capped.
For a search-then-read agent, those constraints compound: capped queries, capped results, and a fixed sunset date.
What This Comparison Covers
This comparison is scoped to the agent-scraping and RAG use case. It deliberately covers:
- combined search-plus-scrape in a single API,
- per-request search latency under realistic AI-agent fan-out,
- open-web coverage versus configured-engine coverage,
- self-hosting and data-residency posture,
- and pricing without a fixed daily ceiling.
It does not re-argue site search over a small fixed domain set, because that is the one job a configured Programmable Search Engine is genuinely built for.
Head-to-Head
| Decision area | fastCRW | Custom Search JSON API |
|---|---|---|
| Availability | Active, no shutdown date | Closed to new customers; existing users must migrate by 2027-01-01 (per developers.google.com/custom-search/v1/overview, verified 2026-07) |
| Search + scrape in one API | Yes — /v1/search and /v1/scrape share auth and credits | Search only; you bring your own scraper |
| What it searches | Open-web search results | A configured Programmable Search Engine (sites you define), not raw Google ranking |
| Daily cap | No fixed 10,000-query/day ceiling — see /pricing | Hard 10,000 queries/day, cannot be raised |
| Results per call | Search plus full page content in one call | 10 results per call, 100 per query |
| Self-host shape | Single AGPL-3.0 binary, built-in MCP | Hosted Google API only |
| Pricing model | Flat credits, 1 credit/query — see /pricing | 100/day free, then $5 per 1,000 queries up to the daily ceiling |
| Effective search price | $5 per 1,000 queries, capped at 10,000/day (per developers.google.com/custom-search/v1/overview, verified 2026-07) | |
| Concurrency | Up to 150 concurrent requests on the Scale plan (derived from PLAN_DISPLAY / fastCRW /pricing, verified 2026-07) | No published concurrency figure; hard 10,000-query/day ceiling |
| Best fit | Open-web search + content for RAG and agents | Site search over a small fixed set of your own domains |
These rows describe the migration framing. They are not a universal claim about every workload.
Where fastCRW Wins
- No shutdown deadline. fastCRW is active and self-hostable; nothing forces a migration on a fixed date.
- Search + read in one API. A Firecrawl-compatible
/v1/searchreturns results, and/v1/scrapereads each page with the same credential — no separate scraper for the content the agent actually needs. - No hard daily ceiling of that shape. Search is 1 credit per query on flat credits; there is no fixed, unraisable 10,000-query/day wall (see /pricing and /docs/search for current limits).
- Open-web coverage. fastCRW searches the open web and renders JS-heavy pages, rather than a pre-configured set of sites.
- AGPL-3.0 single-binary self-host with a built-in our MCP integration, so any MCP-aware agent gets
crw_searchandcrw_scrapeas native tools.
On latency: fastCRW search averaged 880 ms over a 100-query benchmark (benchmarks/triple-bench.ts, concurrent vs Firecrawl + Tavily); 73/100 latency wins; 100% success. This is a search benchmark only — it does not measure scrape performance.
Where Custom Search Is Still Strong
Honest version — if you only need site search, the Custom Search JSON API is purpose-built:
- Site search over a small fixed set. For searching within your own site(s) or a short, defined list of domains, a configured Programmable Search Engine is exactly the tool, and it is cheap — until it is shut off on 2027-01-01 (per developers.google.com/custom-search/v1/overview, verified 2026-07).
- Google's index behind that engine. For the domains you configure, results are drawn from Google's index with no infrastructure to run yourself.
If that describes your entire need and you accept the 2027 deadline, you may not need a general-purpose search API at all. For anything beyond a fixed domain set, keep reading.
Pricing Comparison
Approximate cost for a workload of 10,000 search-and-read operations per month (one query plus three to five page reads per operation). Verify exact numbers on each vendor's pricing page.
| Service | Approximate monthly cost | Notes |
|---|---|---|
| Custom Search JSON API | 100 queries/day free, then $5 per 1,000 queries, capped at 10,000/day (per developers.google.com/custom-search/v1/overview, verified 2026-07) | Search only, configured engine only — you still pay a separate scraper for page reads, and it sunsets 2027-01-01 |
| Custom Search + a separate scraper API | metered queries + $50–$100/mo scraper | Two vendors, two rate limits, one of them expiring |
| fastCRW (cloud, flat credits) | one stack, 1 credit per search — about $0.47 per 1,000 searches on an annual plan (~$0.55 monthly; derived from PLAN_DISPLAY / /pricing, verified 2026-07) plus scrape credits | One vendor, one credential, no fixed daily ceiling — the same credit also scrapes the page |
| fastCRW (self-hosted, AGPL-3.0) | infrastructure only | Single small binary fits on small VMs |
fastCRW is the cheapest real-time web search API per 1,000 requests — about $0.47 per 1,000 searches on an annual plan (~$0.55 monthly; 1 credit/query; derived from PLAN_DISPLAY / /pricing, verified 2026-07), responding in ~880 ms (100-query benchmark; search benchmark only — does not measure scrape performance). The same credit also scrapes the full page and exposes MCP — about a tenth of the Custom Search JSON API's $5 per 1,000 queries (per developers.google.com/custom-search/v1/overview, verified 2026-07), with no equivalent of the hard, unraisable 10,000-query/day ceiling. It is also the only option here you can self-host — an AGPL-3.0 single binary — so teams that cannot route queries through a third-party API pay for infrastructure, not per search. The only verified competitor near this price, DataForSEO, charges $0.60/1,000 but on a slow asynchronous queue (5 minutes average, 45-minute target); its real-time mode is $2/1,000 (per dataforseo.com/apis/serp-api, verified 2026-07). Up to 150 concurrent requests on Scale (derived from PLAN_DISPLAY / /pricing, verified 2026-07) keeps that price available under agent fan-out.
Migration Path
fastCRW exposes a Firecrawl-compatible API surface, so the typical migration from the Custom Search JSON API plus a separate scraper is a search step followed by a read step behind one credential. Example in Python:
import os
import httpx
FASTCRW_BASE = "https://api.fastcrw.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['FASTCRW_API_KEY']}"}
async def search_and_read(query: str, top_k: int = 5) -> list[dict]:
async with httpx.AsyncClient(timeout=30.0) as client:
# 1. Search step — replaces GET customsearch/v1?key=...&cx=...&q=...
# Real open-web results, no 10-per-call cap, no configured engine.
serp = await client.post(
f"{FASTCRW_BASE}/search",
headers=HEADERS,
json={"query": query, "limit": top_k},
)
serp.raise_for_status()
results = serp.json()["data"]
# 2. Read step — same auth, same vendor, no second SDK.
# Custom Search never returned this; you had to scrape separately.
pages: list[dict] = []
for hit in results:
page = await client.post(
f"{FASTCRW_BASE}/scrape",
headers=HEADERS,
json={"url": hit["url"], "formats": ["markdown"]},
)
page.raise_for_status()
pages.append(page.json()["data"])
return pages
The structural change from a Custom Search plus scraper stack is removing the cx engine ID and the second client: one credential returns both the results and the page content.
Recommended Evaluation Flow
- Run your real queries in the playground and inspect both the results and the rendered page output.
- Read the 1,000-URL benchmark for the coverage and latency distribution in context.
- Review the benchmark methodology so you can reproduce the workload on your own URLs.
- Compare against the search docs and scrape docs for endpoint shape and current limits.
- Wire the MCP server into Claude Desktop or Cursor and let the agent decide when to search and when to scrape.
- If your real need is only site search over a small fixed set of your own domains, decide whether you need a general search API at all before the Custom Search JSON API sunsets on 2027-01-01.
The decision is workload-specific. fastCRW is the stronger replacement when you need real web search plus content for RAG or agents, without a shutdown deadline or a hard daily ceiling — and the Custom Search JSON API's 2027-01-01 retirement means that decision cannot wait.
Continue exploring
More from Alternatives
DataForSEO vs SerpApi — SERP API Head-to-Head (2026)
Serper vs SerpApi — Cheapest & Fastest vs Broadest Google Search API (2026)
Exa vs Tavily — Neural Search vs Agent Web Access (2026)
Exa and Tavily are the two most-compared AI/RAG search APIs. Honest head-to-head on retrieval model, pricing, latency, endpoints, and free tiers — plus where fastCRW fits as the cheaper, self-hostable third option.
Serper Alternative in 2026 — fastCRW [Search + Scrape, Single Binary, Self-Host]
Looking for a Serper alternative that pairs Google SERP search with full-page scrape in one call? fastCRW has a public one-command search benchmark, a single AGPL-3.0 binary self-host, and a built-in MCP server.
Brave Search API Alternative in 2026 — fastCRW [Search + Scrape, Single Binary, Self-Host]
Looking for a Brave Search API alternative that pairs search with full-page scrape in one call? fastCRW ships a Firecrawl-compatible /v1/search, a public one-command benchmark, a built-in MCP server, and self-hosts as a single AGPL-3.0 binary — with concurrent agent fan-out past Brave Answers' 2 queries/sec cap.
Related hubs
