Skip to main content

Overview

ParameterTypeDefaultRecommendedMax Allowed for Standard ChainsUnits
minBaseFeeNumber0 (disabled)100,00010,000,000,000wei
The Minimum Base Fee (minBaseFee) configuration was introduced in the Jovian hardfork. This feature allows chain operators to specify a minimum L2 base fee to which can help avoid excessively long priority fee auctions that can occur when the base fee falls too low. When batcher-sequencer throttling is active for long enough and the minBaseFee isn’t enabled (or is zero), the base fee can drop all the way down to 1 wei. It can take a long time to recover back to a stable base fee. The steps below explain how to update the minBaseFee parameter on-chain using the SystemConfig contract.
Setting the minBaseFee too high may make transactions harder to include for users.

How to Update the Minimum Base Fee

1

Find your SystemConfig contract address

The SystemConfig contract stores configurable protocol parameters such as gas limits and fee settings.
You can find its proxy address in the state.json generated by op-deployer.
2

Call the setMinimumBaseFee() method

Note that the owner of the SystemConfig contract is the System Config Owner address, so this transaction must be sent from that address.
To update the minimum base fee, call the following method on the SystemConfig contract:setMinBaseFee(uint64 minBaseFee) external onlyOwner;Example (using cast):
cast send <SYSTEM_CONFIG_PROXY_ADDRESS> "setMinBaseFee(uint64)" 100000 
3

Verify the new value

After the transaction confirms, verify the current value by calling the following getter method on the SystemConfig contract:function minBaseFee() external view returns (uint64);Example (using cast):
cast call <SYSTEM_CONFIG_PROXY_ADDRESS> "minBaseFee()"

References