Google Custom Search API alternative
Google closed the Custom Search JSON API to new customers and gives existing customers until January 1, 2027 to move. Desearch returns ranked public web results as structured JSON, with no search engine ID to configure.
Web result preview
The response shape your Custom Search integration expected.
/webgoogle custom search api replacement
Response contract
What happened
The Custom Search JSON API is closed to new customers.
Google’s developer documentation states that the Custom Search JSON API is closed to new customers and that existing customers have until January 1, 2027 to transition to an alternative. For searching up to 50 domains, Google suggests Vertex AI Search, which it is renaming Agent Search; teams that need full web search are asked to contact Google.
Google now requires new Programmable Search Engines to use the “Sites to search” setting. Engines already configured to search the entire web keep that option until January 1, 2027, and Google notes that those engines search a subset of the Google Web Search corpus.
Sources: Custom Search JSON API overview — Google for Developers; Sites to search requirement — Programmable Search Engine Help; Updates to our web search products — Programmable Search Engine blog. Checked September 16, 2026.
Migration map
What each Custom Search call becomes.
Desearch is a separate API with its own parameters and response schema, so this is a re-integration rather than a base-URL swap. The endpoint reference has the exact contract for each request.
| What you did with Custom Search | Desearch equivalent |
|---|---|
| GET customsearch/v1 with key, cx, and q | GET /web takes a query and your API key — there is no search engine ID to createGET /web reference |
| A Programmable Search Engine limited to a list of sites | Web Search queries the public web without a site list to maintainWeb Search API |
| Paging with start and num — up to 10 results per request and 100 in total | GET /web accepts start for paging; the endpoint reference lists the full request contractRequest parameters |
| Summarizing Custom Search results with your own LLM call | POST /desearch/ai/search answers a prompt across sources you select, with an optional summarySearch API guide |
| 100 free queries a day, then billing per 1,000 queries | Billable responses carry cost_usd, usage_count, and service, plus X-Desearch-* headersPricing and billing |
Web Search is metered at $0.10 per 100 searches ($1.00 per 1,000 searches) and AI Search at $0.40 per 1000 items on the checked-in rate card. Google lists $5 per 1,000 Custom Search queries beyond the free daily allowance for existing customers. Current account rates are in pricing.
First request
Replace the call, then check the response.
Create an API key, run one query, and compare the fields against what your Custom Search parser read — title, link, and snippet — before you change application code.
curl --request GET \
--url 'https://api.desearch.ai/web?query=google+custom+search+api+alternative' \
--header 'Authorization: $DESEARCH_API_KEY'Still comparing
Weighing other search APIs too?
Every comparison lists the official sources behind it and the date it was reviewed.
Google Custom Search API migration questions
Shutdown dates, pricing, and what changes in your code.