← Back to all topics
Transaction Fees
Why fees vary wildly and how to avoid overpaying
The Confusion
"Why did my $10 transaction cost $5 in fees, but my friend sent $10,000 for only $2?"
Bitcoin fees are based on data size, not transaction value. A transaction sending $1 million takes the same space as one sending $1 — so they can have the same fee.
Block Space is Limited
🚌 Think: A Bus with Limited Seats
Every ~10 minutes, a bus (block) arrives that can fit ~4,000 passengers (transactions). If 10,000 people want to board, they bid for seats. Those offering the highest tips get on first.
Your "size" on the bus isn't how much money you're carrying — it's how much luggage (data) you have. More UTXOs = more luggage = need more space = higher fee.
Block size limit: ~4 MB of data every 10 minutes. That's roughly 2,000-4,000 transactions depending on complexity. When demand exceeds this, fees rise.
Fee Rate: Satoshis per Virtual Byte
Fees are measured in sat/vB (satoshis per virtual byte). A typical transaction is 140-250 vBytes.
How Miners Choose Transactions
Miners are profit-maximizing. They sort transactions by fee rate and fill the block from highest to lowest until it's full.
TX: 3a8f... (180 vB)
150 sat/vB ✓
TX: 7c2b... (220 vB)
120 sat/vB ✓
TX: 9e4d... (195 vB)
50 sat/vB ✓
TX: 1f8a... (250 vB)
35 sat/vB ✓
TX: 5b3c... (300 vB)
5 sat/vB ⏳ (waiting)
Key insight: It doesn't matter if your transaction is moving $1 or $1 billion. What matters is how much you're paying per byte of block space.
Why Transaction Size Varies
What makes a transaction bigger?
- More inputs (UTXOs): Each UTXO you spend adds ~68 bytes
- More outputs: Each recipient adds ~34 bytes
- Legacy addresses: Addresses starting with "1" are larger than SegWit (bc1)
- Multisig: Multiple signatures = more data
UTXO consolidation tip: If you have many small UTXOs, consider consolidating them into one when fees are low. Otherwise, spending them later will be expensive.
Fee Estimation Strategies
Check the mempool
The mempool is the "waiting room" for transactions. Tools like mempool.space show current fee rates and estimated confirmation times.
Example mempool: fee rates in sat/vB
Priority levels
- High priority (next block): Pay top rate — for urgent transactions
- Medium priority (1-3 blocks): Pay moderate rate — usually fine
- Low priority (economy): Pay minimum — might wait hours or days
RBF: Replace-By-Fee
If your transaction is stuck, you can "bump" it by broadcasting a new version with a higher fee. The original gets replaced. Most wallets support this.
When Fees Spike
- Bull markets: More people trading = more transactions
- NFT/inscription crazes: Ordinals/BRC-20 tokens fill block space
- Exchange hacks/drama: Everyone rushes to move coins
- Weekends: Often lower fees as business activity drops
Pro tip: If your transaction isn't urgent, wait for fees to drop. Early morning UTC on weekends is often cheapest.