Is there an official Google Search API? What exists in 2026 and what to use
No. As of September 2026 Google does not offer new customers an API that returns its web search results. The Custom Search JSON API, the closest thing Google had, is closed to new customers, and existing customers must move off it by January 1, 2027. What Google does offer are search products for your own sites and data, and a way to let Gemini models search the web and answer. For Google’s actual results page as data, teams use a third-party SERP API or build a scraper.
Definitions
- Google Search API (as people search for it): a programmatic way to send a query and get Google’s web results back as data.
- SERP: the search engine results page, including organic results and modules such as People Also Ask, ads, local packs and AI Overviews. See what is a SERP.
- SERP API: a service that runs searches on Google and returns the SERP as structured JSON.
- Grounding: giving a language model search results as context so its answer cites current sources.
What Google offers
Everything in this section was checked on Google’s own pages on 2026-09-17.
Custom Search JSON API (closing)
The overview page states that the Custom Search JSON API is closed to new customers and that existing customers have until January 1, 2027 to transition. It returns JSON results for a query against a Programmable Search Engine you configure. For existing customers it lists 100 free queries per day, then $5 per 1,000 queries, up to 10,000 queries per day. The cse.list reference limits each request to 10 results and a query to 100 results in total.
Even for customers who have it, it was never Google.com as data. Google’s help page says an engine configured to search the entire web is limited to a subset of the Google Web Search corpus, emphasizes results from your own sites, and lacks features such as Oneboxes, real-time results and universal search. Migration options are covered in Google Custom Search JSON API alternatives.
Programmable Search Engine
Programmable Search Engine lets you create a search engine for your website, blog or a collection of websites. Since January 20, 2026, per the help page, new engines must use “Sites to search”, covering up to 50 designated domains; existing engines set to “Search the entire web” can keep that setting until January 1, 2027. It is a site search product, not a web search API.
The related Custom Search Site Restricted JSON API ceased to serve traffic on January 8, 2025.
Agent Search (formerly Vertex AI Search)
Google’s Custom Search overview names Vertex AI Search as an alternative for searching up to 50 domains, and asks customers needing full web search to contact Google. Google Cloud’s documentation now calls the product Agent Search (formerly Vertex AI Search): enterprise search and recommendations over your public websites and data stores with your own data. It is the right tool for searching content you own. It is not described as a way to query Google’s public web results.
Grounding with Google Search (Gemini API)
Grounding with Google Search connects a Gemini model to real-time web content. The model decides what to search, and the response contains the synthesized answer with citations and the queries the model ran; the documentation also refers to usage requirements for displaying search suggestions. The pricing page lists, for Gemini 3.x models, 5,000 free search requests per month shared across those models, then $14 per 1,000 requests, with each search query the model executes billed; Gemini 2.5 models are billed per grounded prompt.
This is useful when your end goal is an answer for a user. It does not give you positions, a list of ten results, or the modules on the page, so it cannot answer “where do we rank” or “what does the AI Overview say”.
SERP APIs
A SERP API runs the query on Google for a chosen market, language, location and device, parses the page, and returns JSON. Pricing models differ (monthly plans, pay-as-you-go per 1,000, credits), and so do the fields each one extracts. Examples with prices from their own pages, checked 2026-09-17:
| Provider | Published price | Source |
|---|---|---|
| SerpApi | Free: 250 searches/month; Starter $25/month for 1,000; Developer $75/month for 5,000 | serpapi.com/pricing |
| DataForSEO (Google Organic) | Standard queue $0.6 per 1K SERPs; Priority $1.2 per 1K; Live $2 per 1K | dataforseo.com pricing |
| Serper | 2,500 free queries, no credit card | serper.dev |
Broader comparisons: best SERP APIs, cheapest SERP API, best Google scraper, and SerpApi compared.
What this API returns
A request to POST /v1/monitor/google:
curl -X POST https://api.answerline.dev/v1/monitor/google \
-H "Authorization: Bearer $ANSWERLINE_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "query": "crm for small business", "country": "US", "hl": "en", "pages": 2, "include": { "aioverview": { "markdown": true } } }'
returns result.organicResults[] (position, title, link, displayedLink, snippet, date, page, sitelinks), peopleAlsoAsk[], relatedSearches[], ads[], and, when Google shows them, localResults[], shoppingCards[], knowledgeGraph, peopleAreSaying[] and the aioverview with sources[] and citationPills[]. Targeting fields are country or gl, hl, location or uule, device (desktop, mobile, ios, android) and pages (1 to 10); alternatively, pass a full Google search URL in url. See Google search parameters.
Python, with requests:
import os
import requests
r = requests.post(
"https://api.answerline.dev/v1/monitor/google",
headers={"Authorization": f"Bearer {os.environ['ANSWERLINE_API_KEY']}"},
json={"query": "crm for small business", "country": "US", "hl": "en", "pages": 2},
timeout=360,
)
r.raise_for_status()
for o in r.json()["result"]["organicResults"]:
print(o["page"], o["position"], o["link"])
TypeScript, with fetch:
const res = await fetch("https://api.answerline.dev/v1/monitor/google", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.ANSWERLINE_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({ query: "crm for small business", country: "US", hl: "en", pages: 2 }),
});
if (!res.ok) throw new Error(`${res.status}: ${await res.text()}`);
const { result } = await res.json();
for (const o of result.organicResults) console.log(o.page, o.position, o.link);
Cost: a Google Search async task is 3 credits, each page after the first 2 more, include.aioverview or include.paaAioverview 2 more once, and a synchronous call like the ones above adds 2. The curl request above (2 pages with AI Overview, synchronous) is 3 + 2 + 2 + 2 = 9 credits. The free tier includes 500 credits per month.
Building your own scraper
Building in-house means you own every part of the pipeline: request infrastructure, market and location targeting, parsers for each SERP module, change detection, retries and storage. The ongoing costs:
- Layouts change. Modules are added, renamed and restructured; every change is a silent parser break until you detect it.
- Parameters change. In September 2025, Search Engine Roundtable reported that the
&num=100parameter stopped working and that this broke most Google rank trackers. A scraper built on 100 results per request has to switch to paging when that happens. - Terms and legal exposure. Review Google’s terms of service and your jurisdiction’s rules with counsel before collecting data at scale.
- Operational load. Queues, rate control, monitoring and on-call for a system that is not your product.
Getting around bot detection is out of scope here and is not a sound basis for a business. For a structured build-versus-buy analysis, see build vs buy.
Comparison
| Custom Search JSON API | Programmable Search / Agent Search | Grounding with Google Search | SERP API | Own scraper | |
|---|---|---|---|---|---|
| Available to new customers | No | Yes | Yes | Yes | n/a |
| Data source | Subset of Google’s corpus via a configured engine | Your sites, up to 50 domains, your data | Google Search, used by the model | Google’s results page | Google’s results page |
| Output | Up to 10 links per request | Search results over your content | Generated answer with citations | Structured SERP JSON | Whatever you parse |
| Positions and SERP modules | No modules | n/a | No | Yes | If you build them |
| AI Overview content | No | No | No | Depends on provider | If you build it |
| Maintenance on your side | Low, until January 1, 2027 | Low | Low | Low | High |
Evaluating a SERP API
Provider pages look alike. Run the same test on each candidate before you commit:
- Build a query set that reflects your use. 50 to 200 queries from your own workload across your markets, languages and devices, including local-intent queries if you track locations and a few queries where you know an AI Overview appears.
- Check field coverage, not just organic results. For each response, record whether People Also Ask, ads (with their block position), local results, the knowledge graph and the AI Overview with its sources are present when Google shows them. A missing module is data you cannot report on.
- Check targeting. Confirm the provider can set country, interface language, city-level location and device independently. City targeting by canonical location name or
uulematters for local work. - Check depth. Since results come in pages of about ten, ask how the provider handles depth (pages per request, pricing per page) and whether results carry page and position numbers.
- Check failure semantics. Are failed requests charged? Is there an async mode with webhooks, batch submission and idempotency keys, so retries do not create duplicate charges? See idempotency keys.
- Price the whole workload. Multiply queries by markets, devices, pages and frequency, add optional features such as the AI Overview, and compare the monthly total rather than the headline price per 1,000.
- Read the contract. An OpenAPI document lets you generate clients and validate responses; undocumented fields tend to change.
For this API, the fields, limits and error shapes are in the API reference, and the free tier is enough to run a small query set through this checklist.
When to use which
- Search box for your own site or docs: Programmable Search Engine or Agent Search.
- Chatbot or agent that needs current facts with citations: Grounding with Google Search, or a SERP API if you want to choose which results reach the model. See search APIs for AI agents.
- Rank tracking, SERP feature monitoring, AI Overview tracking: a SERP API. See Google rank tracking API, Google AI Overview API and SERP feature change tracking.
- Keyword research from live SERPs: a SERP API that returns People Also Ask and related searches; see People Also Ask keyword research.
- Search data is your core product and you have a team for it: consider building, knowing the maintenance and legal work involved.
Pitfalls
- Treating Custom Search results as Google rankings. Google itself says the corpus and features differ.
- Using grounding to measure visibility. You see the model’s answer, not the results page.
- Planning around undocumented URL parameters.
num=100stopped working without notice; anything Google does not document can change. - Comparing providers on price alone. Check which fields each returns for your queries: an API that omits the AI Overview or local pack is cheaper because it gives you less.
Related: Google search operators and Bing Search API alternatives.
Try a request from the quickstart.
Questions
Does Google have an official API for Google Search results?
Not one that new customers can sign up for as of 2026-09-17. The Custom Search JSON API, which returned web results from a Programmable Search Engine, is closed to new customers, and existing customers must transition by January 1, 2027, according to Google's overview page.
What search products does Google still offer developers?
Programmable Search Engine for searching your own site or up to 50 designated domains, Agent Search (formerly Vertex AI Search) on Google Cloud for your websites and data stores, and Grounding with Google Search in the Gemini API, which returns a model answer with citations rather than a result list.
What is a SERP API?
A SERP API is a third-party service that runs a search on Google and returns the results page as structured JSON: organic results with positions, plus modules such as People Also Ask, ads, local results and AI Overviews.
Should I build my own Google scraper?
Only if search data is core to your product and you can staff ongoing parser maintenance, infrastructure and a legal review of Google's terms. Layout and parameter changes, such as the num=100 change reported in September 2025, break in-house scrapers without notice.
Is Grounding with Google Search a replacement for a search results API?
No. It lets a Gemini model search and returns the generated answer with citations and the queries it ran. If you need positions, snippets or the full results page, use a SERP API.
How much does a Google Search request cost with this API?
A Google Search async task costs 3 credits, each additional page 2 credits, and the AI Overview add-on 2 credits once; synchronous calls add 2. The free tier includes 500 credits per month without a card.