> ## Documentation Index
> Fetch the complete documentation index at: https://docs.optimism.io/llms.txt
> Use this file to discover all available pages before exploring further.

# op-batcher Releases

> Release history for op-batcher. L2 batch submitter.

**op-batcher** is responsible for data availability — it reads unsafe blocks from the sequencer and posts transaction batches to the DA layer (L1 or Alt DA). See the [batcher spec](https://specs.optimism.io/protocol/batcher.html).

<Update label="June 5, 2026" description="v1.16.10" tags={["Latest", "Stable"]}>
  Generating release notes for op-batcher/v1.16.9..op-batcher/v1.16.10

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.10)
</Update>

<Update label="May 18, 2026" description="v1.16.9" tags={["Stable"]}>
  This is an optional release containing only logging changes.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.9)
</Update>

<Update label="May 11, 2026" description="v1.16.8" tags={["Stable"]}>
  This is a maintenance release of op-batcher.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.8)
</Update>

<Update label="April 13, 2026" description="v1.16.7" tags={["Stable"]}>
  This release is optional.

  ## What's Changed in op-batcher/v1.16.7

  * all: upgrade op-geth, including shared tx-submission compatibility updates used by the batcher ([#19844](https://github.com/ethereum-optimism/optimism/pull/19844))
  * chore(deps): bump op-geth again to `v1.101702.1-rc.1` for this release candidate ([#19992](https://github.com/ethereum-optimism/optimism/pull/19992))
  * chore(deps): bump `google.golang.org/grpc` to `v1.79.3` ([#19749](https://github.com/ethereum-optimism/optimism/pull/19749))

  **Full Changelog**: [https://github.com/ethereum-optimism/optimism/compare/op-batcher/v1.16.6...op-batcher/v1.16.7](https://github.com/ethereum-optimism/optimism/compare/op-batcher/v1.16.6...op-batcher/v1.16.7)

  🚢 Docker Image: [https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.16.7](https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.16.7)

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.7)
</Update>

<Update label="March 31, 2026" description="v1.16.6" tags={["Stable"]}>
  This release is optional; however, we recommend updating as it includes a Go version upgrade addressing security fixes, along with enhanced container image hardening.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.6)
</Update>

<Update label="March 9, 2026" description="v1.16.5" tags={["Stable"]}>
  This is an optional release that contains a metric bug fix.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.5)
</Update>

<Update label="February 13, 2026" description="v1.16.4" tags={["Stable"]}>
  This is a recommended release containing:

  * A feature where the batcher can choose a smarter, dynamic blob tip cap to use, based on recent market activity on L1.
    The feature can be enabled by setting `OP_BATCHER_TXMGR_BLOB_TIP_CAP_DYNAMIC=true`. By default, the existing static blob tip cap will be used. For more details, see [https://github.com/ethereum-optimism/optimism/pull/18981](https://github.com/ethereum-optimism/optimism/pull/18981) and [https://github.com/ethereum-optimism/optimism/pull/18386](https://github.com/ethereum-optimism/optimism/pull/18386).
  * Several bugfixes and stability improvements.

  > \[!TIP]
  > If you use proxyd for the batcher's L1 connection, we recommend upgrading to [proxyd/v4.25.0](https://github.com/ethereum-optimism/infra/releases/tag/proxyd%2Fv4.25.0) (this contains a non-critical bugfix and avoids noisy warning logs being emitted by the batcher).

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.4)
</Update>

<Update label="December 19, 2025" description="v1.16.3" tags={["Stable"]}>
  This is an optional `op-batcher` release containing:

  * a new module for suggesting blob priority fee based on past blob transactions included in recent blocks. The new module is not active yet, currently it is only emitting logs comparing suggested fees with the configured fees for blob transactions.
  * a fix for `MaxChannelDuration` tracking for large block backlogs.
  * a fix for fully exiting the `op-batcher` process on critical throttling RPC errors.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.3)
</Update>

<Update label="November 6, 2025" description="v1.16.2" tags={["Stable"]}>
  This update adds Jovian and Fusaka support to the batcher.

  The batcher needs to switch from submitting blob transactions with blob proofs to submitting blob transactions with cell proofs after the L1 activates the Fusaka fork. With this release the switchover moment can be set ahead of time with the `--txmgr.cell-proof-time` flag (removing the need for live operations around the Fusaka activation time).  See #17649 for details. For chains batching to Ethereum mainnet, the appropriate time to switch to cell proofs is inferred automatically and no flag needs to be set.

  > \[!NOTE]
  > **Please ensure the batcher is restarted at least once after op-node is upgraded, so it can load the latest rollup config at startup.**

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.2)
</Update>

<Update label="October 7, 2025" description="v1.16.0" tags={["Stable"]}>
  > \[!WARNING]
  > **This is an essential release to prepare for the L1 Fusaka fork on Sepolia.**

  > \[!IMPORTANT]
  > The new flag`OP_BATCHER_TXMGR_ENABLE_CELL_PROOFS` must be set to "true" immediately after the Fusaka activation on L1.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.16.0)
</Update>

<Update label="August 21, 2025" description="v1.15.0" tags={["Stable"]}>
  > \[!IMPORTANT]
  > **All chain operators are strongly encouraged to upgrade their batchers to improve throttling behavior and mitigate worst-case spam attack scenarios.**

  # Overview

  This release includes a major reworking of the batcher-sequencer DA throttling feature (allowing for smoother control of transaction and block size limits), a new admin RPC method to flush the batcher (causing it to submit a transaction as soon as possible) as well as several performance enhancements and bugfixes.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.15.0)
</Update>

<Update label="June 26, 2025" description="v1.14.0" tags={["Stable"]}>
  This release contains:

  * a transaction rebroadcasting feature which helps batcher transactions get included with less delay and lower cost.
  * changes in the way the batcher interprets the sync status reported by the `op-node`
  * other small bugfixes

  > \[!WARNING]
  > Operators should upgrade sequencers to at least [op-node/v1.13.4](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.13.4) when updating to this version of the batcher. See [#16413](https://github.com/ethereum-optimism/optimism/pull/16413).

  > \[!WARNING]
  > The transaction rebroadcasting feature is enabled by default. To disable this feature, set `TXMGR_REBROADCAST_INTERVAL` to `0`. See [#16310](https://github.com/ethereum-optimism/optimism/pull/16310).

  > \[!WARNING]
  > Rebroadcasting transactions can make memory spikes more likely. We recommend at least 4GB of memory for production deployments.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.14.0)
</Update>

<Update label="May 27, 2025" description="v1.13.2" tags={["Stable"]}>
  This release contains an improvement to retry certain transaction submission errors more rapidly. It is an optional upgrade which improves the performance of the batcher.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.13.2)
</Update>

<Update label="May 14, 2025" description="v1.13.1" tags={["Stable"]}>
  > \[!WARNING]
  > This release replaces `op-batcher/v1.13.0`

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.13.1)
</Update>

<Update label="May 12, 2025" description="v1.13.0" tags={["Stable"]}>
  > \[!WARNING]
  > This release contained a CLI bug where the additional endpoints DA behavior would not activate. Please use [op-batcher/v1.13.1](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.13.1)

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.13.0)
</Update>

<Update label="April 3, 2025" description="v1.12.0" tags={["Stable"]}>
  # Isthmus

  > \[!IMPORTANT]
  > Chain operators need to upgrade their batchers before Isthmus activates on their chains. It is an optional upgrade until then.

  This release adds support for `SetCode` transactions in (span) batches, which is a requirement for batching Isthmus chains.

  The Sepolia Superchain will activate Isthmus on Apr 17, so those chain operators need to upgrade their batchers by then. See the [`op-node/v1.13.0`](https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.13.0) release notes for more details on the Isthmus Sepolia activation.

  > \[!NOTE]
  > The Isthmus activation date for the Mainnet Superchain isn't set yet. It won't be before Ethereum Mainnet activates Pectra, so not before May 7, which is the current tentative Pectra activation date.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.12.0)
</Update>

<Update label="March 11, 2025" description="v1.11.5" tags={["Stable"]}>
  ❗ This release fixes a bug where the batcher would potentially needlessly throttle the sequencer if it were to perform automatic reset following a backlog of data and transaction submission failures.

  It is recommended for all users to upgrade.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.11.5)
</Update>

<Update label="March 4, 2025" description="v1.11.4" tags={["Stable"]}>
  ❗ We have had some reports of the batcher failing to post batches at all from version `v1.11.2` -- this is caused by the sequencer incorrectly reporting the `LocalSafeL2` field. This batcher release works around that issue.

  This is a recommended release for all users to upgrade to.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.11.4)
</Update>

<Update label="February 28, 2025" description="v1.11.3" tags={["Stable"]}>
  🐞 **This version of the batcher uses the LocalSafeL2 field of the Sequencer's SyncStatus response, which is sometimes incorrectly reported as `0`, causing the batcher to behave incorrectly and fail to post fresh batches. Please upgrade to at least [`v1.11.4`](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.11.4) to avoid this issue.**

  ‼️ This release contains a critical fix for the batcher's throttling feature, and it is recommended for all to upgrade.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.11.3)
</Update>

<Update label="February 26, 2025" description="v1.11.2" tags={["Stable"]}>
  🐞 **This version of the batcher uses the LocalSafeL2 field of the Sequencer's SyncStatus response, which is sometimes incorrectly reported as `0`, causing the batcher to behave incorrectly and fail to post fresh batches. Please upgrade to at least [`v1.11.4`](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher%2Fv1.11.4) to avoid this issue.**

  ‼️ This is a critical release and strongly recommended for all to upgrade

  This release:

  * changes the batcher's throttling behaviour to purely event-driven instead of happening periodically.
  * fixes a bug where the batcher cannot post to L1 networks which activated Pectra, triggered when the transaction is very small (typical in alt-DA settings).

  ❗ This release removes the `OP_BATCHER_THROTTLE_INTERVAL` configuration variable. This variable was previously used to disable the throttling feature by setting it to zero. In this release, operators should instead set `OP_BATCHER_THROTTLE_THRESHOLD` to zero  if they want to disable throttling. We strongly recommend enabling throttling in production settings.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.11.2)
</Update>

<Update label="February 10, 2025" description="v1.11.1" tags={["Stable"]}>
  This is an optional release which introduces:

  * Minor changes into batcher metrics and logging, and
  * Shortens the default duration to check the active sequencer. It has been lowered from 2min to 5 seconds, to avoid DA throttling being applied too late in case of a switch in sequencer.

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.11.1)
</Update>

<Update label="March 13, 2024" description="v1.7.2-rc.3" tags={["Release Candidate"]}>
  # 🔴✨  Multi-Blob Batcher Pre-Release

  The op-batcher in this release candidate has the capabilities to send multiple blobs per single blob transaction. This is accomplished by the use of multi-frame channels, see the [specs](https://github.com/ethereum-optimism/specs/blob/main/specs/protocol/derivation.md#frame-format) for more technical details on channels and frames.

  A minimal batcher configuration (with env vars) to enable 6-blob batcher transactions is:

  ```
        - OP_BATCHER_BATCH_TYPE=1 # span batches, optional
        - OP_BATCHER_DATA_AVAILABILITY_TYPE=blobs
        - OP_BATCHER_TARGET_NUM_FRAMES=6 # 6 blobs per tx
        - OP_BATCHER_TXMGR_MIN_BASEFEE=2.0 # 2 gwei, might need to tweak, depending on gas market
        - OP_BATCHER_TXMGR_MIN_TIP_CAP=2.0 # 2 gwei, might need to tweak, depending on gas market
        - OP_BATCHER_RESUBMISSION_TIMEOUT=240s # wait 4 min before bumping fees
  ```

  This enables blob transactions and sets the target number of frames to 6, which translates to 6 blobs per transaction. The min. tip cap and base fee are also lifted to 2 gwei because it is uncertain how easy it will be to get 6-blob transactions included and slightly higher priority fees should help. The resubmission timeout is increased to a few minutes to give more time for inclusion before bumping the fees, because current txpool implementations require a *doubling* of fees for blob transaction replacements.

  Multi-blob transactions are particularly interesting for medium to high-throughput chains, where enough transaction volume exists to fill up 6 blobs in a reasonable amount of time. You can use [this calculator](https://docs.google.com/spreadsheets/d/12VIiXHaVECG2RUunDSVJpn67IQp9NHFJqUsma2PndpE/edit) for your chain to determine what number of blobs are right for you, and what gas scalar configuration to use. Please also refer to our [documentation](https://docs.optimism.io/builders/chain-operators/management/blobs) on Blobs for chain operators.

  🚢 **Docker image**: [https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.7.2-rc.3](https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.7.2-rc.3)

  *A full `v1.7.2` release of the op-stack follows soon.*

  [View full release on GitHub →](https://github.com/ethereum-optimism/optimism/releases/tag/op-batcher/v1.7.2-rc.3)
</Update>
