How Much Do RPC Calls Cost per Million? CU Weights and Price per Million Calls
At current published rates, eth_call costs 15 CU per call, or $1.50 per million calls before available free credits; fetch the current plans API for your workload estimate.
At current published rates, an eth_call costs 15 CU, which is $1.50 per million calls before available free credits are applied. Price per million calls = method CU weight × 1,000,000 ÷ (units_per_usd × cu_per_unit); both factors and every method weight come from GET /v1/plans (Checked ), and the pricing page shows the same values. Developers and AI agents can use them to estimate costs in Compute Units (CU) and USD.
curl -s "https://console-api.blockvectra.com/v1/plans" | jq '{pricing, method_weights}'This guide walks through what a CU represents, how method weights work, how to convert CU weights into a price per million calls in USD, and how to estimate per-cycle costs.
Method weights and billing
Every supported method is billed at its published Compute Unit (CU) weight. For example, calls to standard methods like eth_blockNumber or eth_call, execution trace methods (such as debug_traceTransaction), and Data API endpoints (such as data.block) each consume their defined CU weight per call. The published CU weights for all methods are available on the Pricing page and can be queried dynamically from the platform plans API (GET /v1/plans).
Unlisted or newly introduced JSON-RPC methods receive the default CU weight. Data API methods outside available coverage return appropriate status codes and are not billed.
Converting CU per call to price per million calls
When planning infrastructure budgets, developers often measure costs in dollars per million requests.
Conversion formula
Under the platform pricing model, a method's price per million calls is cu_weight × 1,000,000 ÷ (units_per_usd × cu_per_unit); eth_call at 15 CU gives $1.50. The pieces:
- Paid credits are denominated in billing units:
units_per_usd(billing units per 1 USD). - Each billing unit contains a fixed number of CUs:
cu_per_unit(CUs per billing unit). - Therefore, 1 USD provides
units_per_usd × cu_per_unittotal CUs.
For how settlement works, see the Pricing page.
Common methods price table
The table below lists representative methods, showing their CU weights and list price per million calls, read from the platform plans API (GET /v1/plans):
Active Conversion Parameters
1 USD = 10,000 billing units, 1 billing unit = 1,000 CU (1 USD = 10,000,000 CU).
Formula: CU weight × 1,000,000 ÷ (10,000 × 1,000) USD.
| Method | CU per call | Price per 1M calls (USD) |
|---|---|---|
eth_blockNumber | 1 | $0.10 |
eth_call | 15 | $1.50 |
eth_getLogs | 30 | $3.00 |
debug_traceTransaction | 100 | $10.00 |
data.block | 5 | $0.50 |
Comparing with alternative providers
For a complete workload checklist and self-tests, start with How to choose an RPC provider.
When evaluating infrastructure budgets for EVM contract reads and log queries, see how compute unit pricing and tier limits compare with other platforms:
- Compare providers for supported RPC reads: Compare published
eth_callandeth_getLogscompute rates, free-tier log ranges, and operational workload assumptions.
Billing boundaries: what is not billed
BlockVectra bills only upon response; early rejections are never charged. Because billing rules span HTTP status codes, JSON-RPC error codes, and Data API responses, this guide does not repeat every edge case. For the full table of rules and recommended developer actions, please refer directly to the dedicated guide:
What is not billed: error codes and billing rules
How to estimate your per-cycle costs
Estimating per-cycle costs helps teams choose between the Free Plan allowance and upgrading to paid capacity:
1. Identify your method distribution and frequency
Break down your application's expected traffic by method:
- Lightweight polling or sync checks (such as
eth_blockNumber); - User-triggered contract calls (such as
eth_call); - Event indexing or historical transfer queries (such as
eth_getLogsor Data API transfer endpoints).
2. Use the official usage estimator
Rather than calculating manually, you can use the interactive estimator on the Pricing page:
Go to the Pricing page usage estimator
Select your methods and enter daily call volumes. The estimator will calculate:
- Total CU per usage cycle;
- Share of the Free Plan cycle allowance;
- Implied average calls per second;
- Estimated cost at list price for usage exceeding the free quota.
3. Review the free plan guide
To see what the free allowance covers, refer to the Free Plan guide.
After estimating usage, top up your RPC account programmatically; check open networks and tokens before transferring funds.
Next steps
- Browse the datasets directory to see every dataset BlockVectra indexes.
- See the free plan and pricing to check what your account includes.
- Log in to the console to create an API key.
Last updated:
eth_getLogs block range
With an API key, one eth_getLogs request may span 1,000 blocks on HyperEVM; each chain publishes its own max_logs_block_range. On logs_range_too_large, split the inclusive block interval within that limit and advance only after the chunk succeeds.
Choose an RPC provider
Evaluate RPC method costs, log ranges, free credits, rate limits, chain coverage, push and data APIs, authentication and Agent access with workload self-tests.