Plans & Pricing
BlockReq meters authenticated HTTP JSON-RPC and WSS with Request Counting. Paid products are one-time Request Packs, not monthly subscriptions. After prepaid Requests are exhausted, PAYG is $1.90 per 1M Requests. There is no pack-specific overage price and no minimum top-up.
Plan comparison
| Product | Price | Included Requests | Validity | Sustained / burst RPS | Batch | HTTP / WSS | debug / trace / txpool |
|---|---|---|---|---|---|---|---|
| free | $0 | 3,000,000 | 30d | 10 / 30 | 20 | HTTP + WSS | No |
| payg | $0 | 0 | Contract / continuous | 100 / 500 | 20 | HTTP + WSS | Yes |
| starter | $9 | 5,000,000 | 60d | 100 / 500 | 25 | HTTP + WSS | Yes |
| growth | $39 | 25,000,000 | 60d | 500 / 2500 | 50 | HTTP + WSS | Yes |
| professional | $149 | 100,000,000 | 90d | 1500 / 5000 | 100 | HTTP + WSS | Yes |
| business | $399 | 300,000,000 | 90d | 5000 / 10000 | 200 | HTTP + WSS | Yes |
| enterprise | Contract | 500,000,000 | Contract / continuous | 0 / 0 | 0 | HTTP + WSS | Yes |
Every call in a batch counts toward the sustained and burst RPS. PAYG is $1.90 per 1M Requests.
Free grant
Eligible accounts receive 3M Requests with a 30-day validity window:
- 10 sustained / 30 burst requests per second
- Batch size 20; every call in a batch counts toward the per-second limits
- 2 WSS connections / 5 active subscriptions
- Full chain catalog subject to Free entitlement limits
debug_*,trace_*, andtxpool_*are not included on Free
Crypto API
The Crypto API (https://api.blockreq.com/v1/dex) serves the On-chain DEX API and the Wallet API with one key and one quota, separate from RPC Requests. On Free, the plan card shows both:
| Service | Free |
|---|---|
| RPC | 3M Requests / 30 days |
| Crypto API | 10k calls / 30 days, 1 rps |
Crypto API calls never use RPC Requests, Request Packs or wallet balance. A period that started before 2026-11-04 00:00:00 UTC keeps the earlier 100k Crypto API quota until it ends. See how calls are counted.
debug, trace, and txpool
Paid plans do not distinguish debug_*, trace_*, or txpool_*. If the chain route supports the method, every paid plan can call it. The Free grant does not include these methods.
Request Packs
Each one-time purchase creates an independently expiring request lot. An unexpired pack can continue to set the effective tier after its Requests remaining reach zero, until the pack expires.
| Pack | Price | Included Requests | Validity |
|---|---|---|---|
| Starter | $9 | 5M | 60 days |
| Growth | $39 | 25M | 60 days |
| Professional | $149 | 100M | 90 days |
| Business | $399 | 300M | 90 days |
PAYG and wallet balance
PAYG is a billing mode, not a prepaid pack. When PAYG is enabled and prepaid Requests are exhausted, additional Requests accrue at $1.90 per 1M. Wallet balance funds settlement; it is displayed separately from Requests remaining.
When credit runs out
When an account has no Requests left and nothing to settle PAYG with (wallet empty, PAYG off, or spend cap reached), private RPC endpoints answer HTTP 402 Payment Required once that usage settles. The body is still a JSON-RPC error with code -32000; error.data tells a program how to top up:
{
"jsonrpc": "2.0",
"id": null,
"error": {
"code": -32000,
"message": "RPC Endpoint Key credit exhausted: top up to continue. See error.data.topup_url.",
"data": {
"reason": "billing_blocked",
"topup_url": "https://blockreq.com/api/dashboard/billing/onchain",
"topup_method": "GET",
"topup_auth": "Authorization: Bearer <account API key (akv1_...)>; the RPC Endpoint Key is not accepted",
"docs_url": "https://blockreq.com/docs/pricing/plans/#when-credit-runs-out",
"dashboard_url": "https://blockreq.com/dashboard/billing",
"payment_method": "onchain_deposit"
}
}
}The RPC Endpoint Key only calls RPC: it cannot read your deposit address or balance. To top up from a program, use an account API key (akv1_..., created in the dashboard) with GET https://blockreq.com/api/dashboard/billing/onchain and Authorization: Bearer <account API key>. It returns your deposit address (account), the chains and stablecoins it accepts, and the minimum per credit; if account is null, a POST to the same URL issues the address once. When the response has available: false, on-chain deposits are temporarily unavailable: account and chains are empty, and the POST answers 503 (onchain_deposits_unavailable); try again later or top up in the dashboard. Send at least the minimum to that address (for example USDC on Base); it is credited 1:1 to the wallet after confirmation (each chain lists its processingMinutes), and the endpoint serves again. Without an API key, top up in the dashboard (dashboard_url).
Other answers are unchanged: an invalid key is 401, and a key that may not use the endpoint (IP allowlist, network, suspended account) is 403. 402 appears only on RPC hosts (*-rpc.blockreq.com), never on blockreq.com.
Enterprise
Enterprise starts at 500M+ Requests with custom limits, validity, and support. Contact sales for access.