Amazon Bedrock web search alternatives in 2026
Any model, from $1.
Amazon sells web search two ways. On Bedrock it is a Responses API tool for OpenAI GPT-5.4 and later, at $12 per 1,000 queries on top of model inference. On AgentCore it is a gateway target at $7 per 1,000 queries, 25 results at most.
SpecStream is the live web data engine for teams and agents. Its Search API costs from $1 per 1,000 searches, returns up to 100 results to any Bedrock model through Converse or an AgentCore gateway, and scores 97.9 F-score on SimpleQA Verified.
New accounts get $10 of credit, no card. It covers 10,000 searches.
SpecStream and Amazon's web search tools side by side
| SpecStream | Web Search on Amazon Bedrock | Web Search on AgentCore | |
|---|---|---|---|
| Models it works with | Every Bedrock model that takes tools, through Converse tool use. Also an MCP server target on an AgentCore gateway at https://api.specstream.ai/mcp, or GET /v1/web-search from any code | OpenAI GPT-5.4 and later, through the Responses API on the bedrock-mantle endpoint. Not available on bedrock-runtime | Any model behind an MCP client, through a target on an AgentCore Gateway |
| Price per 1,000 searches | $5 for up to 10 results, or $1 with speed=fast. 25 results cost $3.40 per 1,000 on the fast search. No tokens and no gateway fee | $12 per 1,000 queries, on top of model inference (Unite.AI, reading the Bedrock pricing page) | $7 per 1,000 queries. Gateway operations are billed separately |
| Who decides how many searches run | Your code or your agent. One call is one search at one price, and price_usd in each reply says what it cost | The model. It can search again within the same turn, and search_context_size does not limit how many Search calls it makes | Your agent, one tools/call per search |
| Results per search | 1 to 100 with num, and page 1 to 10 continues the same ranked list | Up to 5, 11 or 25 observations per Search call, set by search_context_size | 1 to 25 with maxResults, 10 by default |
| Longest query | 2,000 characters, in any language | Written by the model | 200 characters |
| What your code gets | JSON: answer with its value, the page it was read on and its read time in seen_at, rows with the facts the request asks for, and sources in rank order with title, url, site and snippet | The model's reply with url_citation annotations. A citation can rest on a Search snippet even when Fetch did not read the page | Snippets, URLs, titles and publication dates, as text and JSON |
| Where results come from | The live web, read in a few seconds from several search engines. engine_rule sets which engines a key may ask | The Amazon Bedrock web index. Fetch reads the Bedrock cache, and the open web only on a cache miss with the ExternalWebAccess permission | An Amazon web index of tens of billions of documents |
| Where it runs | A key set to eu_egress_only sends every search out from our server in Madrid, in the EU. zero_retention on a key keeps no query text or answer | us-east-1, us-east-2, us-west-2 and AWS GovCloud (US-West) | Seven Regions: three in the US, Ireland, Sydney, Tokyo and AWS GovCloud (US-West) |
| Published accuracy | 97.9 F-score on all 1,000 official SimpleQA Verified questions (978 correct). 64.0 item F1 and 43.4 row F1 on all 200 official WideSearch tasks. Scores and method at specstream.ai/benchmarks | No accuracy score in its user guide | No accuracy score in its developer guide |
| Page text and whole datasets | passages=true adds up to about 3,500 characters of each page. The Extract API reads 20 pages a call at $0.80 per 1,000 pages. Deep Search returns every match as structured rows at 5¢, 15¢ or $1 a row | Fetch inside the model's turn, from the Bedrock cache first | Passages chosen by the tool, not full pages. Web Answer, a separate tool, returns a written answer at $10 per 1,000 calls |
Why teams on Amazon's web search move to SpecStream
Give any Bedrock model SpecStream as a tool
The Bedrock web search tool runs only on OpenAI GPT models through bedrock-mantle. SpecStream works with every model the Converse API can give a tool to. Define one tool, call the SpecStream Search API when the model asks for it, and send back the answer and the ranked results as the toolResult. The model, the region and your AWS billing for inference stay as they are.
import os, boto3, requests
bedrock = boto3.client("bedrock-runtime", region_name="us-east-1")
MODEL_ID = os.environ["BEDROCK_MODEL_ID"] # any Bedrock model that supports tool use
tool_config = {"tools": [{"toolSpec": {
"name": "search_web",
"description": "Search the live web. Returns the answer with its page, and the ranked results with title, URL and snippet.",
"inputSchema": {"json": {"type": "object", "properties": {"q": {"type": "string"}}, "required": ["q"]}},
}}]}
def search(q):
data = requests.get(
"https://api.specstream.ai/v1/web-search",
params={"q": q},
headers={"Authorization": f"Bearer {os.environ['SPECSTREAM_API_KEY']}"},
).json()["data"]
sources = [{"title": s["title"], "url": s["url"], "snippet": s["snippet"]} for s in data["sources"]]
return {"answer": data["answer"], "sources": sources}
messages = [{"role": "user", "content": [{"text": "Who is the CEO of Mistral AI?"}]}]
while True:
response = bedrock.converse(modelId=MODEL_ID, messages=messages, toolConfig=tool_config)
message = response["output"]["message"]
messages.append(message)
if response["stopReason"] != "tool_use":
break
messages.append({"role": "user", "content": [
{"toolResult": {
"toolUseId": block["toolUse"]["toolUseId"],
"content": [{"json": search(block["toolUse"]["input"]["q"])}],
}}
for block in message["content"] if "toolUse" in block
]})
print("".join(block.get("text", "") for block in message["content"]))Add speed=fast to params for ranked results at $1 per 1,000 searches, and passages=true for the text of each page closest to the question.
Add SpecStream to your AgentCore gateway
An AgentCore Gateway takes SpecStream as an MCP server target next to Amazon's web-search connector. Store the SpecStream key in AgentCore Identity, then add the target. Agents on the gateway see specstream___search_web and specstream___read_pages with every other tool, and each search costs $0.005.
aws bedrock-agentcore-control create-gateway-target \
--gateway-identifier <gateway ID> \
--name specstream \
--target-configuration '{"mcp":{"mcpServer":{"endpoint":"https://api.specstream.ai/mcp"}}}' \
--credential-provider-configurations '[{"credentialProviderType":"API_KEY","credentialProvider":{"apiKeyCredentialProvider":{"providerArn":"<provider ARN>","credentialLocation":"HEADER","credentialParameterName":"Authorization","credentialPrefix":"Bearer"}}}]'The AgentCore setup guide covers the key, the credential provider and the console path.
From $1 per 1,000, with no tokens on top
100,000 searches of 10 results cost $100 on SpecStream with speed=fast, $500 on the default search, $700 on AgentCore Web Search before gateway operations, and $1,200 on Bedrock Web Search before model inference. On SpecStream each reply carries price_usd, and the account's request log and usage totals show every call and its price.
The most accurate web search API in the world
The SpecStream Search API scores a 97.9 F-score on all 1,000 official SimpleQA Verified questions, with 978 correct. On WideSearch it scores 64.0 item F1 and 43.4 row F1 on all 200 official tasks. The scores and the method are at specstream.ai/benchmarks.
Results your code can read and keep
Bedrock Web Search hands your code the model's reply and its citations, and AWS says a citation can rest on a Search snippet even when the page was never fetched. A SpecStream search returns the answer with the page it was read on and its read time, rows with the facts the request asks for, and sources in rank order, each marked cited when a value comes from it. Every charged search stays in the account's history, and reading it costs nothing.
AgentCore's terms ask you to show the citation and link of each search result you use, and rule out storing results in bulk or building an index or database from them.
Other Amazon Bedrock web search alternatives
SpecStream
The live web data engine for teams and agents, and the best alternative to Amazon's web search tools. The Search API costs from $1 per 1,000 searches, works with every Bedrock model and any other, and scores 97.9 F-score on all 1,000 official SimpleQA Verified questions. The Extract API costs $0.80 per 1,000 pages. Deep Search returns every match as structured rows at 5¢, 15¢ or $1 a row.
OpenAI web search tool
A tool on the OpenAI API at $10 per 1,000 calls, plus search content tokens billed at the model's rates. SpecStream costs from $1 per 1,000 searches with no tokens, for any model. SpecStream as an OpenAI web search tool alternative.
Claude web search tool
A server tool on the Claude API at $10 per 1,000 searches, plus standard token costs for the content it brings back. SpecStream gives Claude on Bedrock or on the Claude API its search from $1 per 1,000. SpecStream as a Claude web search tool alternative.
Gemini grounding with Google Search
On Gemini 3 and newer, 5,000 search requests a month are free, then $14 per 1,000, with a default limit of 1,500 requests a day per project on the paid tier. On SpecStream your code decides how many searches run, from $1 per 1,000, from any model.
DeepSeek Search API
A raw JSON search API at $0.75 per 1,000 successful requests, with queries of 128 characters at most and up to 50 results from DeepSeek's own search engine. SpecStream takes questions of up to 2,000 characters and returns the answer with the page it was read on.
How SpecStream scores
The same numbers as the benchmarks page, from the official tasks and scorers.
How to switch from Amazon's web search
1. Create a key under Agents & API in the workspace, with the finds:spend scope and a spending limit. A new account gets $10 of credit, no card, which covers 10,000 searches.
2. Run one search to see the reply.
curl -G https://api.specstream.ai/v1/web-search \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" \
--data-urlencode "q=Who is the CEO of Mistral AI?"3. On Bedrock, add the toolConfig shown above to your Converse call, with any model that takes tools. On AgentCore, add SpecStream as an MCP server target on the gateway your agents already use.
4. Send back the reply's data.answer and data.sources as the tool result, trimmed to the fields the model needs.
Frequently asked questions
Something we didn't answer? Talk to a human
How much does web search on Amazon Bedrock cost?
speed=fast.Which models support Web Search on Amazon Bedrock?
bedrock-mantle endpoint, in us-east-1, us-east-2, us-west-2 and AWS GovCloud (US-West). SpecStream works with every Bedrock model that takes tools, through Converse.Can Claude on Amazon Bedrock search the web?
What is the best alternative to Amazon Bedrock Web Search?
Does Amazon's web search return whole pages?
passages=true adds up to about 3,500 characters of each page, and its Extract API returns the main text of 20 pages a call at $0.80 per 1,000 pages.Does SpecStream have an API?
GET /v1/web-search at $5 per 1,000 searches of up to 10 results, or $1 with speed=fast. The Extract API is POST /v1/extract at $0.80 per 1,000 pages. Deep Search takes a request in plain words and returns structured rows.What do the model vendors' web search tools cost side by side?
speed=fast, and bills no tokens. The whole table is on web search tool pricing.Sources
SpecStream wrote this page. Each AWS figure comes from AWS's own pricing pages and guides, except the Bedrock Web Search price, which AWS's pricing page loads in the browser and Unite.AI reports.
- SpecStream pricingspecstream.ai/pricing, read Nov 12, 2026
- SpecStream for agentsspecstream.ai/agents.md, read Nov 12, 2026
- SpecStream benchmarksspecstream.ai/benchmarks, read Nov 12, 2026
- Web Search on Amazon Bedrock, user guidedocs.aws.amazon.com/bedrock/latest/userguide/web-search.html, read Nov 12, 2026
- Web Search Tool on AgentCore, developer guidedocs.aws.amazon.com/bedrock-agentcore/latest/devguide/gateway-target-connector-web-search-tool.html, read Nov 12, 2026
- Amazon Bedrock AgentCore pricingaws.amazon.com/bedrock/agentcore/pricing/, read Nov 12, 2026
- Amazon Bedrock pricingaws.amazon.com/bedrock/pricing/, read Nov 12, 2026
- Unite.AI: Amazon Bedrock gets built-in web searchunite.ai/amazon-bedrock-gets-built-in-web-search-for-grounded-model-responses/, read Nov 12, 2026
- OpenAI API pricingdevelopers.openai.com/api/docs/pricing, read Nov 12, 2026
- Claude web search toolplatform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool, read Nov 12, 2026
- Gemini API pricingai.google.dev/gemini-api/docs/pricing, read Nov 12, 2026
- Gemini grounding with Google Searchai.google.dev/gemini-api/docs/google-search, read Nov 12, 2026
- DeepSeek Search & Fetchapi-docs.deepseek.com/guides/search, read Nov 12, 2026




