SearchApi.io compatible
Change the address, keep the JSON.
SearchApi.io starts at $40 a month for 10,000 searches, and only 20% of a plan's credits can be used in one hour. SpecStream answers the same Google call in SearchApi's JSON, with no monthly plan.
The switch is one line: https://api.specstream.ai/searchapi in place of https://www.searchapi.io, and a SpecStream key as api_key or the Bearer token. Your code reads organic_results[] as before.
SpecStream scores 97.9 F-score on all 1,000 SimpleQA Verified questions. A search of up to 10 results costs $0.005, and num goes up to 100.
New accounts get $10 of credit, no card. It covers 2,000 searches.
SearchApi.io to SpecStream, parameter by parameter and field by field
| SpecStream | SearchApi.io | |
|---|---|---|
| Address | GET https://api.specstream.ai/searchapi/api/v1/search?engine=google | GET https://www.searchapi.io/api/v1/search?engine=google |
| The key | A SpecStream key as api_key in the address or Authorization: Bearer | A SearchApi key as api_key in the address or Authorization: Bearer |
| `num` | 1 to 100, and 10 when you send none. num=5 returns 5 results | Phased out by Google in September 2025, so it is a constant 10 |
| Dates and pages | time_period (last_hour to last_year), time_period_min and time_period_max as MM/DD/YYYY, and page | time_period, time_period_min, time_period_max and page, which is 1 by default |
| Each result | position, title, link, domain, snippet, and date when the page has one. Not returned: source, displayed_link, snippet_highlighted_words, sitelinks and favicon | position, title, link, source, domain, displayed_link, snippet, date and more |
| Errors | SearchApi's {"error": ...}. Another engine gets 400. A busy call gets 429 with Retry-After and is not charged | Only searches with a 200 status are charged |
| Price per 1,000 searches | $5 for up to 10 results. 100 results cost $0.059 a call | $4 on Developer, $3 on Production, $2.5 on BigData, $1.5 on Octo 1M |
| Plan and limit | No monthly plan. Credit you buy never expires. Up to 8,800 searches a minute on one account | Developer is $40 a month for 10,000 searches, and up to 20% of a plan's credits each hour |
| Free to start | $10 of credit, no card, which covers 2,000 searches | 100 free requests, no credit card |
The SearchApi.io reference, on SpecStream
The call, before and after
# Before
curl -G "https://www.searchapi.io/api/v1/search" -d engine=google \
--data-urlencode "q=python programming language" -H "Authorization: Bearer $SEARCHAPI_API_KEY"
# After
curl -G "https://api.specstream.ai/searchapi/api/v1/search" -d engine=google \
--data-urlencode "q=python programming language" -H "Authorization: Bearer $SPECSTREAM_API_KEY"The parameters and the parser stay. The address gains /searchapi after the host, and the key changes. api_key in the address works as it does on SearchApi.
Apps and SDKs that take the address as a setting
Each line was run on production on November 10, 2026 through that client's own request and reply code. Put your SpecStream key wherever the client takes its key.
LiteLLM: set SEARCHAPI_API_BASE to the whole address, https://api.specstream.ai/searchapi/api/v1/search, and put your SpecStream key in SEARCHAPI_API_KEY.
Cherry Studio: in the SearchApi provider, set API host to https://api.specstream.ai/searchapi.
What the route reads, and what it refuses
Read and applied: q, engine google, num (1 to 100), page, time_period, time_period_min and time_period_max, and the key as api_key or a Bearer token. page=2 returns the next 10 results, none of them on page 1.
Refused: any engine other than google gets 400 with This route answers engine=google. Every parameter was measured on production on Nov 10, 2026, and the full pass table lists each one and its result.
Every field that comes back
The reply has search_metadata with id, status and total_time_taken, search_parameters with engine and q, search_information.query_displayed, organic_results[], and pagination with current and next. Each result has position, title, link, domain, snippet, and date when the page has one.
The route does not return search_metadata.created_at, request_url, html_url or json_url, search_information.total_results, answer_box, knowledge_graph, related_searches, or a result's source, displayed_link, snippet_highlighted_words, sitelinks and favicon. One field is added, specstream, with the call's price_usd.
$5 per 1,000 searches, with no monthly plan
SearchApi sells monthly plans from $40 for 10,000 searches, and lets a plan use 20% of its credits in an hour. On SpecStream every call of up to 10 results costs $0.005, each started block of 10 more adds $0.006, and there is nothing to renew. A busy call gets 429 with Retry-After and charges nothing.
The most accurate web search API, in about one second
On SimpleQA Verified the SpecStream Search API scores 97.9 F-score on all 1,000 official questions, 978 of them correct. On WideSearch it scores 64.0 item F1 and 43.4 row F1 on all 200 official tasks. The Extract API scores 0.908 F1 on WCXB. Every score and its method is on the benchmarks page.
A call of up to 10 results on the first page runs the fast search. Measured on production on November 9, 2026, its median was 0.82 s at 1 search a second and 1.07 s at 20 a second, the 95th percentile stayed between 1.09 and 1.73 s, and it answered 718 of 720. One account can send up to 8,800 searches a minute.
You decide what is kept, on each key
Create the key with zero_retention and a search made with it keeps no request text and no answer after the reply. spend_cap_cents is the most the key can spend.
curl -X POST https://api.specstream.ai/v1/account/keys \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
-d '{"name": "production", "scopes": ["account:read", "finds:spend"], "spend_cap_cents": 500000, "zero_retention": true}'Search, pages and rows on one key
The same key reads up to 20 pages or documents a call with the Extract API at $0.80 per 1,000 pages, and a page with no text is not charged. Deep Search returns every match for a request in plain words as structured rows, at 5¢, 15¢ or $1 a row, with a source URL on every value. The most a run can cost is approved before it starts. The full comparison is on the SearchApi.io alternative page.
What else SearchApi.io users price
SerpApi
Google results as JSON on monthly plans: Starter is $25 for 1,000 searches with 200 an hour, Developer $75 for 5,000. SpecStream charges $0.005 a search with no plan, and answers the SearchApi call your code already sends.
Serper
Google results in credit packs from $1.00 per 1,000 for 50,000 credits, with 2,500 free queries, in Serper's own reply. SpecStream keeps SearchApi's request and reply, and scores 97.9 F-score on SimpleQA Verified.
Zenserp
Google results on monthly plans, from Small at $49.99 for 25,000 searches, and 50 free searches a month. SpecStream needs no plan, and the credit you buy never expires.
How SpecStream scores
The same numbers as the benchmarks page, from the official tasks and scorers.
How to migrate, step by step
1. Create a key under Agents & API in the workspace. A new account gets $10 of credit, no card, which covers 2,000 searches.
2. Set the address to https://api.specstream.ai/searchapi/api/v1/search where your code has https://www.searchapi.io/api/v1/search, and send the SpecStream key. In Python:
import requests
URL = "https://api.specstream.ai/searchapi/api/v1/search" # was https://www.searchapi.io/api/v1/search
reply = requests.get(
URL,
params={"engine": "google", "q": "python programming language", "num": 10},
headers={"Authorization": f"Bearer {SPECSTREAM_KEY}"},
timeout=30,
)
reply.raise_for_status()
for result in reply.json()["organic_results"]:
print(result["position"], result["title"], result["link"])3. In JavaScript:
const url = new URL("https://api.specstream.ai/searchapi/api/v1/search");
url.search = new URLSearchParams({ engine: "google", q: "python programming language" });
const res = await fetch(url, {
headers: { Authorization: `Bearer ${process.env.SPECSTREAM_KEY}` },
});
const data = await res.json();
for (const result of data.organic_results) console.log(result.title, result.link);4. Follow pagination.next for the next page, and read 429 as a call to send again after Retry-After. It is not charged.
Frequently asked questions
Something we didn't answer? Talk to a human
Is there a SearchApi.io compatible API?
GET /api/v1/search?engine=google at https://api.specstream.ai/searchapi in SearchApi's JSON, as measured on production on Nov 10, 2026. A search of up to 10 results costs $0.005.How do I migrate from SearchApi.io?
https://www.searchapi.io becomes https://api.specstream.ai/searchapi, and a SpecStream key goes in api_key or the Bearer header. engine, q, num, page and the time_period parameters keep their meaning.How much does SearchApi.io cost?
Which apps and SDKs take the SpecStream address for SearchApi.io?
SEARCHAPI_API_BASE to the whole address, https://api.specstream.ai/searchapi/api/v1/search, and put your SpecStream key in SEARCHAPI_API_KEY. Cherry Studio: in the SearchApi provider, set API host to https://api.specstream.ai/searchapi.Is there a SearchApi.io SDK whose address I can change?
requests, fetch or curl.Does num work on SpecStream?
num at a constant 10 since Google phased it out in September 2025. On SpecStream 10 results cost $0.005 and 100 cost $0.059.Which SearchApi fields does SpecStream not return?
answer_box, knowledge_graph, related_searches, search_information.total_results, the search_metadata links, and a result's source, displayed_link, snippet_highlighted_words, sitelinks and favicon. Each result keeps position, title, link, domain, snippet and date.Sources
SpecStream wrote this page. Each SearchApi.io figure comes from SearchApi's own pages, and each other provider's figure from that company's own page. The route's behavior comes from its code and the pass table measured on production.
- SearchApi.io pricingsearchapi.io/pricing, read Nov 10, 2026
- SearchApi.io Google Search API docssearchapi.io/docs/google, read Nov 10, 2026
- SpecStream SearchApi pass tablespecstream.ai/specstream/dialects/searchapi.md, read Nov 10, 2026
- SerpApi pricingserpapi.com/pricing.md, read Nov 10, 2026
- Serperserper.dev/, read Nov 10, 2026
- Zenserp pricingzenserp.com/pricing, read Nov 10, 2026
- SpecStream benchmarksspecstream.ai/benchmarks, read Nov 10, 2026
- SpecStream pricingspecstream.ai/pricing, read Nov 10, 2026
- SpecStream for agentsspecstream.ai/agents.md, read Nov 10, 2026




