A payment rail for agentic web access.
Price your content for the agentic web. Agents preview for free, pay for full access, and prove every read. Humans and search keep working as usual.
Three primitives. One rail.
Every site exposes the same three things. Every agent reads them the same way. The rail is the part you don't have to build.
PRIMITIVE / 01Published
# /.well-known/readrail/policy.toml[access]
preview = "free"
full = "$0.0012/req"[allow]
agents = ["openai", "anthropic", "perplexity"]
[refuse]
ua = ["scrape*", "clone-bot"]
policy.toml
A machine-readable file at /.well-known/readrail that declares preview rules, full-access prices, and which agents are welcome.
PRIMITIVE / 02Quote · pending
# server response
HTTP/2 402 Payment Required
content-type: application/readrail+json
{
"quote": "$0.0012",
"window": "60s",
"settle": "x402:base",
"sig": "0xae9c…"
}
402 · Payment Required
When an agent wants the full body, the rail returns a signed quote. The agent settles, gets a proof token, retries — and reads.
PRIMITIVE / 03Settled · 200
# proof of read · written to ledger
{
"proof": "0xae9c…71d2",
"agent": "openai/research",
"path": "/article/2026-05/atlas",
"amt": 0.0012,
"ts": 1746729521,
"verified": "✓"
}
Proof of read
Every settled read writes a signed receipt. Attributable, auditable, exportable. Proof becomes a brand asset publishers can show advertisers and rights holders.
How a single read works
Five steps, thirty-eight milliseconds.
No SDK is required to be read by ReadRail — it's HTTP. Agents that don't speak the protocol see exactly what they see today. Agents that do, get the full body for a signed micropayment.
STEP / 01GET
Agent requests An AI agent asks for the full body of an article it found in your sitemap.
STEP / 02402
Rail quotes ReadRail returns Payment Required, a signed quote, and a 60-second settlement window.
STEP / 03SETTLE
Agent pays The agent settles the quote against its budget, on-chain or off, and receives a proof token.
STEP / 04PROOF
Receipt written The rail signs a receipt, attributes the read to the agent, and writes it to your ledger.
STEP / 05200
Full body returned The agent reads the article. You earn $0.0012. Total round-trip: 38ms p50.
Live console
Every read, signed and settled. In your dashboard.
A live view from a launch publisher. Each row is one agent reading one path. Paid, preview, blocked — visible, attributable, exportable to your CDP or warehouse.
| Time | Agent | Path | State | Amount | Proof |
|---|---|---|---|---|---|
| 22:55:56 | research / openai | /article/atlas | paid | $0.0012 | 0xae9c…71d2 |
| 14:18:41 | research / openai | /article/atlas | paid | $0.0012 | 0xae9c…71d2 |
| 14:18:39 | perplexity-crawler | /feed/markets | paid | $0.0040 | 0x71d2…8c44 |
| 14:18:36 | claude-research | /article/elections | preview | — | — |
| 14:18:32 | googlebot | /article/atlas | human/search | free | — |
| 14:18:28 | unknown 18.144… | /archive/2014/sept | blocked | — | — |
| 14:18:24 | research / openai | /article/markets | paid | $0.0012 | 0x8c44…ae9c |
Last 24 hours
Paid reads: 214,802 +12.4%
Settled: $257.76 +11.1%
p50 latency: 38ms stable
Built for both sides of the rail
Publishers earn. Agents read. Both keep their hands clean.
ReadRail is a two-sided protocol. Publishers expose pricing once. Agents discover it automatically. Platforms route between them — without crawling, without scraping, without surprise.
For publishers
Your content, monetized at the source. Set per-path pricing. Refuse known scrapers. Earn from agents that today read for free. Drop a single config — humans and search keep working.
- Path-level pricing rules
- Allowlist by agent identity
- Daily payout to your account
- Proof export to S3 / warehouse
For agent operators
One budget. Every signed source.
Read the full body of any ReadRail-enabled site without negotiating contracts or scraping past paywalls. One key, one budget, fully attributable.
- Discover pricing automatically
- Spend caps per agent run
- Receipts attached to outputs
- Compatible with x402 settlement
For platforms
The protocol layer, handled.
If you operate a CMS, CDN, or AI gateway, ReadRail is the missing primitive between your customers' content and the agents reading it. White-label optional.
- Edge SDK for major CDNs
- WordPress, Ghost, Contentful
- White-label dashboards
- Volume rev-share
The economics
The same article body. Sixty-six times the revenue.
A page that earned $0.000018 in display advertising can earn $0.0012 in machine reads — for the same body, with none of the consent theater of cookie banners. The math doesn't lie.
Display ad CPM · 2026
$0.000018 per read
A single page view earns 18 thousandths of a cent in programmatic display revenue, before ad-tech fees, fraud, and consent leakage.
ReadRail per-read · 2026
$0.0012 per read
A single agent read of the same article body earns the publisher 1.2 thousandths of a dollar — settled in 38ms, signed, attributable.
66× more
Built for engineers
One file. One header. Three lines of SDK.
ReadRail is HTTP, all the way down. No proprietary RPC, no required SDK, no opaque middleware. The SDKs exist for ergonomics, not necessity.
# 1 — naïve request, agent forgets to settle
$ curl -i https://readrail.com/article/2026-05/atlas
HTTP/2 402 Payment Required
content-type: application/readrail+json
www-authenticate: ReadRail quote="$0.0012", sig="0xae9c…"
# 2 — settle, retry with proof token
$ curl -i https://readrail.com/article/2026-05/atlas \
-H "x-readrail-proof: 0xae9c…71d2"
HTTP/2 200 OK
content-type: text/html; charset=utf-8
x-readrail-settled: $0.0012
x-readrail-latency: 38ms
From the launch cohort
What publishers and agent leads are saying.
We dropped one config at the root, did nothing else, and watched twelve thousand dollars settle in the first month — from agents we'd previously been blocking with regex.
MK
Maren Källberg
Head of Platform · The AtlasReadRail is the first thing that lets our agents read paid sources without us having to negotiate twelve different per-publisher contracts. It just works at the protocol layer.
JT
Jules Tanaka
Infra Lead · agent platform
Add ReadRail in one line.
Drop a single edge middleware. Drop a policy file. The next agent that reads your site pays you for it.
$npx @readrail/init