Open WebUI web search
Set one URL and search at $5 per 1,000.
Two of Open WebUI's best known engines no longer take new accounts. Google's Custom Search JSON API is closed to new customers and ends on January 1, 2027, and Microsoft retired the Bing Search APIs on August 11, 2025.
SpecStream takes their place in one setting. In the admin settings under Web Search, choose the external engine, set External Web Search URL to https://api.specstream.ai/openwebui/search and paste your SpecStream key in External Web Search API Key.
SpecStream scores 97.9 F-score on all 1,000 SimpleQA Verified questions and costs $5 per 1,000 searches. A new account gets $10 of credit, no card, which covers 2,000 searches.
New accounts get $10 of credit, no card. It covers 2,000 searches.
The web search engines Open WebUI offers, from each company's own pages on Nov 10, 2026
| SpecStream | Google PSE | Bing Search V7 | Brave Search API | Tavily | |
|---|---|---|---|---|---|
| Open to a new account | Yes. Create a key and start with $10 of credit, no card | No. Closed to new customers, and existing customers have until January 1, 2027 | No. Microsoft retired the Bing Search APIs on August 11, 2025 and closed sign up | Yes, with $5 in free credits every month | Yes, with 1,000 free credits every month |
| Price per 1,000 searches | $5, with up to 10 results a search | $5 per 1,000 queries after 100 free queries a day, for existing customers only | Microsoft points customers to Grounding with Bing Search, at $14 per 1,000 transactions | $5 per 1,000 requests | $0.008 a credit on pay as you go. A basic search is 1 credit and an advanced search 2 |
| Limit | No daily limit. Up to 8,800 searches a minute on one account | 10,000 queries a day | The address in Open WebUI's default, api.bing.microsoft.com, is decommissioned | 50 queries per second | On a monthly plan, requests stop when the month's credits run out |
| Where you set it in Open WebUI | External Web Search URL and API Key in the admin settings. SearXNG, Firecrawl and Bing V7 fields also take a SpecStream address | A Google PSE API key and an engine ID. The address is fixed in Open WebUI's code at www.googleapis.com/customsearch/v1 | Bing Search V7 Endpoint and Subscription Key | An API key only. The address is fixed in Open WebUI's code | An API key in the admin settings. The address changes only through the TAVILY_API_BASE_URL environment variable |
| Reading the result pages | External Web Loader URL https://api.specstream.ai/openwebui/loader. Each batch of up to 20 pages is one Extract API call at $0.80 per 1,000 pages, and a page with no text is not charged | Search only. Open WebUI has no Google loader | Search only. Open WebUI has no Bing loader | Search only. Open WebUI has no Brave loader | A Tavily loader. A basic extract costs 1 credit for every 5 successful URLs |
| What answers the search | The whole live web, read at the moment of the call. 97.9 F-score on all 1,000 SimpleQA Verified questions, 978 correct | The Programmable Search Engine you configured | Grounding with Bing Search answers inside Azure AI Agents, not at the v7 address Open WebUI calls | Brave's own index. Its page publishes 85.3% accuracy on FreshQA | Tavily's search. Its own post reports 97.6% on SimpleQA |
Why Open WebUI admins set SpecStream as the search engine
The whole setup is two fields and a key
Open WebUI's External engine sends each search to the URL you give it and reads back a list of links, titles and snippets. SpecStream answers that call at /openwebui/search, and the External loader at /openwebui/loader reads the result pages for the model. Set them in the admin settings, or as environment variables when you deploy.
# Admin settings, Web Search
Web Search Engine external
External Web Search URL https://api.specstream.ai/openwebui/search
External Web Search API Key your SpecStream key
Web Loader Engine external
External Web Loader URL https://api.specstream.ai/openwebui/loader
External Web Loader API Key your SpecStream key
# The same as environment variables
ENABLE_WEB_SEARCH=true
WEB_SEARCH_ENGINE=external
EXTERNAL_WEB_SEARCH_URL=https://api.specstream.ai/openwebui/search
EXTERNAL_WEB_SEARCH_API_KEY=$SPECSTREAM_API_KEY
WEB_LOADER_ENGINE=external
EXTERNAL_WEB_LOADER_URL=https://api.specstream.ai/openwebui/loader
EXTERNAL_WEB_LOADER_API_KEY=$SPECSTREAM_API_KEYThis is the call Open WebUI sends, and what comes back. The key travels as a Bearer token from the API key field.
curl -X POST https://api.specstream.ai/openwebui/search \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
-d '{"query": "Who founded Mistral AI and when?", "count": 3}'
# [{"link": "https://...", "title": "...", "snippet": "..."}, ...]Four more engines take a SpecStream address
Keep the engine you run today and change its address. SpecStream answers SearXNG's JSON, Firecrawl v2, Bing v7 and Tavily, each on its own path, with the key in the field Open WebUI already has for it. Open WebUI adds nothing to the Searxng Query URL, so it ends in /search; the Firecrawl field gets /v2/search and /v2/scrape added by Open WebUI.
# SearXNG engine
Searxng Query URL https://api.specstream.ai/searxng/YOUR_KEY/search
# Firecrawl engine (search and loader)
Firecrawl API Base URL https://api.specstream.ai/firecrawl
Firecrawl API Key your SpecStream key
# Bing engine
Bing Search V7 Endpoint https://api.specstream.ai/v7.0/search
Bing Search V7 Subscription Key your SpecStream key
# Tavily engine (environment only)
TAVILY_API_BASE_URL=https://api.specstream.ai/tavily$5 per 1,000 searches, and you pay only for what runs
Open WebUI asks for 3 results a search unless you change the result count, and any search of up to 10 results costs $0.005. Each started block of 10 more results adds $0.006. A loader batch costs $0.80 per 1,000 pages read, and a page with no text costs nothing.
No monthly plan is needed and no credit resets. A top-up never expires, and a call stopped by a 429 charges nothing. A new account starts with $10 of credit, which covers 2,000 searches.
The most accurate web search API in the world
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.
About one second a search, measured under load
The External search route runs on the fast search. On November 9, 2026 production took 1, 5, 10 and 20 fast searches a second and answered 718 of 720. The median was 0.82 s at 1 search a second and 1.07 s at 20 a second, and the 95th percentile stayed between 1.09 and 1.73 s. One account can send up to 8,800 searches a minute; a call over that gets a 429 with Retry-After and is not charged.
You decide what is kept, on each key
Give Open WebUI a key with zero_retention and a search made with it keeps no request text and no answer after the reply. It is not in the history and its log lines carry neither. The charge keeps the account, the key, the request ID, the price and the time. 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}'Every search reads the live web
SpecStream reads the web at the moment of the call, so a page published an hour ago can be in the answer your users get. There is no Programmable Search Engine to configure and no list of sites to keep.
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 takes a request in plain words and returns every match on the live web as structured rows, at 5¢, 15¢ or $1 a row, with a source URL on every value.
The other engines in Open WebUI, and what each costs
Google PSE
Open WebUI's Google engine calls the Custom Search JSON API, which is closed to new customers. Existing customers pay $5 per 1,000 queries after 100 free a day, up to 10,000 a day, until January 1, 2027. SpecStream costs the same $5 per 1,000 with no daily limit, and any new account can start today.
Bing Search V7
Microsoft retired the Bing Search APIs on August 11, 2025, so the default endpoint in Open WebUI no longer answers. Keep the engine and set Bing Search V7 Endpoint to https://api.specstream.ai/v7.0/search: SpecStream answers in Bing's webPages.value shape at $5 per 1,000.
Brave Search API
A search API on Brave's own index at $5 per 1,000 requests, with $5 in free credits every month and 50 queries per second. Open WebUI fixes Brave's address in its code, so Brave cannot read the result pages for you. SpecStream does both, search and loader, from one key.
Tavily
Search billed in credits at $0.008 each on pay as you go, with 1,000 free credits a month. A basic search is 1 credit and an advanced search 2. SpecStream charges $0.005 a search, with no monthly reset, and answers Tavily's own call at https://api.specstream.ai/tavily.
Firecrawl
Search and scraping billed in credits. Search costs 2 credits per 10 results, the free plan holds 500 searches, and the Hobby plan is $19 a month. Set Firecrawl API Base URL to https://api.specstream.ai/firecrawl and each search is $0.005 and each page $0.0008, with no plan to buy.
How SpecStream scores
The same numbers as the benchmarks page, from the official tasks and scorers.
How to set SpecStream as Open WebUI's web search
1. Create a key under Agents & API in the SpecStream workspace. A new account gets $10 of credit, no card, which covers 2,000 searches. Turn on zero_retention on the key if your users' searches must leave no trace.
2. In Open WebUI, open the admin settings and go to Web Search. Turn on Web Search, set Web Search Engine to external, set External Web Search URL to https://api.specstream.ai/openwebui/search and paste the key in External Web Search API Key.
3. Under Loader, set Web Loader Engine to external, External Web Loader URL to https://api.specstream.ai/openwebui/loader and the same key in External Web Loader API Key. Save.
4. To check the key from a terminal before you save, send the same call Open WebUI sends.
curl -X POST https://api.specstream.ai/openwebui/search \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
-d '{"query": "latest Open WebUI release", "count": 3}'5. Start a chat, turn on web search and ask a question. Each search shows up in your SpecStream request log with its price.
Frequently asked questions
Something we didn't answer? Talk to a human
How do I set up web search in Open WebUI?
external engine, set External Web Search URL to https://api.specstream.ai/openwebui/search and paste a SpecStream key in External Web Search API Key. Each search costs $0.005.Why is Open WebUI web search not working with Bing or Google?
https://api.specstream.ai/v7.0/search, or switch to the External engine, and search works again.What is the best web search engine for Open WebUI?
Can I use Open WebUI web search without an API key?
How do I use SearXNG in Open WebUI without running my own instance?
https://api.specstream.ai/searxng/YOUR_KEY/search. SpecStream answers in SearXNG's JSON with results[], title, url and content, at $0.005 a search, so there is no instance to host or keep JSON output turned on.How much does web search in Open WebUI cost with SpecStream?
429 is not charged.Which Open WebUI environment variables set SpecStream?
WEB_SEARCH_ENGINE=external, EXTERNAL_WEB_SEARCH_URL, EXTERNAL_WEB_SEARCH_API_KEY, WEB_LOADER_ENGINE=external, EXTERNAL_WEB_LOADER_URL and EXTERNAL_WEB_LOADER_API_KEY, with ENABLE_WEB_SEARCH=true. To keep the Bing engine, set WEB_SEARCH_ENGINE=bing, BING_SEARCH_V7_ENDPOINT=https://api.specstream.ai/v7.0/search and a SpecStream key in BING_SEARCH_V7_SUBSCRIPTION_KEY.Is there a SpecStream tool for Open WebUI?
Sources
SpecStream wrote this page. Open WebUI's settings come from its source on GitHub, and each provider's figure from that company's own page.
- Open WebUI config.pygithub.com/open-webui/open-webui/blob/main/backend/open_webui/config.py, read Nov 10, 2026
- Open WebUI web search settings, WebSearch.sveltegithub.com/open-webui/open-webui/blob/main/src/lib/components/admin/Settings/WebSearch.svelte, read Nov 10, 2026
- Open WebUI external search, external.pygithub.com/open-webui/open-webui/blob/main/backend/open_webui/retrieval/web/external.py, read Nov 10, 2026
- Open WebUI external loader, external_web.pygithub.com/open-webui/open-webui/blob/main/backend/open_webui/retrieval/loaders/external_web.py, read Nov 10, 2026
- Open WebUI Google PSE engine, google_pse.pygithub.com/open-webui/open-webui/blob/main/backend/open_webui/retrieval/web/google_pse.py, read Nov 10, 2026
- Open WebUI Brave engine, brave.pygithub.com/open-webui/open-webui/blob/main/backend/open_webui/retrieval/web/brave.py, read Nov 10, 2026
- Open WebUI env.pygithub.com/open-webui/open-webui/blob/main/backend/open_webui/env.py, read Nov 10, 2026
- Google Custom Search JSON API overviewdevelopers.google.com/custom-search/v1/overview, read Nov 10, 2026
- Microsoft, Bing Search API retirementlearn.microsoft.com/en-us/lifecycle/announcements/bing-search-api-retirement, read Nov 10, 2026
- Grounding with Bing Search pricingmicrosoft.com/en-us/bing/apis/grounding-pricing, read Nov 10, 2026
- Brave Search APIbrave.com/search/api/, read Nov 10, 2026
- Tavily API creditsdocs.tavily.com/documentation/api-credits.md, read Nov 10, 2026
- Tavily pricingtavily.com/pricing, read Nov 10, 2026
- Tavily, SealQA and SimpleQA posttavily.com/blog/tavily-ranks-1-on-sealqa-and-simpleqa, read Nov 10, 2026
- Firecrawl pricingfirecrawl.dev/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




