Understanding Gas Fees: How to Avoid Overpaying on Ethereum

Understanding Gas Fees: How to Avoid Overpaying on Ethereum

Understanding Gas Fees: How to Avoid Overpaying on Ethereum

Author’s Note from Thomas Wright

In June 2021, I paid $210 in gas fees to deposit $2,000 into a DeFi protocol.

That’s 10.5% of my capital gone before I earned a single penny.

The transaction required three separate approvals:

  • Approve token 1: $65 gas
  • Approve token 2: $58 gas
  • Add liquidity: $87 gas

Why were gas fees so high? I made three critical mistakes:

  1. Wrong time: Traded during peak US hours (11am EST)
  2. Wrong day: Friday, when NFT drops spike gas prices
  3. Impatience: Used “Fast” gas instead of waiting for network to calm down

If I’d waited until 3am on Tuesday and used “Standard” gas, the same transactions would’ve cost $18 total.

I lost $192 because I didn’t understand how gas fees work.

Since then, I’ve executed over 500 Ethereum transactions. My average gas fee is now 73% lower than my first year, not because gas got cheaper (it hasn’t), but because I learned the system.

Gas fees are the #1 wealth destroyer for DeFi users. A $100 swap with $50 gas means you need 50% returns just to break even.

This guide will teach you exactly how gas works, why it fluctuates so wildly, and the specific strategies I use to minimize fees.

Full disclosure: I actively use Ethereum daily and pay gas fees regularly. I am not affiliated with any gas optimization tools. This article contains affiliate links to exchanges – see our disclosure policy for details.

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:

  1. Gas Used: 21,000 units
  2. Gas Price: 30 gwei
  3. Total Fee: 21,000 × 30 = 630,000 gwei = 0.00063 ETH
  4. At $2,500/ETH: $1.58

Uniswap swap:

  1. Gas Used: 150,000 units
  2. Gas Price: 30 gwei
  3. Total Fee: 150,000 × 30 = 4,500,000 gwei = 0.0045 ETH
  4. 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.

Understanding Gas Price Components (Post-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:

  1. Approve: Give protocol permission to spend your tokens (46,000 gas)
  2. 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):

  1. Withdraw from Aave: $18
  2. Swap DAI → USDC: $11
  3. Swap USDC → ETH: $11
  4. Deposit to Curve: $22
  5. 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:

  1. Start transaction
  2. Click “Edit” on gas fee
  3. Choose “Advanced”
  4. Set:
    • Max base fee: Current base fee + 20%
    • Priority fee: 1-2 gwei for non-urgent
  5. 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

  1. Click pending transaction in MetaMask
  2. Click “Speed Up”
  3. Increase gas price
  4. Confirm (pay difference)

Method 2: Cancel

  1. Click pending transaction
  2. Click “Cancel”
  3. Pay small gas fee to cancel
  4. 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:

  1. Morning (9am): Check Etherscan – note current gas level
  2. Plan transactions: If gas >50 gwei, wait
  3. Set alerts: Notify when gas <30 gwei
  4. 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:

  1. ALWAYS check current gas before starting transaction
  2. If gas is high, close the dApp
  3. Wait for gas to drop
  4. 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:

  1. Double-check balances before submitting
  2. Use realistic slippage settings (0.5-1% for stablecoins, 2-5% for volatile tokens)
  3. 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:

  1. Edit gas settings
  2. Choose “Advanced”
  3. Set “Max base fee”
  4. 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):

  1. Check gas before every transaction (Etherscan bookmark)
  2. Use “Standard” speed for 95% of transactions
  3. Never trade small amounts during high gas (min transaction = 20x gas cost)
  4. Trade between midnight-4am EST when possible (50-70% savings)
  5. Batch operations using aggregators (1inch, Paraswap)
  6. Move to L2 for frequent trading (bridge cost = breakeven after 3-5 trades)
  7. Set gas alerts and wait for favorable conditions
  8. 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.

Leave a Comment

Your email address will not be published. Required fields are marked *