Gas fees are the charge you pay to get a transaction included on a blockchain, and on Ethereum they are one of the first things that confuse a new user. You send someone 50 dollars of ether and the network asks for a fee. Sometimes that fee is a few cents. Sometimes, on a busy afternoon, it is 40 dollars for the exact same transfer. Nothing about your transaction changed. What changed was how many other people wanted block space at that moment, and gas fees are the price of that space.
This guide explains what a unit of gas measures, why the same action can cost wildly different gas fees, and how to read the number in your wallet before you hit confirm.
Gas measures work, not money
Every operation on Ethereum takes computational effort. Adding two numbers is cheap. Storing data forever is expensive. Gas is the unit that measures that effort, and it is deliberately separate from price. One unit of gas always represents the same amount of work no matter what ether is trading at.
The cost you actually pay has two parts multiplied together: how much gas your transaction consumes, and the price you pay per unit. A plain transfer of ether uses exactly 21,000 gas. That number is fixed in the protocol. It does not matter whether you are sending one dollar or one million. The work of moving ether from one account to another is the same, so the gas is the same.
Contract interactions are where the number climbs. Swapping a token on a decentralized exchange, approving a contract to spend your funds, minting a collectible, each of these runs code, and code costs gas. A token approval or a swap can use several times the gas of a simple transfer because the network is doing several times the work.
| Action | Typical gas used | Why |
|---|---|---|
| Send ETH | 21,000 (fixed) | Moving a balance, no code |
| Send an ERC-20 token | around 45,000 to 65,000 | Updates a contract ledger |
| Swap on a DEX | around 120,000 to 200,000 | Routes through pool contracts |
| Mint an NFT | varies widely by contract | Depends on what the code writes |
Treat the middle column as typical rather than exact. The transfer of ether is the one hard number. Everything that touches a smart contract depends on what that contract is written to do, so two swaps on two different exchanges will not cost the same gas.
The two fees inside every transaction
Since a 2021 upgrade called London, Ethereum gas fees split into two pieces. The base fee is set by the protocol, not by you. It rises and falls with demand, and here is the part that surprises people: it is burned. The ether spent on the base fee is destroyed, removed from supply, paid to no one. Since London went live in August 2021, more than 4.6 million ether has been burned this way.
The second piece is the priority fee, often called the tip. This one does go to someone, the validator who includes your transaction in a block. When the network is quiet, a small tip is enough. When thousands of people are competing for the next block, raising your tip is how you jump the line.
Your total fee is simple once you see it laid out:
gas used x (base fee + priority fee)
Say you send ether, so gas used is 21,000. The base fee sits at 10 gwei and you add a 2 gwei tip. That is 21,000 multiplied by 12 gwei, which comes to 252,000 gwei, or 0.000252 ether. At most ether prices that is a fraction of a dollar. Push the base fee to 100 gwei during a busy mint and the same transfer costs ten times as much, without a single thing changing on your end.
Reading gwei without a calculator
Gwei is just a convenient way to write a very small amount of ether. One gwei is one billionth of an ether. Wallets quote gas prices in gwei because writing 0.000000012 ether on every screen would be unreadable.
The practical habit is to watch the base fee in gwei before confirming anything. Single digit gwei means the network is calm and your gas fees will be small. Fifty or a hundred gwei means demand has spiked, usually because a popular launch or a market move has everyone transacting at once. There is no fixed schedule for this. It tracks whatever is happening on-chain that hour, and it can settle back down within minutes.
The base fee also cannot lurch without limit. The protocol lets it move by at most 12.5 percent from one block to the next. A block sits at a 15 million gas target with a hard ceiling of 30 million. When blocks run above the target, the base fee ticks up the next block. When they run below, it eases off. That cap is why fees rise in a climb rather than a single vertical jump, and it is what makes the next block's fee roughly predictable instead of a blind auction.
Why a Layer 2 transaction costs cents
If you have used an app on Arbitrum, Base, or Optimism, you have paid gas fees measured in cents rather than dollars. Those networks are rollups. They process transactions on their own faster lane, then post a compressed record back to Ethereum for security. You are still ultimately paying for Ethereum block space, just a tiny sliced share of it.
A 2024 upgrade named Dencun made that share far cheaper. It introduced a separate data lane, nicknamed blobs, built specifically for rollups to dump their compressed data without competing with ordinary transactions for the same expensive space. Rollup gas fees dropped sharply after it shipped. This is the current answer to the old complaint that Ethereum is too costly to use: most everyday activity has moved to these DeFi layers on top, where the same swap that once cost 30 dollars now costs less than a coffee.
Other chains handle fees differently again. Networks that prioritize raw speed, like Solana, price transactions through a compute budget rather than a burned base fee, which is part of why their costs behave nothing like Ethereum's. A recent change to Solana's slot time and block budget shows how a chain can tune throughput and cost together at the protocol level. The lesson for a newcomer is that gas is an Ethereum word for a universal idea. Every chain charges you something for the work, but the mechanism and the size of the bill vary a lot.
FAQ on gas fees
Why did my transaction fail and still charge me?
Because the validators still did the work of trying. Gas pays for computation, not for success. If a swap runs out of gas partway or a contract rejects it, the effort already happened, so the fee is taken anyway. This is why wallets estimate a gas limit for you and why setting it too low can cause a failure that still costs money.
Can I just set my fee to zero?
You can set the priority fee to zero, but you cannot avoid the base fee, since the protocol requires it. A zero tip means validators have no reason to prioritize you, so your transaction may sit unconfirmed for a long time when the network is busy. During quiet periods a very small tip is often enough.
Do I pay gas in the token I am sending?
On Ethereum you pay in ether, even when the thing you are moving is a stablecoin or another token. That trips up people who hold a wallet full of tokens but no ether and then cannot move any of it. Keep a small ether balance in any crypto wallet you use for transactions, purely to cover fees.
Are gas fees the same across every wallet and app?
The network fee is set by the chain, so it is the same regardless of which wallet you use. What differs is how each app estimates and displays it, and whether a service adds its own charge on top. Reading the raw gwei figure, rather than a rounded dollar estimate, tells you what the network itself is asking.
Once the two-part fee makes sense, the volatility stops feeling random. A quiet Sunday and a frantic token launch are the same transaction at two different prices for the same block space, and knowing how to read the base fee tells you which one you are about to pay. That habit alone will save you money over a year of transacting. For the chain underneath all of this, start with what Ethereum is. If you interact with contracts often, learn how to revoke token approvals so old permissions are not quietly costing you later.