Why crypto has fees

In traditional banking, many transfers feel "free." You can send money between your own accounts, pay a friend with Venmo, or make a bank transfer at no visible cost. But those systems are not actually free -- the bank absorbs the cost and recoups it elsewhere through interest margins, account fees, or by using your deposits.

Blockchains are different. There is no bank sitting in the middle. Instead, thousands of independent computers (validators or miners) process and verify every transaction. They need to be compensated for the electricity, hardware, and capital they commit. Fees are how that compensation works.

Beyond paying validators, fees serve a critical purpose: spam prevention. If transactions were free, anyone could flood the network with millions of meaningless transactions, grinding everything to a halt. Making each transaction cost something -- even a fraction of a cent -- keeps the network usable.

The catch is that crypto fees can be confusing. Unlike a bank that charges you one clear number, crypto transactions can involve multiple layers of fees at once. A single token swap might include gas fees, a trading fee, slippage, and price impact -- all at the same time. Understanding each one helps you avoid surprises.

Gas fees

Gas is the most fundamental fee in crypto. Every time you submit a transaction to a blockchain -- whether you are sending tokens, swapping on a decentralized exchange, depositing into a lending protocol, or minting an NFT -- you pay gas. The term comes from Ethereum, but virtually every blockchain has an equivalent concept.

What gas actually is

Gas measures the computational work required to execute your transaction. Simple operations (like sending ETH from one address to another) require less computation. Complex operations (like a multi-step DeFi interaction) require more. Each operation has a fixed cost in gas units:

  • A basic ETH transfer: 21,000 gas units
  • An ERC-20 token transfer (sending USDC): ~65,000 gas units
  • A token swap on Uniswap: 100,000 - 300,000 gas units
  • A complex DeFi interaction (multi-hop swap, vault deposit): 200,000 - 500,000+ gas units

Gas units times gas price

The total gas fee you pay is calculated as:

Gas fee = gas units used x price per gas unit

Example: 21,000 gas units x 20 gwei per unit = 420,000 gwei = 0.00042 ETH (about $0.84 at $2,000/ETH).

The number of gas units for a given operation is fixed -- a simple transfer always costs 21,000 units. What fluctuates is the gas price, measured in gwei (one billionth of an ETH). When the network is busy, gas prices rise because users bid against each other for limited block space.

How Ethereum gas works: EIP-1559

Since August 2021, Ethereum uses a two-part gas pricing system introduced by EIP-1559:

  • Base fee: A minimum price per gas unit set automatically by the network based on demand. This fee is burned -- permanently removed from circulation. You cannot pay less than the base fee.
  • Priority fee (tip): An optional extra payment that goes directly to the validator processing your transaction. A higher tip gets your transaction processed faster. During quiet periods, a tip of 1-2 gwei is enough. During congestion, you may need to tip more.

Your wallet handles this calculation for you, but understanding the mechanics helps you make better decisions about when and how to transact.

Why gas spikes during congestion

Ethereum produces a new block roughly every 12 seconds, and each block has a limited capacity. When more people want to transact than will fit in the next block, a bidding war begins. Popular NFT mints, sudden market crashes, viral token launches -- any event that triggers a rush of transactions can send gas prices soaring from 10 gwei to 100+ gwei in minutes.

Typical gas costs by network

NetworkTypical cost per transactionNotes
Ethereum mainnet$1 - $50+Highly variable; complex DeFi can exceed $50
Arbitrum$0.01 - $0.10Ethereum Layer 2 (optimistic rollup)
Base$0.01 - $0.10Ethereum Layer 2 (optimistic rollup)
Optimism$0.01 - $0.50Ethereum Layer 2 (optimistic rollup)
Polygon$0.01 - $0.10Sidechain / Layer 2
Solana<$0.01Typically fractions of a cent
BNB Chain$0.05 - $0.30Layer 1
Bitcoin$0.50 - $30+Varies with mempool congestion

You pay gas even if a transaction fails

This catches many newcomers off guard. If your transaction fails -- because of tight slippage settings, insufficient gas limit, or a smart contract error -- you still pay for the gas consumed up to the point of failure. The validators did the computational work; they get paid regardless of the outcome. Always double-check your transaction details before confirming to avoid wasting gas on failed attempts.

Trading fees on decentralized exchanges (DEXs)

When you swap tokens on a decentralized exchange like Uniswap, Curve, or Raydium, you pay a swap fee (also called a trading fee or liquidity provider fee). This is separate from and in addition to gas.

Fee tiers

Most DEXs offer multiple fee tiers for their liquidity pools. Uniswap v3, for example, has four:

  • 0.01% -- for extremely stable pairs like USDC/USDT where prices barely move
  • 0.05% -- for stable pairs and highly liquid tokens like ETH/USDC
  • 0.30% -- the standard tier for most token pairs
  • 1.00% -- for exotic or volatile token pairs with less liquidity

On a $1,000 swap at the 0.30% tier, you would pay $3 in trading fees. At the 0.05% tier, you would pay $0.50. The fee tier you pay depends on which liquidity pool your swap routes through -- your DEX interface usually selects the pool with the best overall price automatically.

Who earns these fees

Trading fees on DEXs go to liquidity providers -- the people who deposited tokens into the pool you are trading against. This is their incentive for locking up their capital and taking on risks like impermanent loss. Some protocols also take a small cut of the fee for the protocol treasury.

Gas on top of trading fees

When you swap on a DEX, you pay both the trading fee and the gas fee. On Ethereum mainnet, this means a $1,000 swap might cost you $3 in trading fees (0.30%) plus $10-$30 in gas -- making the total cost $13-$33. On a Layer 2 like Arbitrum, the same swap might cost $3 in trading fees plus $0.05 in gas, for a total of about $3.05.

Slippage and price impact

Slippage is one of the least understood costs in crypto, partly because it is not a "fee" anyone charges you. It is a consequence of how decentralized markets work.

What slippage is

Slippage is the difference between the price you see when you initiate a trade and the price you actually receive when the trade executes. Between the moment you click "swap" and the moment your transaction is confirmed on-chain, other transactions may have changed the pool's price. If the price moved against you, you get fewer tokens than expected.

For example: you expect to receive 1,000 USDC for 1 ETH. By the time your transaction executes, you receive 997 USDC. That $3 difference is slippage.

Price impact on large trades

Price impact is related but different from slippage. While slippage comes from external market movements, price impact is caused by your own trade. When you swap a large amount relative to the size of the liquidity pool, your trade itself moves the price against you. The larger the trade relative to available liquidity, the worse the price impact.

On a deep, liquid pool (like ETH/USDC on Uniswap with hundreds of millions in liquidity), a $10,000 trade might have negligible price impact. On a small pool with $100,000 in liquidity, the same trade could move the price several percent against you.

Slippage tolerance settings

DEX interfaces let you set a slippage tolerance -- the maximum amount of slippage you are willing to accept. Common settings are 0.1%, 0.5%, or 1%. If the actual price at execution differs from the quoted price by more than your tolerance, the transaction automatically reverts (though you still pay gas for the failed attempt).

Setting slippage too low risks frequent transaction failures. Setting it too high means you might accept an unfavorable price. A tolerance of 0.5% works well for most trades on liquid pairs.

MEV and sandwich attacks

MEV (Maximal Extractable Value) is a hidden cost that many users never realize they are paying. Specialized bots monitor pending transactions and can manipulate the order in which transactions are processed to extract profit at your expense.

The most common form is a sandwich attack: a bot sees your pending swap, places a buy order just before yours (pushing the price up), then places a sell order just after yours (profiting from the price increase your trade caused). You end up with a worse price, and the bot pockets the difference. Using private transaction relays or MEV-protection features in your wallet can help mitigate this.

Spread

The bid-ask spread is the difference between the highest price a buyer is willing to pay (bid) and the lowest price a seller is willing to accept (ask). In traditional markets, this concept is straightforward. In crypto, it works similarly but manifests differently depending on the venue.

On centralized exchanges with order books, the spread is visible: you can see the bid and ask prices listed. On DEXs using automated market makers (AMMs), the "spread" is embedded in the pricing curve -- you implicitly pay it through the difference between the mid-market price and the price the AMM quotes you.

Spread is wider on illiquid tokens. A major token like ETH or BTC might have a spread of 0.01% or less. A small-cap token with thin liquidity might have a spread of 1-5% or more. This means buying and immediately selling would result in a loss equal to the spread -- even before accounting for any other fees.

Spread and slippage are related but distinct. Spread exists even in a static market with no price movement. Slippage occurs when the price moves between your order submission and execution.

Protocol fees

DeFi protocols -- lending platforms, yield vaults, liquidity protocols -- often charge their own fees on top of gas and trading costs. These vary widely by protocol and can be structured in several ways:

Deposit and withdrawal fees

Some protocols charge a small fee when you deposit or withdraw assets. This is common in yield vaults and aggregators. The fee typically ranges from 0% to 0.5% and is meant to prevent users from rapidly entering and exiting positions (which can disrupt the strategy for other depositors).

Performance fees

Yield vaults and strategy protocols often take a percentage of the profits they generate for you. For example, Yearn Finance historically charges a 20% performance fee -- if the vault earns 10% yield, Yearn takes 2% (20% of 10%) and you keep 8%. This fee only applies to gains, not your principal.

Management fees

Some protocols charge an annual management fee on your deposited assets, regardless of performance. This is similar to how a traditional mutual fund charges an expense ratio. Management fees in DeFi typically range from 0% to 2% per year.

Entry and exit fees

Certain structured products or protocol vaults charge a one-time fee when you enter or exit a position. These fees discourage short-term speculation and compensate existing depositors for the disruption that large deposits and withdrawals can cause.

Bridge fees

Moving tokens from one blockchain to another -- say, from Ethereum to Arbitrum or from Ethereum to Solana -- requires using a bridge. Bridges charge fees for this service, typically structured as:

  • A percentage of the transfer amount: Usually 0.04% to 0.3%, though some bridges charge more for exotic routes or smaller amounts.
  • Gas fees on both chains: You pay gas on the source chain (to lock or burn your tokens) and on the destination chain (to mint or release them). If you are bridging from Ethereum mainnet, the source-chain gas alone can be significant.

For large transfers, the percentage fee matters most. For small transfers, gas costs can dwarf the bridge fee itself. A $50 bridge transfer from Ethereum mainnet might cost $10-$20 in gas fees alone, making it impractical. The same transfer between two Layer 2 networks might cost under $0.50 total.

For more on how bridges work and their trade-offs, see our guide on crypto bridges.

Centralized exchange (CEX) fees

If you use a centralized exchange like Coinbase, Binance, or Kraken, you will encounter a different fee structure than on-chain transactions:

Maker and taker fees

Centralized exchanges charge trading fees based on whether you are adding liquidity to the order book (maker) or removing it (taker). A maker places a limit order that does not execute immediately, adding depth to the order book. A taker places a market order that fills immediately against existing orders.

Typical fees range from 0.1% to 0.5% per trade. Most exchanges offer volume-based discounts -- the more you trade, the lower your per-trade fee. Maker fees are usually lower than taker fees as an incentive to add liquidity.

Withdrawal fees

When you withdraw crypto from a centralized exchange to your own wallet, the exchange charges a fixed withdrawal fee per token. This covers the blockchain gas fee and often includes a markup. For example, withdrawing ETH might cost 0.005 ETH regardless of the amount. Withdrawing Bitcoin might cost 0.0005 BTC. These fees vary significantly between exchanges.

Deposit fees

Most exchanges do not charge fees for depositing crypto. Fiat deposits (bank transfers, credit cards) may have their own fee structure, but crypto deposits are generally free.

See the full picture. CleanSky shows every position, every network, every cost -- so you always know what your crypto is really worth.

Try CleanSky free

How to pay less in fees

Fees are unavoidable in crypto, but you can significantly reduce what you pay with a few practical strategies:

Use Layer 2 networks

This is the single most impactful change you can make. Moving your activity to Arbitrum, Base, or Optimism can reduce gas costs by 10x to 100x compared to Ethereum mainnet. Most major DeFi protocols are available on L2s.

Time your transactions

Gas prices fluctuate throughout the day and week. Weekends and off-peak hours (early morning US time) tend to have lower fees. If your transaction is not urgent, waiting a few hours can save you money. Gas tracker tools show real-time and historical prices.

Batch your operations

Some protocols and wallets let you combine multiple actions into a single transaction. Claiming rewards and reinvesting in one step, for example, saves you the gas of two separate transactions.

Compare fee tiers

When swapping tokens, check if your trade can route through a lower fee tier. A 0.05% pool may offer a better total price than a 0.30% pool for well-traded pairs like ETH/USDC. DEX aggregators (like 1inch or Paraswap) do this comparison automatically.

Use limit orders

Limit orders let you set the exact price at which you want to trade. They execute only when the price reaches your target, eliminating slippage. Many DEX aggregators and some exchanges support on-chain limit orders.

Check total cost, not just the quoted fee

A swap with a 0.05% fee but $20 in gas and 1% slippage is more expensive than a swap with a 0.30% fee, $0.05 in gas, and 0.1% slippage. Always look at the total amount you receive after all costs, not just one line item.

How CleanSky helps

When your assets are spread across multiple networks and protocols, understanding the true cost of your positions gets complicated. A token on Ethereum mainnet costs more to move than the same token on Arbitrum. A position in a vault with a 20% performance fee eats into your returns differently than a position with no protocol fees. A bridge transfer might cost more than the yield you are chasing.

CleanSky shows you where your money is across all networks, giving you a clear picture of every position and its context. By seeing your entire portfolio in one place, you can make better decisions about where to allocate, when to move, and whether the fees involved are worth it. No more guessing what your crypto is actually worth after all costs are accounted for.

Key takeaways

  • Crypto transactions involve multiple fee layers: gas, trading fees, slippage, spread, protocol fees, and bridge fees can all apply to a single operation.
  • Gas fees pay validators for processing your transaction and vary enormously by network -- from fractions of a cent on Solana to $50+ on Ethereum mainnet during congestion.
  • DEX trading fees (0.01% to 1%) go to liquidity providers and are charged on top of gas.
  • Slippage and price impact are hidden costs that grow with trade size and low liquidity.
  • Protocol fees (performance, management, entry/exit) can significantly affect your net returns over time.
  • Using Layer 2 networks, timing transactions, batching operations, and comparing total costs are the most effective ways to reduce fees.
  • Always check the total amount you receive after all costs -- not just the headline fee.

For deeper dives into related topics, see our guides on gas fees, Uniswap, liquidity pools, impermanent loss, and crypto bridges.

Know what your crypto is really worth -- after every fee, on every network.

Try CleanSky Free →