Sequencer
The sequencer is a core component of the LinethLineth (Formerly the Linea Stack) The open-source ZK-rollup stack, codebase, and technical protocol that's the foundation of Linea Mainnet. Operators can deploy this stack to launch their own Ethereum-compatible L2 or L3 networks. execution client, Linea BesuLinea Besu The execution client that Linea Mainnet and other Lineth deployments run to execute transactions and maintain EVM state. Linea Besu is a build of the Besu execution client, extended with plugins such as the sequencer and tracer that add ZK-rollup functionality.. The sequencer is a set of plugins, bundled with Linea Besu, that extends the Besu execution client. It is responsible for ordering, building, and executing blocks in a way that enables the creation of ZK proofsZero-knowledge proof A cryptographic method that allows an individual to prove that a statement is true without conveying any additional information. This is useful for scaling blockchain networks through rollups, because it reduces the amount of information you have to provide to lower layers..
The sequencer is not directly accessible from outside the network (to prevent DDOS attacks). Instead, it's connected to the RPC nodes via P2P.
Because the Besu execution client is fully extensible with plugins, operators can extend and apply arbitrary business logic, such as enforcing regulatory logic at the block building level, and controlling which transactions may be executed by the EVM.
How it works
The sequencer takes transactions from the memory pool, orders and validates them, and selects them for inclusion in a block according to Lineth's rules. During selection, it runs each candidate through the tracer to enforce per-block limits (trace line counts, gas limits, calldata size) and ensure the block fits within blob size constraints, then executes and imports the block.
The sequencer also provides the coordinator with the data needed to prove those blocks: the trace counts that determine how many blocks to conflate into one batch, and then the conflated trace file for that batch, produced by re-executing its blocks. This keeps proofs as compact as possible, which matters because all proof data has to be written in tiny, costly pieces on the finalization layerFinalization layer The blockchain where a Lineth deployment submits proofs and state commitments for verification and hard finality. If the finalization layer is Ethereum (an L1), the deployment is an L2. If the finalization layer is Linea (an L2), the deployment is an L3..
There is typically one sequencer instance per network.
However, by applying a QBFTQuorum Byzantine Fault Tolerance (QBFT) The Byzantine-fault-tolerant consensus algorithm that Maru implements to let a validator set produce and finalize blocks. A QBFT validator set requires at least 3f+1 validators to tolerate up to f faulty validators. design,
Lineth could adopt multiple sequencers in a decentralized configuration.
Transaction validity conditions
In addition to standard EVM validity checks (signature, nonce, balance, gas limits), the sequencer applies a Lineth-specific profitability threshold during transaction pool admission and block-building selection. By default, the threshold uses the same gas price calculation described in Estimate gas costs, including the compressed transaction size, gas denominator, fixed/variable costs, and context-specific margin.
Transactions that do not meet the threshold can be rejected from the mempool or skipped during selection. This profitability check does not apply to sequencer-prioritized system transactions, including forced transactions.
Operators can configure the fixed and variable gas costs, and separate margins for pool admission and block-building selection, using the sequencer's profitability options.
See also
- See Predictable pricing for how Linea Mainnet's fee mechanism shapes the base fee, and Ethereum differences for a broader comparison.
- Configure sequencer behavior using the Linea Besu sequencer options.
- See the sequencer source code
in the
lineth-monorepo.