# L2 Withdrawal Times to Ethereum by Rollup

> L2 withdrawal times by rollup: how long a native withdrawal to Ethereum takes from Base, Arbitrum, OP Mainnet, ZKsync, Linea and Scroll, step by step.

Markdown copy of https://voltfincrypto.com/apps/l2-withdrawal-times

**Question:** How long does a native withdrawal from each layer 2 to Ethereum take right now?

- Kind: Dashboard in Voltfin Vantage
- Topic: [Layer 2s](https://voltfincrypto.com/topics/layer-2)
- Chains: Ethereum, Base, OP Mainnet, Arbitrum, ZKsync, Linea, Scroll, Unichain, Ink, World Chain, Starknet, Mantle
- Status: Planned. The data is not published yet, so this page states no figure; each figure will open its receipt when it is.

A native withdrawal moves assets from a rollup back to Ethereum through its canonical bridge, and it cannot be released until Ethereum accepts the rollup's state. How long that takes depends on the proof system. This dashboard measures it from the chains themselves for every covered rollup: the time from the withdrawal transaction on the layer 2 to the first moment it could be finalized on Ethereum and to the moment users actually finalized it.

On optimistic rollups such as Base, OP Mainnet and Arbitrum One, a withdrawal waits through a challenge window of about a week after the state that includes it is proposed. On zk rollups such as ZKsync Era, Linea, Scroll and Starknet, it waits for a validity proof of its batch to be verified, which depends on how often each rollup proves. Both are timed here step by step.

Users often finalize later than they could, so the dashboard keeps two clocks: the protocol's minimum and the observed time. Fast bridges and intent networks can return funds sooner for a fee; they are outside this dashboard, which measures the native route.

## Blueprint

### Withdrawal times now

How long native withdrawals take on each covered rollup over the last 30 days.

- **Fastest median, zk rollups** (hours): The shortest median time from withdrawal to earliest finalization among covered zk rollups over the last 30 days, with the rollup named.
- **Median, optimistic rollups** (days): The median time from withdrawal to earliest finalization across covered optimistic rollups over the last 30 days.
- **Extra wait before users finalize** (days): The median time between when withdrawals could first be finalized and when users finalized them, across covered rollups.
- **Withdrawals waiting** (count): Withdrawals started on covered rollups and not yet finalized on Ethereum at the latest read.
- **Withdrawal time by rollup**: For each rollup: proof system, median and slowest-tenth time to earliest finalization, median observed time and the step that takes longest.

### History

How withdrawal times and proving cadence have moved over time.

- **Median proof interval, zk rollups** (hours): The median time between consecutive proofs verified on Ethereum, across covered zk rollups over the selected period.
- **Median state proposal interval** (hours): The median time between state proposals on Ethereum, across covered optimistic rollups over the selected period.
- **Withdrawals finalized by week** (count): Native withdrawals finalized on Ethereum each week, by rollup.
- **Time to earliest finalization by week** (hours): The weekly median time from withdrawal to earliest finalization for each rollup over the selected period.

Filters: Rollup (Every covered rollup); Period (Last month, quarter or year).

## How it will be measured

- On OP Stack chains, each withdrawal is matched by its hash from MessagePassed on the layer 2 to WithdrawalProven and WithdrawalFinalized on the chain's OptimismPortal, and the dispute game that covered it is read from the DisputeGameFactory.
- On Arbitrum One, each L2ToL1Tx event from ArbSys is matched to the assertion that included it, the block that assertion was confirmed in on Ethereum and the OutBoxTransactionExecuted event that released it.
- On zk rollups, a withdrawal can be finalized once the batch that contains it is executed or finalized on Ethereum: BlockExecution on ZKsync Era, FinalizeBatch on Scroll, Linea's finalization events and Starknet's LogStateUpdate.
- The protocol minimum is the earliest block at which a withdrawal could be finalized; the observed time adds the delay before the user finalized it, and both are reported as medians and as the slowest tenth.
- Every timing names the layer 2 transaction and the Ethereum transactions it was matched to.

## Data it needs

- `bridge_flows_daily` (to build): Deposits into and withdrawals out of canonical and major third-party bridges by chain, token and day, plus escrow balances at day end.
- `l2_activity_daily` (to build): Per layer 2 per day: transactions, active addresses, fees users paid on the L2, and what the L2 paid Ethereum to settle and post data.
- Source: MessagePassed events of the L2ToL1MessagePasser on OP Stack chains, with WithdrawalProven and WithdrawalFinalized events of each OptimismPortal
- Source: DisputeGameFactory DisputeGameCreated events and each game's resolution on Ethereum
- Source: ArbSys L2ToL1Tx events on Arbitrum One, assertion confirmations on its rollup contract and Outbox OutBoxTransactionExecuted events
- Source: ZKsync Era's batch commit, proof and execution events and Scroll's FinalizeBatch events
- Source: Linea's finalization events and message claims; Starknet's LogStateUpdate events and consumed L2 to L1 messages

## Questions

### How long does it take to withdraw from Base to Ethereum?

On Base, a native withdrawal is proven on Ethereum once a state proposal covers it and can be finalized after the proof system's waiting period, about a week under fault proofs. The dashboard shows the current median for each step and marks any change to Base's proof system.

### Why do optimistic rollup withdrawals take a week?

The waiting period gives anyone time to challenge a wrong state claim before Ethereum treats it as final. A shorter window would leave less time to catch a fraudulent withdrawal, so most optimistic rollups keep it at about a week.

### Are zk rollup withdrawals instant?

No. They wait until a validity proof for their batch is verified on Ethereum, and some rollups add an execution delay after that. How often a rollup proves sets the wait, which the dashboard measures for each one.

### How long does an Arbitrum withdrawal take?

A withdrawal from Arbitrum One can be executed on Ethereum once the assertion that includes it is confirmed, after a challenge period of about a week under the BoLD protocol, and the user then executes it from the outbox. The dashboard times both steps.

### Can I withdraw faster?

Fast bridges and intent networks pay out on Ethereum much sooner and carry the native withdrawal's wait and risk themselves, for a fee. This dashboard measures the native route only; the cross-chain intents dashboard covers fill times.

## Glossary

- **Challenge window**: The time during which a state claim on an optimistic rollup can be disputed before withdrawals that rely on it are released.
- **Proving a withdrawal**: On OP Stack chains, the first Ethereum transaction of a withdrawal, which shows it is included in a proposed state.
- **Execution delay**: A wait some zk rollups add between verifying a batch's proof and executing it on Ethereum.

## Related apps

- [L2 Bridge Flows: Net Deposits from Ethereum by Chain](https://voltfincrypto.com/apps/l2-bridge-flows)
- [Rollup Decentralization: Upgrade Keys and Exit Windows](https://voltfincrypto.com/apps/rollup-decentralization)
- [Cross-Chain Intents: Volume, Solvers and Fill Times](https://voltfincrypto.com/apps/cross-chain-intents-solvers)
- [Arbitrum One Stats: Gas, Activity, Timeboost and Priority Fees](https://voltfincrypto.com/apps/arbitrum-one-stats)
- [Ethereum Layer 2 List Ranked by Activity, Fees and Value](https://voltfincrypto.com/apps/ethereum-layer-2-list)
- [Ethereum TPS: Mainnet and Layer 2 Transactions per Second](https://voltfincrypto.com/apps/ethereum-tps)

Build it in Voltfin Studio: https://app.voltfincrypto.com/signup?next=%2F
