Transaction lifecycle on Arbitrum
You can submit transactions to the Arbitrum chain through two main pathways:
- Through the Sequencer - The standard method for most transactions
- Bypassing the Sequencer - Using the Delayed Inbox contract on the Parent chain
This guide explains both methods, when to use each one, and how they work within Arbitrum's transaction lifecycle.
Transaction submission methods
Sequencer pathways
You can send transactions to the Sequencer through four methods:
- Public RPC endpoints
- Third-party RPC providers
- Self-hosted Arbitrum nodes
- Direct Sequencer endpoint
The first three options route through a load balancer, while the Sequencer endpoint connects directly.
Non-sequencer pathway
You can also submit transactions directly to the Delayed Inbox contract on the Parent chain. This method works even when the Sequencer is unavailable and provides additional censorship resistance.
The following diagram shows the different ways you can submit transactions to Arbitrum:
Submitting transactions to the Sequencer
The Sequencer processes most transactions on Arbitrum. You have four options for sending transactions to the Sequencer, each with different benefits depending on your needs.
Public RPC
Arbitrum provides public RPC endpoints for Arbitrum One, Arbitrum Nova, and Arbitrum Sepolia. These endpoints are rate-limited, making them best for:
- Testing and development
- Light usage and general interactions
- Applications with low transaction volume
For more details on the specific RPC endpoints for each chain, please see this section of the documentation.
Third-party RPC
Third-party node providers offer enhanced performance and higher rate limits. Many providers that support Ethereum also support Arbitrum chains. Use third-party RPCs when you need:
- Higher throughput
- Better performance
- More reliable uptime
- Advanced features like analytics
You can find a list of supported third-party providers here.
Arbitrum nodes
Running your own Arbitrum node provides maximum control and privacy. Your transactions connect to the Sequencer through the Sequencer Feed. Consider this option if you need:
- Complete control over transaction handling
- Maximum privacy
- Custom node configurations
Please see the Arbitrum Node documentation to learn more about setting up and running a node.
Sequencer endpoint
The Sequencer endpoint provides the fastest path to transaction submission by bypassing the load balancer. This endpoint only supports:
eth_sendRawTransaction
eth_sendRawTransactionConditional
Use this method when you need the lowest possible latency for time-sensitive transactions.
The following diagram shows the four methods for submitting transactions to the Sequencer:
Bypassing the Sequencer
You can submit transactions directly to the Delayed Inbox contract on the Parent chain without using the Sequencer. This method provides:
- Censorship resistance - Your transaction will be included even if the Sequencer refuses to process it
- Availability guarantee - Transactions work even when the Sequencer is offline
- Decentralization - Reduces dependency on the Sequencer
There are two paths your transaction can take through the Delayed Inbox.
When you submit a transaction to the Delayed Inbox, two things can happen:
- Automatic processing - The Sequencer picks up your transaction and includes it in the normal transaction flow
- Force inclusion - If 24 hours pass without processing, you can call the
forceInclude
function on theSequencerInbox
contract to guarantee inclusion
This two-path system ensures your transaction will always be processed, even if the Sequencer is unresponsive or censoring transactions.
Using the Delayed Inbox
To submit a transaction through the Delayed Inbox:
- Construct your transaction and serialize it
- Call
sendL2Message
with your serialized transaction data - Wait for processing or force inclusion after 24 hours
Force inclusion after delays
If your transaction isn't processed within 24 hours, call the forceInclusion
function on the SequencerInbox
contract. This guarantees your transaction will be included regardless of Sequencer status.
Using the Arbitrum SDK
The Arbitrum SDK simplifies Delayed Inbox interactions through the InboxTools
class:
Method | Purpose |
---|---|
sendChildSignedTx | Submit transaction to Delayed Inbox |
forceInclude | Force transaction inclusion after 24 hours |
signChildTx | Helper for transaction signing |