Automation Billing and Costs
Cost of using Chainlink Automation
Chainlink Automation only requires an execution fee for transactions onchain. This fee includes the transaction cost, a node operator percentage fee (refer to the formula below), and a small fixed gas overhead accounting for gas between the network and the registry. The percentage fee compensates the Automation Network for monitoring and performing your upkeep. The Automation percentage fee varies by chain and is listed on our Supported Networks page.
Formula for Registry v2.1
FeeLINK = [tx.gasPriceNative WEI * (gasUsed + gasOverhead) * (1 + premium%)]/[LINK/NativeRate in WEI]
On Automation v2.2 and earlier, there is a flat per-transaction fee of 0.01 LINK in the following cases:
- For mainnet transactions on Optimism and Base, to account for L1 transaction costs, ensuring that node operators are fairly compensated
- For testnet transactions on all supported networks, in order to account for node infrastructure costs
There is no registration fee or other fees for any offchain computation.
Fee calculation example
An upkeep transaction was performed on Polygon mainnet. It used 110,051 gas at a gas price of 182,723,799,380 wei. The node operator percentage on Polygon was 70% at the time of this transaction, and this fee varies by network. The LINK/MATIC exchange rate for this transaction was 7,308,290,731,273,610,000 wei. The upkeep's LINK balance was reduced by a fee of 0.008077 LINK. The preceding information and calculation can be found in the table below:
Variable | Description | Value |
---|---|---|
tx.gasPriceNative WEI | Gas price of the transaction | 182, 723, 799,380 |
gasUsed | Gas used for performUpkeep calculated in solidity | 110,051 |
gasOverhead | Fixed gas amount used for transaction call from node to Registry | 80,000 |
premium% | Current premium on Polygon which can be found on the Supported Networks page | 70% |
LINK/NativeRate in WEI | Exchange rate fetched from Chainlink Oracle | 7,308,290,731,273,610,000 |
0.008077 = [182,723,799,380 * (110,051 + 80,000) * (1 + 70%)]/[7,308,290,731,273,610,000]
How funding works
Upkeeps have a LINK (ERC-677) balance. Every time an onchain transaction is performed for your upkeep, its LINK balance will be reduced by the LINK fee.
Your upkeep's balance must exceed the minimum balance. If this requirement is not met, the Automation Network will not perform onchain transactions. You can add funds using the Chainlink Automation App or by directly calling the addFunds()
function on the AutomationRegistry
contract. Anyone can call the addFunds()
function.
Withdrawing funds
To withdraw a LINK balance, you must cancel your upkeep first. Any upkeep that has not spent more than an aggregated amount of 0.1 LINK fees over the span of its lifetime is subject to a 0.1 LINK fee. This cancellation fee protects node operators from spammers who register jobs that never perform.
Example 1: Your upkeep has spent 4.8 LINK over its lifetime and has a balance of 5 LINK. When it is cancelled, I will receive 5 LINK. Example 2: Your upkeep has spent 0 LINK over its lifetime and has a balance of 5 LINK. When it is cancelled, I will receive 4.9 LINK.
No node competition
Individual Automation Nodes do not compete with one another, but rather work together to ensure all registered upkeeps are performed. This makes costs more predictable upfront, enabling you to estimate costs based on the expected gas consumption.
Minimum balance
The Chainlink Automation Network is designed to perform your upkeep even when gas prices spike. The minimum balance in LINK reflects the best estimate of the cost to perform your upkeep when gas prices spike. To ensure your upkeep is monitored and performed, ensure that your upkeep's balance is above this minimum balance.
The minimum balance is calculated using the current fast gas price, the gas limit you entered for your upkeep, the max gas multiplier, and the LINK/NativeRate in WEI for conversion to LINK. To find the latest value for the gasCeilingMultiplier
, see the Registry Configuration page.
Follow maintain a minimum balance to ensure that your upkeep is funded.
Price selection and gas bumping
Automation Nodes select the gas price dynamically based on the prices of transactions within the last several blocks. This optimizes the gas price based on current network conditions. Automation Nodes are configured to select a price based on a target percentile.
If the Automation Node does not see the performUpkeep
transaction get confirmed within the next few blocks, it automatically replaces the transaction and bumps the gas price. This process repeats until the transaction is confirmed.
ERC-677 LINK
For funding on mainnet, you will need ERC-677 LINK. Many token bridges give you ERC-20 LINK tokens. Use PegSwap to convert Chainlink tokens (LINK) to be ERC-677 compatible. Use faucets.chain.link to get testnet LINK.