Skip to content

Ethereum method

eth_getBalance

Returns an address's balance in wei at a given block.

cheapCheap for a provider to serve — no state is read, or one key is.Primary specification (opens in a new tab)

How each provider handles it

This method has not been measured in this window.

It is scheduled but no observation has landed yet.

What it does

A state read. The node looks the account up in the state trie at the requested block and returns its balance. Unlike the head methods, this touches the database, so its latency reflects how well the provider's storage layer is provisioned.

The block parameter matters more than it looks. Asking for `latest` reads the tip; asking for a block from last year requires an archive node, and most providers answer that with an error rather than a balance.

Parameters

addressDATA, 20 bytesrequired
The account to read.
blockQUANTITY | TAGrequired
A block number in hex, or one of latest, earliest, pending, safe, finalized.Default: none — most clients accept latest, but the parameter is not optional in the specification and some providers reject the call without it

Returns

QUANTITY — the balance in wei, in hex.

Try it

Runnable as written, against a keyless public endpoint. Nothing here needs an API key.

Request

curl -s https://ethereum-rpc.publicnode.com \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0x00000000219ab540356cBB839Cbe05303d7705Fa","latest"],"id":1}'

As JSON-RPC

{
  "jsonrpc": "2.0",
  "method": "eth_getBalance",
  "params": ["0x00000000219ab540356cBB839Cbe05303d7705Fa", "latest"],
  "id": 1
}

Response

{
  "id": 1,
  "jsonrpc": "2.0",
  "result": "0x2a1b4ae7d4a4c8f5c1a0"
}

Things that bite

  • The example address is the beacon chain deposit contract, chosen because it is high-value, permanently active, and its balance is public — so the call is comparable between providers and reveals nothing about anyone.
  • Wei, not ether. Dividing by 10^18 is the caller's job, and getting it wrong by three orders of magnitude is a rite of passage.

Why it is measured

It separates providers whose state database is warm from those serving reads off cold storage. Against eth_chainId — which touches no state — the difference is the cost of the lookup rather than the network path.

Called every 120 seconds per endpoint, with jitter so the fleet does not hit a provider in lockstep.

24h window · generated 2026-08-24 13:29:29 UTC · 0 providers