<!-- twin of https://specstream.ai/google-custom-search-api-key -->
# Custom Search API key in 2026: a SpecStream key answers the same call

Compared on Nov 10, 2026. The page: https://specstream.ai/google-custom-search-api-key

A new project cannot get a Custom Search JSON API key today. Google's page says the API is closed to new customers, and existing customers have until January 1, 2027 before the service ends.

Create a SpecStream key in a minute and send Google's call to `https://api.specstream.ai/customsearch/v1?key=<your key>&q=...`. You need no search engine ID: `cx` is accepted and not used, and the reply is Google's JSON.

It is the most accurate web search API in the world: 97.9 F-score on all 1,000 SimpleQA Verified questions, on the [benchmarks](https://specstream.ai/benchmarks?utm_source=alternatives&utm_campaign=google-custom-search-api-key) page. $5 per 1,000 searches, and new accounts get $10 of credit, no card.

[Get an API key](https://specstream.ai/signup?src=alternatives-google-custom-search-api-key&utm_source=alternatives-md&utm_campaign=google-custom-search-api-key&returnTo=%2Fworkspace%2Fsearch%3Froute%3Dgoogle) New accounts get $10 of credit, no card. It covers 2,000 searches.

## A SpecStream key next to the Google keys a new project can look for

| | SpecStream | Google Custom Search JSON API | Vertex AI Search (Agent Search) |
|---|---|---|---|
| Can a new project get a key | Yes. Create it under Agents & API in the workspace. A new account starts with $10 of credit, no card | No. The API is closed to new customers, and existing customers have until January 1, 2027 | Yes, in a Google Cloud project, with a free trial of 10,000 queries per account a month |
| What the key needs to search | Nothing else. No search engine ID: `cx` is accepted and not used | A configured Programmable Search Engine, and its ID in `cx` on every call | An engine and a serving config in your Google Cloud project, named in the address of each call |
| The call | `GET https://api.specstream.ai/customsearch/v1?key=...&q=...&num=&start=`, Google's own call. The key also works in `X-Goog-Api-Key` or as a Bearer token | `GET https://www.googleapis.com/customsearch/v1` with `key`, `cx` and `q` | `POST https://discoveryengine.googleapis.com/v1/{servingConfig=...}:search`, a different call and a different reply |
| What it searches | The whole live web, read at the moment of the call. `siteSearch` keeps a search to one site | The Programmable Search Engine you configured | Up to 50 domains. For full web search Google asks you to contact it |
| Price per 1,000 searches | $5 for a search of up to 10 results ($0.005 a call) | $5 per 1,000 queries after 100 free a day, up to 10,000 a day, for existing customers | $1.50 per 1,000 queries on Standard, $4.00 on Enterprise |
| Free to start | $10 of credit, no card. That is 2,000 searches | 100 queries a day, for existing customers | 10,000 queries per account a month on the free trial |
| How long it runs | The Google route has answered on production since November 9, 2026, on the same key as the rest of SpecStream | Google discontinues the service on January 1, 2027 | Google's January 20, 2026 post names it as its offer for enterprise-grade needs |

## Why a SpecStream key is the Custom Search key to get now

### Your first call, with Google's path and Google's JSON

```
curl "https://api.specstream.ai/customsearch/v1?key=$SPECSTREAM_KEY&q=open+source+vector+databases&num=10"
```

The reply has Google's shape: `kind` `customsearch#search`, `items[]` with `title`, `link`, `snippet` and `displayLink`, `searchInformation.totalResults` and `queries.nextPage`. Code written from Google's docs or a tutorial reads it as it is.

### No search engine ID to set up

A Google key searched through a Programmable Search Engine you configured and named in `cx`. A SpecStream key searches the whole live web. Send `cx` or leave it out, and keep a search to one site with `siteSearch`. `exactTerms`, `orTerms`, `siteSearch` and `hq` shape the search as they do on Google.

### $5 per 1,000 searches and no daily limit

Google charged existing customers $5 per 1,000 queries and stopped at 10,000 a day. A SpecStream search of up to 10 results costs $0.005, so 10,000 searches cost $50, and the account has no daily limit. A call stopped by a `429` charges nothing. The $10 of credit on a new account covers 2,000 searches.

### The top published scores, in about a second

The SpecStream Search API scores 97.9 F-score on all 1,000 SimpleQA Verified questions (978 correct) and 64.0 item F1 and 43.4 row F1 on all 200 WideSearch tasks. The Google route uses the fast search: on production on November 9, 2026 the fast search's median was 0.82 s at 1 search a second and 1.07 s at 20 a second, and it answered 718 of 720 calls.

### A key with its own limits

Each key carries the scopes, the spending limit and the setting you give it. Turn on `zero_retention` and a search made with that key keeps no request text and no answer after the reply. The account takes up to 8,800 searches a minute; a call over that gets a `429` with `Retry-After` and is not charged.

### The rest of SpecStream on the same key

`GET /v1/web-search` returns up to 100 results for one search, with the answer, the page it was read from and its read time. The [Extract API](https://specstream.ai/extract-api?utm_source=alternatives&utm_campaign=google-custom-search-api-key) reads pages, PDF, Word and Excel files at $0.80 per 1,000 pages. [Deep Search](https://specstream.ai/deep-search?utm_source=alternatives&utm_campaign=google-custom-search-api-key) returns every match on the live web as structured rows at 5¢, 15¢ or $1 a row, under a maximum you approve before it runs.

## Other keys a new project can get for web search

### Vertex AI Search (Agent Search)

Google's named alternative for searching up to 50 domains, at $1.50 per 1,000 queries on Standard and $4.00 on Enterprise, with 10,000 free queries a month on the trial. It is called with `POST` to a serving config in your Google Cloud project. A SpecStream key searches the whole live web with the `GET /customsearch/v1` call you already have.

### Gemini API grounding with Google Search

Gemini runs Google searches inside a model call and returns a grounded answer with search suggestions, in place of a list of results. On Gemini 3 and newer it costs $14 per 1,000 search requests after 5,000 free a month. A SpecStream search costs $5 per 1,000 and returns the results, and the answer with its page on `/v1/web-search`.

### Brave Search API

A key on Brave's own index, at $5 per 1,000 requests with $5 in free credits every month, and Brave asks for a card. The reply is Brave's JSON. A SpecStream key starts with $10 of credit and no card, and answers in Google's JSON.

### Serper

Google results as JSON, with 2,500 free queries and prepaid packs from $50 for 50,000, valid for 6 months. Serper has its own call and its own reply. On SpecStream the call and the reply stay Google's, and a top-up never expires.

## How to get a key and make the first call

1. Sign up at specstream.ai and create a key under Agents & API in the workspace. A new account gets $10 of credit, no card, which covers 2,000 searches. Over the API, a key that searches is made with this body:

```
curl -X POST "https://api.specstream.ai/v1/account/keys" \
  -H "Authorization: Bearer $SPECSTREAM_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "production", "scopes": ["account:read", "finds:spend"], "spend_cap_cents": 500000, "zero_retention": true}'
```

2. Send Google's call to SpecStream's address, with the key in `key=`.

```
import requests

reply = requests.get(
    "https://api.specstream.ai/customsearch/v1",
    params={"key": SPECSTREAM_KEY, "q": "open source vector databases", "num": 10},
).json()

for item in reply["items"]:
    print(item["title"], item["link"], item["snippet"])
```

```
const url = new URL("https://api.specstream.ai/customsearch/v1");
url.search = new URLSearchParams({ key: SPECSTREAM_KEY, q: "open source vector databases", num: "10" });

const reply = await fetch(url).then((r) => r.json());
for (const item of reply.items) console.log(item.title, item.link);
```

3. Page through results with `start`, as on Google: `queries.nextPage` gives the next one. Each call is one search on your key, inside the spending limit the key carries.

## Frequently asked questions

### How do I get a Google Custom Search API key?

A new project cannot get one: Google closed the Custom Search JSON API to new customers, and the service ends on January 1, 2027. A SpecStream key takes a minute to create and answers the same `GET /customsearch/v1` call at `https://api.specstream.ai`, in Google's JSON.

### Do I need a search engine ID (cx) with the key?

No. On SpecStream `cx` is accepted and not used, so you can leave it out or keep sending it. The search covers the whole live web, and `siteSearch` keeps it to one site.

### Is the Google Custom Search API key free?

Google gives 100 queries a day free and charges $5 per 1,000 after that, up to 10,000 a day, for existing customers only. A SpecStream account starts with $10 of credit and no card, which covers 2,000 searches, then $5 per 1,000.

### Is the Custom Search JSON API closed to new customers?

Yes. Google's overview page says it is closed to new customers, and existing customers have until January 1, 2027 to move to another service.

### What is the Programmable Search Engine API key used for?

It authorized calls to the Custom Search JSON API, together with the `cx` of a Programmable Search Engine you configured. A SpecStream key authorizes the same call on its own, with the key in `key=`, `X-Goog-Api-Key` or a Bearer token.

### Can I use the key from an AI agent or MCP client?

Yes. The same key works on the MCP server at `https://api.specstream.ai/mcp`, where the `search_web` tool runs a search at $5 per 1,000, and on `GET /v1/web-search`, which returns up to 100 results with the answer and its page.

## Sources

SpecStream wrote this page. Each Google and rival figure comes from that company's own page.

- [Google Custom Search JSON API overview](https://developers.google.com/custom-search/v1/overview), read Nov 10, 2026
- [Programmable Search Engine blog, updates to our web search products](https://programmablesearchengine.googleblog.com/2026/01/updates-to-our-web-search-products.html), read Nov 10, 2026
- [Agent Search pricing, Google Cloud](https://cloud.google.com/generative-ai-app-builder/pricing), read Nov 10, 2026
- [Agent Search REST reference, servingConfigs.search](https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/projects.locations.collections.engines.servingConfigs/search), read Nov 10, 2026
- [Grounding with Google Search, Gemini API](https://ai.google.dev/gemini-api/docs/google-search), read Nov 10, 2026
- [Brave Search API](https://brave.com/search/api/), read Nov 10, 2026
- [Serper](https://serper.dev/), read Nov 10, 2026
- [SpecStream benchmarks](https://specstream.ai/benchmarks), read Nov 10, 2026
- [SpecStream for agents](https://specstream.ai/agents.md), read Nov 10, 2026
