<!-- twin of https://specstream.ai/alternatives/searxng -->
# SearXNG alternatives in 2026: its JSON with no server, $5 per 1,000

Compared on Nov 10, 2026. The page: https://specstream.ai/alternatives/searxng

SearXNG is free, and you run it: Docker or Podman, a Valkey database for the limiter, a reverse proxy, and `json` added to the formats. Upstream engines can send the instance CAPTCHAs or ban its IP.

SpecStream answers SearXNG's JSON at `https://api.specstream.ai/searxng/<key>`. Put that address where your app asks for the SearXNG URL and `results[]` comes back as before. Searches cost $5 per 1,000, and new accounts get $10 of credit, no card.

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

## SpecStream and a SearXNG instance side by side

| | SpecStream | SearXNG |
|---|---|---|
| What you run | Nothing. One address, `https://api.specstream.ai/searxng/<key>` | Your own instance: a working Docker or Podman installation, the compose stack with a Valkey container, and a reverse proxy that sets `X-Forwarded-For` and `X-Real-IP` |
| The request | `GET` or `POST /searxng/search?q=...&format=json&pageno=1`. `time_range` (day, week, month, year) and `categories` are read; `language`, `safesearch` and the rest are accepted | `GET` or `POST /search` with `q`, `categories`, `language`, `pageno`, `time_range`, `format`, `safesearch` and `theme` |
| JSON output | On for every key. `format=json` is the format the route answers | Only when the admin lists `json` under `search:` formats. An unset format returns a 403 Forbidden, and many public instances have these formats disabled |
| The reply | SearXNG's keys: `query`, `number_of_results`, `results[]` with `title`, `url`, `content`, `engines`, `score` and `category`, then `answers`, `corrections`, `infoboxes`, `suggestions` and `unresponsive_engines` | `query`, `results`, `answers`, `corrections`, `infoboxes`, `suggestions` and `unresponsive_engines`, as JSON |
| Blocked upstream | Answered 718 of 720 searches on production at 1 to 20 a second, with a median of 0.82 s to 1.07 s | Engines can enforce CAPTCHAs or ban the instance's IP. A CAPTCHA suspends an engine for 86,400 seconds by default, and a 429 for 3,600 |
| Who can call it | Whoever holds the key. The key goes in the address, in `key=`, in `X-API-Key`, as a Bearer token or as the Basic password | A public instance is open to everyone who has its URL. The limiter blocks by the client IP and needs a Valkey database |
| Price | $5 per 1,000 searches of 10 results. A call stopped by a `429` charges nothing, and credit you buy never expires | Free software. The docs require a working Docker or Podman installation for your own instance |
| Accuracy | 97.9 F-score on all 1,000 SimpleQA Verified questions (978 correct) and 64.0 item F1 on all 200 WideSearch tasks | A metasearch engine that aggregates results from various search services and databases |

## Why SearXNG users move to SpecStream

### Change one setting, keep the rest

```
# Before: your own instance
curl "http://localhost:8080/search?q=open+source+vector+databases&format=json"

# After
curl "https://api.specstream.ai/searxng/$SPECSTREAM_API_KEY/search?q=open+source+vector+databases&format=json"
```

These apps were set up this way and passed our test on November 9, 2026, with only the address changed:

Open WebUI: Searxng Query URL (`SEARXNG_QUERY_URL`) set to `https://api.specstream.ai/searxng/<key>/search`. AnythingLLM: SearXNG API Base URL set to `https://api.specstream.ai/searxng/<key>/search`. Dify: the SearXNG plugin's base URL set to `https://api.specstream.ai/searxng/<key>/search`. LibreChat: `SEARXNG_INSTANCE_URL=https://api.specstream.ai/searxng/<key>`. n8n: the SearXNG credential's API URL set to `https://api.specstream.ai/searxng/<key>`. GPT Researcher: `RETRIEVER=searx` and `SEARX_URL=https://:<key>@api.specstream.ai/searxng`. LangChain: `SearxSearchWrapper(searx_host="https://:<key>@api.specstream.ai/searxng")`.

### Nothing to host

A SearXNG instance needs Docker or Podman, a Valkey database for its limiter, a reverse proxy that passes the client IP, and `json` in its formats list. When an upstream engine answers with a CAPTCHA, SearXNG suspends it for a day by default, and the docs' fix is an SSH tunnel to solve the CAPTCHA from the server's IP. SpecStream is one address with a key, and the search behind it is ours to run.

### $5 per 1,000 searches

Each call returns up to 10 results and costs $0.005, and `pageno` continues the same ranked list. A call stopped by a `429` charges nothing, and credit you buy never expires. A new account gets $10 of credit, no card, which covers 2,000 searches. Every rate is on the [pricing](https://specstream.ai/pricing?utm_source=alternatives&utm_campaign=searxng) page.

### The most accurate web search API, at about one second

SpecStream scores 97.9 F-score on all 1,000 official SimpleQA Verified questions (978 correct), and 64.0 item F1 and 43.4 row F1 on all 200 official WideSearch tasks. The Extract API scores 0.908 F1 on WCXB. Each score and its method is on the [benchmarks](https://specstream.ai/benchmarks?utm_source=alternatives&utm_campaign=searxng) page.

On November 9, 2026 production took 1 to 20 searches a second through the fast search every drop-in route uses, 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 takes 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

Zero retention is a field on each key. A search made with such a key keeps no request text and no answer after the reply. The charge keeps the account, the key, the request ID, the price and the time.

```
POST https://api.specstream.ai/v1/account/keys

{
  "name": "production",
  "scopes": ["account:read", "finds:spend"],
  "spend_cap_cents": 500000,
  "zero_retention": true
}
```

### Search, pages and rows on one key

The [Extract API](https://specstream.ai/extract-api?utm_source=alternatives&utm_campaign=searxng) reads up to 20 pages or documents a call at $0.80 per 1,000 pages, and a page with no text is not charged. [Deep Search](https://specstream.ai/deep-search?utm_source=alternatives&utm_campaign=searxng) returns every match on the live web as structured rows at 5¢, 15¢ or $1 a row, with the most a run can cost quoted before it starts. Agents connect to `https://api.specstream.ai/mcp`.

## Other SearXNG alternatives

### SpecStream

The live web data engine. It answers SearXNG's JSON at `https://api.specstream.ai/searxng/<key>` for $5 per 1,000 searches and scores 97.9 F-score on all 1,000 SimpleQA Verified questions. The Extract API costs $0.80 per 1,000 pages, and Deep Search returns every match as structured rows at 5¢, 15¢ or $1 a row.

### A public SearXNG instance

Free and open to everyone who has its URL. The SearXNG docs say many public instances have the JSON format disabled, and that public use can lead upstream engines to enforce CAPTCHAs or ban the instance's IP. SpecStream answers `format=json` on every key.

### Brave Search API

A search API on Brave's own index at $5 per 1,000 requests, with $5 in free credits every month, prepaid by card. Its reply has Brave's shape, so a SearXNG setting does not take it. SpecStream answers SearXNG's JSON, and Brave's call too, at `https://api.specstream.ai/res/v1/web/search`.

### Tavily

A search API for agents at $0.008 a credit pay as you go, and a basic search costs 1 credit. SpecStream answers Tavily's call at `https://api.specstream.ai/tavily/search` and SearXNG's on the same key, at $0.005 a search.

### Exa

A search API priced from $4 per 1,000 requests of up to 10 results, in Exa's own reply shape. SpecStream answers Exa's call at `https://api.specstream.ai/exa/search` and SearXNG's at `https://api.specstream.ai/searxng`.

## How to switch from SearXNG

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. Put `https://api.specstream.ai/searxng/<key>` where your app asks for the SearXNG URL. Where the setting takes the whole search address, use `https://api.specstream.ai/searxng/<key>/search`.

```
import requests

reply = requests.get(
    "https://api.specstream.ai/searxng/search",  # was http://localhost:8080/search
    headers={"X-API-Key": SPECSTREAM_KEY},
    params={"q": "open source vector databases", "format": "json", "pageno": 1},
).json()

for result in reply["results"]:
    print(result["title"], result["url"], result["content"])
```

```
const reply = await fetch(
  "https://api.specstream.ai/searxng/search?" + new URLSearchParams({ q: "open source vector databases", format: "json" }),
  { headers: { "X-API-Key": process.env.SPECSTREAM_KEY } },
).then((r) => r.json());

for (const result of reply.results) console.log(result.title, result.url, result.content);
```

3. Keep `format=json`, `pageno` and `time_range` as they are. Each call is one search of 10 results at $0.005 on your key, inside the spending limit you give it. Then shut the instance down.

## Frequently asked questions

### What is the best SearXNG alternative?

SpecStream, at $5 per 1,000 searches. It answers SearXNG's JSON at `https://api.specstream.ai/searxng/<key>`, so the app keeps its SearXNG setting, and it scores 97.9 F-score on all 1,000 SimpleQA Verified questions. New accounts get $10 of credit, no card.

### Why does SearXNG return 403 Forbidden for format=json?

Because `json` is not in the instance's formats list under `search:` in settings.yml. The SearXNG docs say requesting an unset format returns a 403, and that many public instances have these formats disabled. SpecStream answers `format=json` on every key.

### Is there a SearXNG alternative I don't have to self-host?

Yes. SpecStream answers SearXNG's search API at `https://api.specstream.ai/searxng`, with no Docker, no Valkey and no reverse proxy, at $0.005 a search of 10 results.

### Why is my SearXNG instance getting CAPTCHAs?

Upstream engines enforce CAPTCHAs or ban an instance's IP, which the SearXNG docs name as a consequence of running a public instance, and SearXNG then suspends that engine for 86,400 seconds by default. SpecStream answered 718 of 720 searches on production at up to 20 a second on November 9, 2026.

### Which apps can use SpecStream in place of SearXNG?

Seven passed our test on November 9, 2026 with only the SearXNG address changed: Open WebUI, LibreChat, AnythingLLM, Dify, n8n, GPT Researcher and LangChain's SearxSearchWrapper. Each sends its search to `https://api.specstream.ai/searxng/<key>`.

### How much does SearXNG cost compared with SpecStream?

SearXNG is free software, run on your own server with Docker or Podman and Valkey. SpecStream costs $5 per 1,000 searches with nothing to run, and the first $10 of credit covers 2,000 searches.

## Sources

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

- [SearXNG Search API](https://docs.searxng.org/dev/search_api.html), read Nov 10, 2026
- [SearXNG settings, search](https://docs.searxng.org/admin/settings/settings_search.html), read Nov 10, 2026
- [SearXNG limiter](https://docs.searxng.org/admin/searx.limiter.html), read Nov 10, 2026
- [SearXNG, why use a private instance](https://docs.searxng.org/own-instance.html), read Nov 10, 2026
- [SearXNG installation with Docker](https://docs.searxng.org/admin/installation-docker.html), read Nov 10, 2026
- [SearXNG, answer CAPTCHA from the server's IP](https://docs.searxng.org/admin/answer-captcha.html), read Nov 10, 2026
- [SearXNG on GitHub](https://github.com/searxng/searxng), read Nov 10, 2026
- [Brave Search API](https://brave.com/search/api/), read Nov 10, 2026
- [Tavily API credits](https://docs.tavily.com/documentation/api-credits), read Nov 10, 2026
- [Exa pricing](https://exa.ai/pricing), read Nov 10, 2026
- [SpecStream benchmarks](https://specstream.ai/benchmarks), read Nov 10, 2026
- [SpecStream pricing](https://specstream.ai/pricing), read Nov 10, 2026
- [SpecStream for agents](https://specstream.ai/agents.md), read Nov 10, 2026
