Skip to main content

Transaction lifecycle on Arbitrum

You can submit transactions to the Arbitrum chain through two main pathways:

  1. Through the Sequencer - The standard method for most transactions
  2. 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:

Transaction lifecycle diagram showing various pathways for submitting transactions

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:

Submit transaction 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:

  1. Automatic processing - The Sequencer picks up your transaction and includes it in the normal transaction flow
  2. Force inclusion - If 24 hours pass without processing, you can call the forceInclude function on the SequencerInbox contract to guarantee inclusion

This two-path system ensures your transaction will always be processed, even if the Sequencer is unresponsive or censoring transactions.

Bypassing the Sequencer

Using the Delayed Inbox

To submit a transaction through the Delayed Inbox:

  1. Construct your transaction and serialize it
  2. Call sendL2Message with your serialized transaction data
  3. 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:

MethodPurpose
sendChildSignedTxSubmit transaction to Delayed Inbox
forceIncludeForce transaction inclusion after 24 hours
signChildTxHelper for transaction signing