eth_getTransactionCount on Celo
Everything below was measured on 2026-10-13 by calling eth_getTransactionCount on Celo through the same endpoint customers use, and is re-measured weekly.
What eth_getTransactionCount does
Returns the number of transactions an address has sent, which is the nonce its next transaction must use. With the pending tag it also counts the address's transactions waiting in the node's mempool.
eth_getTransactionCount on Celo: what we measured
On an address that had just sent a transaction in the latest block (0xbbc43db9463bd5889af9c967de4394a3b3b106b5):
| "latest" | 3,635,717 |
|---|---|
| "pending" | 3,635,717 |
Which tag to use
"pending" equalled "latest" for this address when we read it. Use "pending" for the next nonce anyway: it covers your own transactions that are sent but not yet mined. On a chain with a few seconds per block, sending twice in one block is common.
Example request
curl -s https://rpc.swiftnodes.io/rpc/celo?key=YOUR_API_KEY \
-X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_getTransactionCount","params":["0xbbc43db9463bd5889af9c967de4394a3b3b106b5","pending"]}'import { createPublicClient, http } from "viem";
const client = createPublicClient({
transport: http("https://rpc.swiftnodes.io/rpc/celo?key=YOUR_API_KEY"),
});
const nonce = await client.getTransactionCount({ address, blockTag: "pending" });
// Sending several transactions: let viem track nonces locally
import { nonceManager, privateKeyToAccount } from "viem/accounts";
const account = privateKeyToAccount(key, { nonceManager });Other methods on Celo
- eth_blockNumberSupported
- eth_chainIdSupported
- eth_getBalanceSupported
- eth_getBlockByNumberSupported
- eth_getTransactionByHashSupported
- eth_getTransactionReceiptSupported
- eth_callSupported
- eth_estimateGasSupported
- eth_gasPriceSupported
- eth_maxPriorityFeePerGasSupported
- eth_sendRawTransactionSupported
- eth_getCodeSupported
- eth_subscribeSupported
- eth_getLogsSupported
- eth_getBlockReceiptsSupported
- eth_feeHistorySupported
- eth_getProofSupported
- eth_createAccessListSupported
- debug_traceCallSupported
- trace_blockSupported
- trace_transactionNot available
eth_getTransactionCount on other chains
- Ethereum
- Base
- Arbitrum
- Optimism
- Polygon
- BNB Smart Chain
- Avalanche
- Sonic
- Linea
- Scroll
- zkSync Era
- Blast
- Mantle
- Gnosis
- Berachain
- Monad
- Unichain
- Kaia
- PulseChain
- World Chain
- Ronin
- Abstract
- ApeChain
- MegaETH
- Fantom
- Lisk
- Hemi
- X Layer
- BOB
- Plasma
- Fraxtal
- Zora
- Story
- Soneium
- Sei
- Hyperliquid
- Taiko
- Morph
- Ink
- Katana
- Ethereum Classic
- opBNB
- Mode
- Flare
- Core
- Chiliz
- Telos EVM
- Tempo
- Cronos
- Manta Pacific
- Shibarium
- Boba Network
- Arbitrum Nova
- Immutable zkEVM
Frequently asked questions
Does Celo support eth_getTransactionCount?
Yes. eth_getTransactionCount answered on the SwiftNodes Celo endpoint when our weekly probe called it through the customer path (2026-10-13).
How do I get the next nonce on Celo?
eth_getTransactionCount(address, "pending"). For several transactions in a row, increment locally.
Celo endpoints, live block height and WebSocket status are on the Celo RPC page.
One key covers every chain we serve, and SwiftNodes has a free tier.