Starting today, NodeFlare measures usage in Compute Units (CU) instead of raw request counts.
Why raw request counts don't work
A request counter treats eth_blockNumber the same as eth_getLogs. In reality they're not even close — a logs query can scan thousands of blocks, serialize hundreds of events, and tax the node an order of magnitude more than a simple block number lookup.
Counting both as "1 request" means light users subsidise heavy ones, and the quota number on your dashboard doesn't reflect what's actually happening.
How Compute Units work
Every JSON-RPC method has a CU weight based on its infrastructure cost:
| Method | CU |
|---|---|
eth_blockNumber, eth_chainId | 1 |
eth_getBalance, eth_getBlockByNumber | 2 |
eth_call, eth_estimateGas | 5 |
eth_getLogs, eth_getFilterLogs | 75 |
trace_*, debug_* | 100 |
Batch requests sum the CU of each call in the batch. Your monthly CU counter is the sum of all weighted calls.
What this means for your plan
Plan limits are now stated in CU/month:
| Plan | CU/month |
|---|---|
| Free | 2,000,000 |
| Hacker | 15,000,000 |
| Starter | 60,000,000 |
| Pro | 300,000,000 |
If your app only calls eth_blockNumber, a free account gets 2,000,000 calls. If you call eth_getLogs exclusively, you get ~40,000 calls. The pricing is the same — the quota now just reflects reality.
Top-up credits
Need more before your quota resets? The billing page lets you buy 1,000,000 extra CU for $6 as a one-time purchase. Extra CU:
- Stack on top of your plan's monthly quota
- Are consumed at the same per-method rate as your plan
- Never expire — unused CU carry over month to month
The dashboard
Your usage card now shows CU consumed this month with a per-chain breakdown. Heavy chains like Ethereum (lots of eth_getLogs traffic) will naturally show higher CU than lighter usage patterns.
The full method weight table is in the rate limits docs.