Understanding Gas Fees: How to Avoid Overpaying on Ethereum
What Are Gas Fees? (The Simple Explanation)
Gas fees are the cost of executing transactions on the Ethereum blockchain.
Think of it Like This:
Ethereum is a highway. Every transaction is a car trying to use that highway.
| Traditional Highway | Ethereum Network |
|---|---|
| Cars need gas to drive | Transactions need “gas” to execute |
| Toll booths charge fees | Validators charge gas fees |
| Rush hour = higher tolls | Network congestion = higher gas |
| You can wait for traffic to clear | You can wait for gas to drop |
| Express lane costs more | “Fast” gas costs more |
What Gas Fees Pay For:
Gas fees compensate validators (the computers that process and verify transactions) for:
- Computational power: Running the transaction code
- Storage: Recording the transaction permanently on blockchain
- Security: Preventing spam attacks (if transactions were free, network would be overwhelmed)
The Key Variables:
Gas Fee Formula:
Total Gas Fee = Gas Used × Gas Price
- Gas Used: Complexity of transaction (fixed by transaction type)
- Gas Price: How much you pay per unit of gas (you control this)
Example:
Simple ETH transfer:
- Gas Used: 21,000 units
- Gas Price: 30 gwei
- Total Fee: 21,000 × 30 = 630,000 gwei = 0.00063 ETH
- At $2,500/ETH: $1.58
Uniswap swap:
- Gas Used: 150,000 units
- Gas Price: 30 gwei
- Total Fee: 150,000 × 30 = 4,500,000 gwei = 0.0045 ETH
- At $2,500/ETH: $11.25
Key insight: You can’t control gas used (that’s determined by what you’re doing), but you CAN control gas price (how much you pay per unit).
Why Gas Fees Fluctuate So Much
Gas fees can range from $1 to $200+ for the same transaction. Why?
Factor 1: Network Congestion
Ethereum processes ~15-30 transactions per second (TPS). That’s it.
When 100 people want their transaction processed right now, they compete by offering higher gas prices.
What Causes Congestion:
| Event Type | Gas Impact | Duration |
|---|---|---|
| NFT Drops | +300-500% | 30-60 minutes |
| Major Token Launches | +200-400% | 1-3 hours |
| Market Volatility | +100-200% | Several hours |
| DeFi Protocol Exploit | +400-1000% | 1-2 hours (panic exits) |
| US Business Hours | +50-100% | 9am-5pm EST daily |
Real example: Yuga Labs Otherside NFT mint (April 2022) caused gas fees to spike to 8,000 gwei. People paid $5,000+ per transaction. Network was unusable for 3 hours.
Factor 2: Time of Day
Ethereum is global, but usage patterns aren’t uniform.
Average Gas by Time (US Eastern Time):
| Time (EST) | Avg Gas (gwei) | Activity Level |
|---|---|---|
| 12am – 4am | 15-25 | Low (Best time) |
| 4am – 8am | 20-35 | Medium (Europe waking) |
| 8am – 12pm | 35-60 | High (US + Europe) |
| 12pm – 5pm | 45-80 | Peak (Avoid) |
| 5pm – 9pm | 30-50 | High (US evening) |
| 9pm – 12am | 25-40 | Medium |
My rule: Non-urgent transactions happen between midnight and 4am EST. Gas is typically 50-70% cheaper.
Factor 3: Day of Week
Certain days consistently have higher gas:
- Friday/Saturday: NFT drop days → higher gas
- Monday morning: Weekend trades execute → spike
- Wednesday/Thursday 2am-6am: Lowest gas of the week
Factor 4: Market Conditions
Bull market = higher gas: More trading = more transactions = higher competition
Bear market = lower gas: Less trading = fewer transactions = less competition
Historical Gas Averages:
- Bull market peak (Nov 2021): 150-300 gwei average
- Bear market bottom (Nov 2022): 10-30 gwei average
- Current (Dec 2025): 20-50 gwei average
Understanding Gas Price Components (Post-EIP-1559)
In August 2021, Ethereum changed how gas works with EIP-1559.
![]()
Before EIP-1559 (Simple but Unpredictable):
You set one number: Gas Price
- Higher gas price = faster confirmation
- Lower gas price = slower (or never confirmed)
After EIP-1559 (Complex but Better):
Gas now has TWO components:
1. Base Fee (Dynamic, Burns ETH)
- Set automatically by the network based on congestion
- Goes up when blocks are full (>50% capacity)
- Goes down when blocks are empty (<50% capacity)
- This ETH is BURNED (removed from supply forever)
- You can’t avoid paying this
2. Priority Fee (Tip to Validators)
- You set this amount
- Goes directly to validators as a tip
- Higher tip = faster processing
- Can be set to 0, but transaction might take hours
New Gas Formula:
Total Gas Fee = (Base Fee + Priority Fee) × Gas Used
Example:
Transaction details:
– Base Fee: 25 gwei (network-set, you can’t change)
– Priority Fee: 2 gwei (your tip to validators)
– Gas Used: 100,000 units
Calculation: Total = (25 + 2) × 100,000 = 2,700,000 gwei = 0.0027 ETH
At $2,500/ETH = $6.75 total fee
What Gets Burned vs Paid to Validators:
| Component | Amount | Destination |
|---|---|---|
| Base Fee | 25 gwei × 100,000 = 0.0025 ETH | 🔥 Burned (deflationary) |
| Priority Fee | 2 gwei × 100,000 = 0.0002 ETH | 💰 Validators (their profit) |
| Your Total | 0.0027 ETH ($6.75) | — |
Why this matters: Since most gas gets burned, high network usage makes ETH deflationary (supply decreases). This is good for ETH holders but doesn’t help with your fees.
How Much Different Transactions Cost
Not all transactions use the same amount of gas.
Gas Usage by Transaction Type:
| Transaction Type | Gas Used | Cost at 30 gwei | Cost at 100 gwei |
|---|---|---|---|
| Simple ETH Transfer | 21,000 | $1.58 | $5.25 |
| ERC-20 Token Transfer | 65,000 | $4.88 | $16.25 |
| Uniswap Swap | 150,000 | $11.25 | $37.50 |
| Token Approval | 46,000 | $3.45 | $11.50 |
| Aave Deposit | 250,000 | $18.75 | $62.50 |
| Uniswap Add Liquidity | 300,000 | $22.50 | $75.00 |
| NFT Mint | 150,000-300,000 | $11-23 | $37-75 |
| Complex DeFi Strategy | 500,000+ | $37.50+ | $125+ |
(Assuming ETH = $2,500)
The Approval Tax:
First time using a token with a DeFi protocol? You need TWO transactions:
- Approve: Give protocol permission to spend your tokens (46,000 gas)
- Execute: Actually do the swap/deposit/etc (150,000+ gas)
Example cost:
First time swapping DAI → USDC on Uniswap:
- Approval: 46,000 gas × 30 gwei = $3.45
- Swap: 150,000 gas × 30 gwei = $11.25
- Total: $14.70
Second time (approval already done):
- Swap only: $11.25
This is why I batch DeFi operations – to minimize approval transactions.
8 Strategies to Minimize Gas Fees
Strategy 1: Trade During Off-Peak Hours
The single biggest gas saver.
My Schedule:
| Transaction Priority | When I Execute | Avg Savings |
|---|---|---|
| Urgent | Immediately, any price | 0% (pay what you must) |
| Important | Wait for sub-40 gwei | 30-40% |
| Routine | Midnight-4am EST, Wed/Thu | 60-70% |
Tools to monitor gas:
- Etherscan Gas Tracker: etherscan.io/gastracker
- ETH Gas Station: ethgasstation.info
- Blocknative: blocknative.com/gas-estimator
Set alerts: “Notify me when gas drops below 25 gwei”
Strategy 2: Use “Standard” Instead of “Fast”
Most wallets offer three gas speeds:
| Speed | Gas Price | Confirmation Time | When to Use |
|---|---|---|---|
| Slow | Base fee + 1 gwei tip | 10-30 minutes | No urgency |
| Standard | Base fee + 2 gwei tip | 2-5 minutes | Most transactions |
| Fast | Base fee + 5-10 gwei tip | 30-60 seconds | Time-sensitive |
Reality check: “Fast” costs 3-5x more but only saves 2-4 minutes. Unless you’re arbitraging or front-running, it’s waste of money.
I use “Standard” for 95% of transactions.
Strategy 3: Batch Transactions When Possible
Instead of 5 separate transactions, can you do them all at once?
Example – DeFi Portfolio Rebalancing:
Bad approach (separate transactions):
- Withdraw from Aave: $18
- Swap DAI → USDC: $11
- Swap USDC → ETH: $11
- Deposit to Curve: $22
- Stake LP tokens: $15
Total: $77 in gas
Better approach (use aggregator):
- Use 1inch or Paraswap (routes through multiple protocols)
- Combines steps 1-4 into one transaction – Gas: $35
- Stake LP tokens: $15
Total: $50 in gas (35% savings)
Tools that batch transactions:
- 1inch: DEX aggregator
- Paraswap: Multi-path routing
- Zapper: One-click DeFi positions
- Instadapp: DeFi actions bundling
Strategy 4: Use Layer 2 Solutions
Layer 2 networks process transactions off Ethereum mainnet, then batch-submit to mainnet.
Gas Cost Comparison:
| Network | Swap Cost | Transfer Cost | Tradeoff |
|---|---|---|---|
| Ethereum Mainnet | $5-50 | $1-10 | Most liquidity, most secure |
| Arbitrum | $0.10-1.00 | $0.05-0.20 | 95% cheaper, good liquidity |
| Optimism | $0.10-1.00 | $0.05-0.20 | 95% cheaper, Ethereum-compatible |
| Base | $0.01-0.50 | $0.01-0.10 | 99% cheaper, Coinbase-backed |
| Polygon | $0.01-0.10 | $0.001-0.01 | 99% cheaper, separate chain |
The catch: Bridging from Ethereum → L2 costs gas ($10-30). Only worth it if you’re doing multiple transactions.
My approach:
- Small trades ($100-1,000): Use L2
- Large trades ($10,000+): Mainnet (better liquidity/security)
- Frequent trading: Move capital to L2, trade there for weeks
Learn more about DeFi and why L2s matter
Strategy 5: Set Custom Gas Limits
Advanced users can manually set gas to pay less.
In MetaMask:
- Start transaction
- Click “Edit” on gas fee
- Choose “Advanced”
- Set:
- Max base fee: Current base fee + 20%
- Priority fee: 1-2 gwei for non-urgent
- Save
Example:
Current base fee: 25 gwei
MetaMask “Fast” suggestion:
- Max base: 50 gwei
- Priority: 5 gwei
- Total: 55 gwei per gas unit
My custom settings:
- Max base: 30 gwei (current + 20% buffer)
- Priority: 1 gwei (minimal tip)
- Total: 31 gwei per gas unit
Savings: 44% cheaper
Risk: If base fee spikes above 30 gwei, transaction won’t go through until it drops
When to use: Non-urgent transactions where you can wait hours/days
Strategy 6: Cancel and Replace Stuck Transactions
Set gas too low? Transaction pending forever? You can replace it.
Method 1: Speed Up
- Click pending transaction in MetaMask
- Click “Speed Up”
- Increase gas price
- Confirm (pay difference)
Method 2: Cancel
- Click pending transaction
- Click “Cancel”
- Pay small gas fee to cancel
- Start new transaction with correct gas
Pro tip: Canceling is usually cheaper than speeding up. Cancel, wait for gas to drop, then resubmit.
Strategy 7: Approve Unlimited (Controversial but Saves Gas)
Remember how first-time token use requires approval?
You have two options:
| Option | Pros | Cons |
|---|---|---|
| Limited Approval (Approve exact amount) |
More secure Protocol can only spend what you approved |
Need new approval for each transaction Pay gas every time |
| Unlimited Approval (Approve infinite) |
Approve once, use forever Save gas on future transactions |
Protocol can spend ALL your tokens If protocol hacked, you lose everything |
My approach:
- Trusted protocols (Uniswap, Aave, Curve): Unlimited approval
- New/unknown protocols: Limited approval
- Large amounts (>$10K): Limited approval regardless
Always revoke old approvals using revoke.cash
See my scam prevention guide for more on approval risks
Strategy 8: Consider if Transaction is Worth It
The $50 gas reality check:
If gas is $50 and you’re swapping $200:
- You need 25% returns just to break even
- That’s insane
My Minimum Transaction Sizes by Gas:
| Gas Cost | Minimum Transaction | Why |
|---|---|---|
| $5 or less | $100+ | 5% fee acceptable |
| $10-20 | $500+ | 2-4% fee acceptable |
| $20-50 | $2,000+ | 1-2.5% fee acceptable |
| $50-100 | $5,000+ | 1-2% fee acceptable |
| $100+ | Don’t trade, wait | Gas too high |
Alternative: If gas is too high, use centralized exchange instead. Coinbase charges 0.6% trading fee – often cheaper than Ethereum gas.
Gas Fees and Taxes (Often Overlooked)
Gas fees are tax-deductible as transaction costs.
How It Works:
When you sell/trade:
- You bought: 1 ETH at $2,000
- You sold: 1 ETH at $2,500
- Gas paid: $50
Capital gain calculation:
– Sale proceeds: $2,500
– Cost basis: $2,000
– Gas fee: $50
– Taxable gain: $450
(not $500)
The gas fee reduces your taxable gain.
Important Caveats:
| Scenario | Tax Treatment |
|---|---|
| Gas paid when buying | ✅ Adds to cost basis |
| Gas paid when selling | ✅ Reduces capital gains |
| Gas paid for failed transaction | ❌ NOT deductible (no exchange occurred) |
| Gas paid to move between your wallets | ❌ NOT deductible (not a sale) |
Why track gas fees:
If you made 200 transactions this year at $20 average gas:
- Total gas: $4,000
- Tax bracket: 24%
- Tax savings: $960
Use crypto tax software to automatically track all gas fees. Manual calculation is a nightmare.
Full guide: How crypto taxes actually work
Tools I Actually Use to Monitor Gas
Real-Time Gas Trackers:
| Tool | Features | Best For |
|---|---|---|
| Etherscan Gas Tracker etherscan.io/gastracker |
• Current gas prices • Historical charts • Gas price predictions |
Quick reference |
| Blocknative Gas Estimator blocknative.com/gas-estimator |
• Real-time estimates • Confidence intervals • Transaction simulation |
Accurate predictions |
| Ultrasound Money ultrasound.money |
• Gas trends • ETH burn rate • Supply metrics |
Long-term analysis |
| GasNow gasnow.org |
• Mobile-friendly • Simple interface • Multiple speeds |
Mobile checking |
Browser Extensions:
- Blocknative Extension: Shows current gas in browser toolbar
- ETH Gas.watch: Desktop notifications when gas drops
My Monitoring Routine:
- Morning (9am): Check Etherscan – note current gas level
- Plan transactions: If gas >50 gwei, wait
- Set alerts: Notify when gas <30 gwei
- Execute: Late night/early morning when alerts trigger
This simple routine saves me $100-200/month in gas fees.
Common Gas Fee Mistakes (And How to Avoid Them)
Mistake 1: Not Checking Gas Before Transaction
What happens: You start a swap, MetaMask shows $80 gas, you click confirm without thinking.
Solution:
- ALWAYS check current gas before starting transaction
- If gas is high, close the dApp
- Wait for gas to drop
- Try again later
Two minutes of patience can save $50.
Mistake 2: Using “Fast” for Non-Urgent Transactions
What happens: You’re moving funds between wallets (no rush) but use “Fast” gas out of habit.
Reality:
- Fast: Confirms in 30 seconds, costs $30
- Standard: Confirms in 3 minutes, costs $12
You paid $18 extra to save 2.5 minutes. That’s $432/hour. Are you a lawyer billing that rate? No? Use Standard.
Mistake 3: Small Transactions During High Gas
Real example from my mistakes:
Wanted to buy $200 of a token during NFT mint hype.
Gas was 250 gwei = $94 for the swap.
$200 trade + $94 gas = $294 total cost
I needed 47% returns just to break even.
The token never pumped. Lost money on both trade AND gas.
Lesson: If gas >20% of trade size, don’t trade. Wait or use exchange instead.
Mistake 4: Not Canceling Failed Transactions
What happens: Transaction fails but you still paid gas.
Why it happens:
- Slippage too tight (price moved, transaction reverted)
- Insufficient token balance
- Smart contract error
You still pay gas for failed transactions. The validators processed your transaction, even though it didn’t complete.
Prevention:
- Double-check balances before submitting
- Use realistic slippage settings (0.5-1% for stablecoins, 2-5% for volatile tokens)
- Test with small amounts first
Mistake 5: Forgetting About Approval Transactions
What happens: You budget $20 for a swap, but forgot you need approval first.
Expected cost:
- Swap: $20
Actual cost:
- Approval: $12
- Swap: $20
Total: $32
Solution: Always budget for approval on first use of a token.
The Future of Gas Fees
What’s Coming:
1. More Layer 2 Adoption
As L2s mature, mainnet usage will decrease for everyday transactions.
Expected timeline:
- 2025-2026: 40-50% of DeFi moves to L2
- 2027+: Mainnet primarily for large transactions and settlements
Result: Lower mainnet gas as demand shifts to L2.
2. EIP-4844 (Proto-Danksharding)
Already implemented in 2024, this made L2s even cheaper by reducing data costs.
Impact: L2 fees dropped 90% after implementation.
3. Danksharding (Future)
Full sharding will increase Ethereum capacity from 30 TPS to potentially 100,000 TPS.
Expected: 2026-2027
Impact: Gas fees could drop 95%+
4. Account Abstraction
Wallets will be able to batch multiple actions into one transaction automatically.
Example: Currently need 3 transactions to add liquidity. With account abstraction, it’s 1 transaction = 1 gas fee.
What Won’t Change:
- Gas will still spike during high-demand events
- Peak hours will still be more expensive
- Complex transactions will still cost more than simple ones
Bottom line: Gas will get cheaper, but strategic timing will still matter.
FAQ: Your Gas Questions Answered
Q: Why did my transaction fail but I still paid gas?
A: Validators still processed your transaction (used computational power) even though it reverted. The gas compensates them for that work.
Common causes:
- Insufficient balance
- Slippage exceeded
- Smart contract error
Q: Can I get a refund if I overpaid gas?
A: No. Gas is paid to validators immediately and cannot be refunded. This is why checking gas before confirming is critical.
Q: What’s the cheapest day/time to do transactions?
A: Wednesday or Thursday, 2am-6am EST. This is when US is sleeping, Europe hasn’t woken up, and Asia is at work (not trading).
Weekends are also decent, especially Sunday early morning.
Q: Is there a way to set a max gas price I’m willing to pay?
A: Yes, in MetaMask:
- Edit gas settings
- Choose “Advanced”
- Set “Max base fee”
- Transaction won’t execute if gas exceeds this
Downside: Transaction might never go through if gas stays above your limit.
Q: Do I pay gas on Layer 2 networks?
A: Yes, but it’s 95-99% cheaper. Arbitrum charges $0.10-1 for swaps vs $10-50 on mainnet.
You also pay gas to bridge from mainnet to L2 (~$10-30).
Q: Can I pay gas in tokens other than ETH?
A: On Ethereum mainnet, no. Gas MUST be paid in ETH.
Some L2s allow paying gas in USDC or other tokens, but it’s rare.
This is why you must always keep some ETH in your wallet, even if you’re only trading other tokens.
Q: What if I run out of ETH during a transaction?
A: Transaction will fail before executing. MetaMask checks your ETH balance before sending.
If you run out mid-transaction (impossible, but theoretically), the transaction would fail and you’d lose the gas paid up to that point.
Q: Do whales pay lower gas?
A: No, everyone pays the same gas per transaction. A $100 swap and a $10M swap cost the same gas.
However, whales can afford to pay higher gas during congestion, so they effectively get priority.
Your Gas Strategy
Gas fees are unavoidable on Ethereum. But you can control how much you pay.
My Personal Rules (Copy These):
- Check gas before every transaction (Etherscan bookmark)
- Use “Standard” speed for 95% of transactions
- Never trade small amounts during high gas (min transaction = 20x gas cost)
- Trade between midnight-4am EST when possible (50-70% savings)
- Batch operations using aggregators (1inch, Paraswap)
- Move to L2 for frequent trading (bridge cost = breakeven after 3-5 trades)
- Set gas alerts and wait for favorable conditions
- Track all gas for taxes (deductible, adds up to thousands)
Quick Reference Chart:
| Current Gas (gwei) | What I Do |
|---|---|
| 0-25 | 🟢 Excellent – do all planned transactions |
| 25-40 | 🟡 Good – proceed with important ones |
| 40-70 | 🟠 High – only urgent transactions |
| 70-100 | 🔴 Very High – avoid unless critical |
| 100+ | ⛔ Extreme – wait or use CEX/L2 |
The Math That Matters:
In my first year of DeFi (2020), I paid $3,200 in gas fees.
After implementing these strategies, I paid $860 in gas fees in 2024, despite doing MORE transactions.
Annual savings: $2,340
That’s $2,340 that stayed in my portfolio, compounding, instead of going to validators.
Over 10 years at 20% returns? That’s
Gas optimization isn’t about saving $5 here and there. It’s about keeping thousands of dollars in your portfolio long-term.
Start paying attention to gas. Your future self will thank you.
Important Disclaimers
Technical Disclaimer
Gas fees are dynamic and unpredictable. The strategies in this guide can reduce costs but cannot guarantee specific savings. Network conditions, market events, and protocol changes can affect gas prices unexpectedly.
You assume all risks when using Ethereum:
- Failed transactions still cost gas
- Gas estimates can be wrong
- No refunds for overpayment
- Layer 2 bridging carries smart contract risk
Affiliate Disclosure
This article contains affiliate links to cryptocurrency exchanges where you can purchase ETH for gas. We may earn a commission at no additional cost to you.
We only recommend exchanges we personally use.
Read our full disclosure policy
Tax Disclaimer
Tax treatment of gas fees varies by jurisdiction. The information provided is general guidance for US taxpayers and should not be considered tax advice.
Consult a licensed tax professional or CPA for your specific situation.

