Error - "Fee cap less than block base fee"
When attempting to broadcast a transaction you may get an error looking as follows or similar:
{
"statusCode": 403,
"errorCode": "sc.operation.failed",
"message": "Unable to transfer assets. Please check, that your address contains all the tokens you want to transfer.",
"cause": "Returned error: fee cap less than block base fee: address ###, gasFeeCap: 14597473823 baseFee: 15146212371"
}
The error message occurs because the gasFeeCap
(max fee per gas) specified for the transaction is less than the block base fee
required for processing it.
On EVM chains, the base fee is a dynamic minimum fee per gas unit that fluctuates depending on network demand. In Tatum based REST API endpoints, we use GasPrice
as gasFeeCap
.
Why This Happens
gasFeeCap
: The maximum fee per gas the transaction can pay, derived fromGasPrice
in Tatumβs API.baseFee
: A network-determined minimum fee that must be met for the transaction to be processed.- If the
gasFeeCap
is less than thebaseFee
, the transaction will be rejected by the network.
Recommended Solutions
-
Retry the Transaction
Network fees fluctuate rapidly. Retrying the transaction can succeed if thebaseFee
drops below the auto-calculatedgasFeeCap
.
Steps:- Wait a short time
- Retry sending the transaction.
-
Set Manual Gas Fees
If retrying does not resolve the issue, you can manually set the gas fees to ensure they account for network fluctuations.
How to Set Manual Fees:- Estimate Fees: Follow Tatum's guide on fee estimation to calculate appropriate values for
GasPrice
andGasLimit
. - Include Manual Fees in the Transaction - Example request:
curl --location 'https://api.tatum.io/v3/blockchain/sc/custodial/transfer' \ --header 'Content-Type: application/json' \ --header 'x-api-key: {YOUR_API_KEY}' \ --data '{ "chain": "ETH", "custodialAddress": "0x73b10492E49B7Ce4cc8dD7F80F38147Ad8DA5Bdf", // Your "Slave GP Contract Address" "recipient": "0x5593549ead3b3bd6e4b049ed607ec0f422208298", "contractType": 0, // ERC-20 token transfer == 0 "amount": "10", "tokenAddress":"0x03cee0939F57855EB95437f4a0EFA7B1AfBFA4c6", // The ContractAddress of the ERC-20 token "fromPrivateKey": "####" // Your "Master GP Address" PrivateKey "fee": { "gasLimit": "68474", "gasPrice": "50" //Units in Gwei! } }
- Estimate Fees: Follow Tatum's guide on fee estimation to calculate appropriate values for
Updated 2 days ago