Block Building
Are Flashblocks optional?
Are Flashblocks optional?
Is there any difference in transaction inclusion for Flashblocks vs. 2-second blocks?
Is there any difference in transaction inclusion for Flashblocks vs. 2-second blocks?
Can the sequencer stop publishing Flashblocks?
Can the sequencer stop publishing Flashblocks?
Why is my transaction having trouble getting included?
Why is my transaction having trouble getting included?
j can use up to j/10 of the total block gas limit. Large transactions can be included once enough cumulative capacity exists.See Gas Allocation for the full breakdown.How do I ensure my transaction is in the first Flashblock?
How do I ensure my transaction is in the first Flashblock?
- Set a higher priority fee
- Keep gas limits below ~18.75M (1/10 of block limit) to be eligible for Flashblock 1
Why do transactions sometimes appear out of order by fee?
Why do transactions sometimes appear out of order by fee?
- Transactions are ordered by fee at the time they’re selected for inclusion
- If a high-fee transaction arrives after a lower-fee transaction has already been committed to the current Flashblock, the high-fee transaction will appear after it (or in the next Flashblock)
- This is expected behavior, not a bug—the builder doesn’t “reorder” already-committed transactions
How frequently do Flashblock reorgs happen?
How frequently do Flashblock reorgs happen?
What does it mean when a Flashblock is reorged?
What does it mean when a Flashblock is reorged?
WebSocket
Can I connect directly to the Flashblocks WebSocket stream?
Can I connect directly to the Flashblocks WebSocket stream?
wss://mainnet.flashblocks.base.org/ws) is reserved for infrastructure-to-node data syncing. Applications should not connect to it directly.Instead, query your RPC node or node provider (e.g., QuickNode, Alchemy, Infura, dRPC) for Flashblocks data via:- RPC API: Standard JSON-RPC methods with the
pendingtag - WebSocket subscriptions: Use
eth_subscribevia your node provider’s WebSocket endpoint
Why are there 11 Flashblock indices (0-10)?
Why are there 11 Flashblock indices (0-10)?
Why are there sometimes fewer than 10 Flashblocks?
Why are there sometimes fewer than 10 Flashblocks?
What encoding format is the transaction data in?
What encoding format is the transaction data in?
diff.transactions array is Recursive Length Prefix (RLP) encoded.Why am I getting rate limited on the WebSocket?
Why am I getting rate limited on the WebSocket?
- Running your own Flashblocks-aware RPC node
- Using a third-party node provider with Flashblocks support
RPC
Why am I getting rate limited using mainnet-preconf.base.org?
Why am I getting rate limited using mainnet-preconf.base.org?
- Use a third-party node provider with Flashblocks support (Alchemy, Infura, QuickNode, dRPC)
- Run your own Flashblocks-aware RPC node
What RPC methods support Flashblocks?
What RPC methods support Flashblocks?
| Method | Usage |
|---|---|
eth_getBlockByNumber | Use pending tag |
eth_getBalance | Use pending tag |
eth_getTransactionReceipt | Returns preconfirmed receipts |
eth_getTransactionByHash | Use pending tag |
eth_getTransactionCount | Use pending tag |
eth_call | Use pending tag |
eth_simulateV1 | Use pending tag |
eth_estimateGas | Use pending tag |
eth_getLogs | Use pending for toBlock |
eth_subscribe | Stream Flashblock data in real-time (Beta) |
base_transactionStatus | Check if transaction is in mempool (Beta) |
Node Setup
How do I set up a Flashblocks-aware RPC node?
How do I set up a Flashblocks-aware RPC node?