Skip to the article
Blockheight

Crypto markets, protocols, policy

Why DeFi Token Approvals Add a Transaction and Gas Fee

An ERC-20 approval is a separate contract call with its own gas fee; allowance size controls token access, while network demand sets the fee paid.

The Blockheight Editors··3 min read

Why DeFi Token Approvals Add a Transaction and Gas Fee

An ERC-20 token approval adds a separate on-chain transaction and gas fee before a DeFi app can spend tokens from a wallet. The fee pays for the network to process the approval; it is separate from the later swap, deposit or other action.

The ERC-20 standard lets a token holder set an allowance: the maximum amount a named spender contract may withdraw with transferFrom. That spender is usually an app contract, such as a swap router, rather than the app’s website.

Approval is a permission, not a token transfer, and the allowance can remain after the DeFi action is complete. For a closer look at how integrators handle this step, see zerofi. The transaction still has to be included on-chain, so the wallet needs the network’s gas token to pay for it.

Why does approval take a separate transaction?

The token contract records the permission before another contract can use it. The ERC-20 standard separates approve, which sets the allowance, from transferFrom, which lets the approved spender move tokens within that limit.

That separation gives apps a reusable way to request token access, but it can add a confirmation and fee to a first-time interaction. If the allowance is already sufficient for the action, the app may be able to proceed without asking for another approval; the wallet or app can show whether a new approval is needed.

Some tokens and apps support signed approvals, such as the permit extension described in EIP-2612. A signature can authorize an allowance without the holder submitting a standalone approval transaction, but the app must support that method and a transaction still needs to submit the signed permission.

What determines the approval gas fee?

The approval call uses gas because it changes token contract state and emits an approval event under the ERC-20 standard. The final fee depends on the gas used and the network’s fee conditions when the transaction is included, so there is no fixed approval price across chains or moments.

The allowance amount does not directly set the gas price. It changes how much the spender is permitted to use: a limited allowance can restrict exposure to that amount, while a very large or unlimited allowance can avoid repeat approvals but leaves broader permission in place.

  • Check the spender: confirm the contract address matches the action you intend to take.
  • Check the amount: approve only what you expect to use when the app allows it.
  • Check existing permission: an allowance may persist after a swap or deposit.
  • Check the network: the wallet must have enough of that chain’s gas token for the transaction.

Should you approve a limited amount?

For most readers, a limited allowance is the clearer default because it caps what the spender can pull under that permission. A larger allowance can save the cost and delay of future approvals, but convenience comes with a longer-lived, broader authorization.

The ERC-20 standard says a later approve call replaces the existing allowance with the new value; it also advises interfaces to set an allowance to zero before changing it, to reduce a known race condition. Token behavior and app support can differ, so a wallet’s approval screen should be read as a permission request, not as a routine “continue” prompt.

After approval confirms, the app can submit the DeFi action if the allowance is sufficient. The next step is to review that transaction separately; the exact fee, any support for signed approvals, and whether an allowance remains afterward depend on the network, token and app.

Related stories