TLDR:Documentation Index
Fetch the complete documentation index at: https://docs.chainstack.com/llms.txt
Use this file to discover all available pages before exploring further.
- Pending transactions are in the pool ready to be included in a block.
- Queued transactions are sitting locally because their account nonce is out of sequence; they don’t propagate until the gap is filled.
- Inspect the pool with
txpool_status/txpool_content; subscribe to new pending transactions witheth_subscribe; fix a queued transaction by filling the nonce gap.
Pending vs queued
A transaction submitted through an EVM node has one of two states before it lands in a block:- Pending — in the node’s transaction pool and ready to be included in the next block.
- Queued — held in the local pool because the account nonce is out of sequence.
0 and must increase by one per transaction from that address. A transaction whose nonce is in sequence goes straight to pending. A transaction with a nonce gap waits in queued until the missing nonces are filled.
Example
| Step | From | Nonce | State |
|---|---|---|---|
| 1 | 0x123... | 0 | Pending → mined |
| 2 | 0x123... | 1 | Pending → mined |
| 3 | 0x123... | 3 | Queued (nonce 2 is missing) |
| 4 | 0x123... | 2 | Pending → mined. Nonce 3 now moves to Pending and is mined too. |
Inspect the local pool
Use thetxpool JSON-RPC namespace to inspect the mempool of a node you have access to. On Chainstack, mempool access requires an Archive node with Debug and trace APIs enabled — see Mempool configurations for protocol-by-protocol availability.
Subscribe to new pending transactions
For real-time delivery of new pending transactions, subscribe over WebSocket:Each push notification over WebSocket counts as one request unit. For sustained high-volume pending-transaction subscriptions, consider an Unlimited Node which uses RPS-tiered flat-fee pricing instead of per-request billing.
HTTP-polling alternative
If you can’t use WebSocket, poll an HTTP filter witheth_newPendingTransactionFilter and eth_getFilterChanges:
Fix a queued transaction
If you have a queued transaction stuck behind a nonce gap, fill the gap by sending the missing nonces. The simplest path is to send no-op self-transfers at the missing nonces until the queued nonce becomes the next pending one.Diagnose the gap
- Get the confirmed nonce:
eth_getTransactionCount("0xYourAddress","latest"). - Get the queued transaction’s nonce from
txpool_contentor from the transaction object:eth_getTransactionByHash. - The gap is everything between them.
Fill the gap
Send a transaction at each missing nonce. A 0-value self-transfer with explicitnonce is enough:
Alternative: cancel by replacement
If you’d rather drop the queued transaction altogether, send a replacement at the same nonce with a higher gas price — most clients require the new gas price to be at least 10% higher (txpool.pricebump).
See also
- Mempool configurations — Chainstack support per protocol
- Debug and trace APIs
- Request units
- Fix Ethereum’s filter not found error