← Back to all posts
Tools

Brave Search API Now Charges AI Agents $0.005 a Query in USDC, No API Key

November 13, 2026 · 05:12 UTC · Tools
On this page 6 sections
Brave Search API Now Charges AI Agents $0.005 a Query in USDC, No API Key

TL;DR

Brave removed the signup form from its Search API. A dedicated endpoint, search.agent.s.brave.app, now sells queries to any HTTP client that can hold a wallet: no account, no API key, no plan selection. An unpaid request returns HTTP 402 with a price quote in a header, the client signs $0.005 in USDC on the Base network, retries, and gets results plus an on-chain receipt. If you ship an API, study this front door. The buyer of record is a wallet.


At a glance
Search, sold per call
$0.005
per query, every per-call endpoint, $5 per 1,000
0
accounts or api keys, the signed payment is the credential
402
pay-then-retry loop, the refusal quotes the price
USDC
the only asset accepted today, settling on base

What shipped on November 12

Brave's announcement adds pay-as-you-go billing to the Brave Search API over x402, the open standard for per-request payments on HTTP. The paid surface covers web search, news, images, video, place search and LLM Context, an endpoint that returns page text formatted for a prompt. Every one of them costs $0.005 per request, or $5 per 1,000. Answers, Autosuggest and Spellcheck still need a conventional API key.

Brave runs its own facilitator, the service that verifies and settles each payment, and today it accepts USDC on the Base blockchain only, with other networks and stablecoins promised soon. Base gas fees are covered "for a limited time". Two files do the machine-facing sales work: openapi.json lists every paid path with its price, and a llms.txt briefs agent clients on prices, payment rails and the retry loop before they spend anything.

The 402 loop

x402 behaves like a vending machine: tug the door, it quotes a price, insert coins, tug again. Formally, the client requests without paying, the server answers 402 Payment Required with the price, the payee and the accepted assets, the client signs a payment and retries with proof attached, and the resource returns once the facilitator verifies and settles. The HTTP spec has reserved 402 for future use since 1999. The future finally sent an invoice.

How it works
One query, paid at the door
Step 1
GET, unpaid
no key or account attached
Step 2
402 quotes the price
PAYMENT-REQUIRED header carries the terms, body empty
Step 3
Sign and retry
$0.005 in usdc, payment proof attached
Result
Results plus receipt
facilitator verifies and settles on base
Every request carries its own payment, and the 402 challenge is the authoritative price of the call. Source: Brave agent-payments docs.

The quick path is purl, a curl-style CLI wallet Stripe develops in Rust under MIT. Brave's docs use it for their one-liner, with a $0.01 spend cap written in USDC's six-decimal base units:

purl --max-amount 10000 'https://search.agent.s.brave.app/res/v1/llm/context?q=tallest+mountains+in+the+world'

purl refuses to follow a redirect that would move a payment to a different origin, which is the right paranoia for a tool that spends money without a confirmation dialog. There is also --dry-run to preview a payment and inspect to read a resource's terms without paying.

What the refusal bytes say

An x402 operator publishing as minia2a probed the endpoint hours after launch and posted the raw answer, calling Brave the first major independent search provider to sell per call on the protocol. The body is empty, content-length zero. The whole quote rides in one PAYMENT-REQUIRED header: 1,280 bytes of base64 wrapping 960 bytes of JSON. Decoded, it declares x402Version: 2, network eip155:8453 (Base), an amount of 5000 base units, which is $0.005 at USDC's six decimals, a 300-second payment timeout and EIP-3009 as the transfer method. It parses clean against the published schema in @x402/core 2.28.0, zero issues, same verdict as the author's own endpoint.

PAYMENT-REQUIRED size
Brave ships a lean challenge
another x402 sellerbrave
brave
960 B 1,280 enc
minia2a
2,610 B
Decoded JSON bytes in the 402 challenge. Base64 inflates them 4/3 on the wire: 1,280 B encoded for Brave against 3,480 B for minia2a's own endpoint, which attaches discovery help for first-time buyers. Source: minia2a probe, Nov 12, 2026.

Two implementation notes fall out of the same probe. The header is the carrier and the body is a courtesy some sellers provide, so a client that reads only the body gets nothing from Brave. And base64 inflates by a third, so a challenge that outgrows a reverse proxy's header buffer looks identical to a malformed one. Measure the encoded size, not the JSON size.

Why builders should care

The draw is distribution. The classic API funnel runs landing page, signup, plan selection, key management, billing alerts. This funnel is a URL with a price in it. An agent that discovers the endpoint can evaluate it for cents, mid-task, with no procurement step anywhere, and Brave equips it for exactly that: llms.txt for the pitch, openapi.json for the price feed, a 402 that is itself machine-readable terms.

The rails now have two large companies behind them. Coinbase documents x402 across its developer platform, and Stripe ships seller documentation for it alongside purl. Two rival payment processors backing the same handshake makes the client ecosystem a safer bet.

The caveats are just as concrete. Settlement is USDC on Base only, so you custody a hot wallet, and key management becomes part of your incident response. Every paid request adds a settlement dependency, and your retry logic has to tell an index hiccup from a facilitator hiccup. The challenge is the authoritative price: if the marketing page and the bytes drift apart, the client obeys the bytes, so generate both from the same source.

Key Takeaways

  • The Brave Search API now sells queries at search.agent.s.brave.app with no account and no API key: $0.005 per request in USDC on Base, $5 per 1,000, across web, news, image, video, place and LLM Context endpoints.
  • The payment loop is a plain HTTP dance: a 402 quotes price and payee in a header, the client signs and retries, the facilitator verifies and settles, and results arrive with an on-chain receipt.
  • Brave runs its own facilitator and publishes machine-readable pricing through openapi.json and llms.txt, so an agent can discover, price and call the API without a human in the loop.
  • Stripe's purl CLI wallet is the fastest client: brew install stripe/purl/purl, cap spend with --max-amount, preview a payment with --dry-run.
  • An independent probe found the 402 challenge schema-valid against x402 core 2.28.0: a lean 960-byte document, everything in the header, empty body.
  • The costs of this model: hot-wallet custody, one more failure mode per request at the facilitator, and a price source you must keep in sync with the endpoint.

Sources: Brave announcement, Brave agent-payments docs, Coinbase x402 docs, Stripe x402 docs, stripe/purl, minia2a 402 teardown

AIBravex402AI AgentsPaymentsSearch APIUSDCBase
CONSOLE
$