dogekaki.com

How arbitrum retryable tickets work and why they expire

Arbitrum uses a mechanism called retryable tickets to move messages from Ethereum’s L1 to Arbitrum’s L2. It is the only way to deposit ETH, deploy contracts, or call L2 functions from L1. The system is designed to handle the asynchronous nature of cross-chain communication. But it has a catch: if you don’t set the gas parameters correctly, the ticket expires after seven days.

This page explains the lifecycle of a retryable ticket. It covers submission, auto-redeem, the expiry window, and how to avoid manual intervention.

The lifecycle of a retryable ticket

A retryable ticket starts when you submit a transaction on Ethereum L1 to the Arbitrum inbox contract. That transaction includes the L2 destination address, the calldata, and two gas-related parameters: the max gas limit and the gas price bid. These parameters are critical.

Once the L1 transaction is confirmed, the ticket enters a pending state on L2. It is not executed immediately. Instead, it waits for redemption. The system gives the ticket a seven-day window to be redeemed.

Redemption can happen automatically or manually. Automatic redemption occurs when the gas parameters you provided are sufficient; the L2 sequencer or validators will execute the ticket on your behalf. If the parameters are too low, the ticket remains pending.

The auto-redeem mechanism

Auto-redeem is the preferred outcome. It requires you to set a max gas limit high enough to cover the actual gas cost of the L2 execution. You also need to set a gas price bid that is competitive with current L2 gas prices.

When both parameters are adequate, the ticket is executed on L2 within minutes of the L1 confirmation. The caller on L1 does not need to do anything else. The L2 execution is paid for with ETH that was deposited as part of the L1 transaction.

If the gas price bid is too low, the ticket may not be picked up by the sequencer. If the max gas limit is too low, execution will fail. In both cases, the ticket remains pending.

The seven-day expiry window

Every retryable ticket has a lifetime of exactly seven days. This is not a random number. It matches the delay used for Arbitrum’s L2-to-L1 withdrawal mechanism. As of the date of this writing - August 31, 2026 - that remains the standard.

The countdown starts when the L1 transaction is included in an Ethereum block. If the ticket is not redeemed within those seven days, it expires. Expiry means the ticket can no longer be executed. The funds associated with the ticket - the ETH deposited for gas - are returned to the sender on L1. The message itself is lost.

Why seven days? It ensures a clear deadline. Without one, pending tickets could accumulate indefinitely, consuming state and creating uncertainty. The deadline also aligns with the withdrawal challenge period, which is seven days as well.

Manual redemption and gas tweaking

If your ticket does not auto-redeem, you can manually redeem it. This is done by calling the redeem function on the L2 retryable ticket contract. You can adjust the gas parameters at that point. You might raise the gas price bid or increase the max gas limit.

Manual redemption is a fallback. It requires you to notice the failure and act within the seven-day window. If you miss that window, the ticket expires and you must start over from L1.

How to set gas parameters correctly

The safest approach is to overestimate. Set the max gas limit to a value higher than the estimated execution cost, and set the gas price bid above the current L2 median gas price. Many L2 wallets and bridges do this automatically. If you are sending a transaction directly, you must calculate these values yourself.

Gas estimation tools are available on Arbitrum’s documentation and through block explorers. Use them. A low gas limit or price is the most common reason for expiry.

What happens after expiry

When a ticket expires, the ETH sent for gas is returned to the L1 sender. The L2 message never executes. You lose no funds besides the L1 gas fee for the original submission. But you lose time. You must resubmit the entire transaction from L1 again.

This is why the seven-day window matters. It is not a penalty. It is a safety buffer. It gives you time to notice a failed auto-redeem and fix it.

Relationship to other Arbitrum mechanisms

Retryable tickets are the L1-to-L2 counterpart to the seven-day withdrawal process covered in the site’s earlier article. Both use a time window, but for opposite reasons. Withdrawals wait seven days to allow fraud proofs. Retryable tickets use seven days as a deadline for redemption.

They are also the foundation for how ETH and tokens enter Arbitrum. Without retryable tickets, there would be no way to deposit assets from L1. The mechanism is not optional. It is the core primitive.

Summary

Set your gas parameters high. Check the status of your ticket within the first few hours. If it does not redeem automatically, manually redeem it before seven days pass. After expiry, you start over. The mechanism is reliable only if you handle its constraints correctly.

Not financial advice. dogekaki.com publishes market data and general information about digital assets. Crypto assets are volatile and you can lose everything you put in. Nothing here is a recommendation to buy, sell or hold, and we make no price predictions.

Prices are sourced from third parties and may be delayed or wrong. Verify anything you intend to act on against a primary source.

Back to arbitrum