Under the hood

Ch 12 · Fees & the Waiting Room

Under the hood progress: chapter 3 of 8
You chose: Under the hood

Fees & the Waiting Room

Hook

Your send left the wallet, but it has not settled yet. It is sitting in a waiting room with everyone else’s unconfirmed transactions—competing for limited space in the next block.

One idea

The mempool is Bitcoin’s waiting room: an auction for limited block space, where you bid a fee-rate in sat/vB (sats per virtual byte)—so the fee is size × rate, not a percentage of the amount you send.

Plain walkthrough

Block space is scarce. Roughly every ten minutes, a new block can carry only so much transaction data. More people wanting to move bitcoin than space available means some transactions wait. The pool of unconfirmed transactions that nodes have heard about is the mempool (memory pool)—the waiting room.

The auction, without drama. Miners who build the next block prefer transactions that pay more per unit of data. Your wallet does not usually bid a flat “$2 fee”; it picks a fee-rate: how many sats (the smallest bitcoin units) you offer for each virtual byte (vB) of your transaction’s size. Multiply: fee ≈ size (vB) × rate (sat/vB). A large transaction at a modest rate can cost more than a small one at a high rate. A tiny payment can still pay a noticeable fee if the data is chunky or the room is crowded—that is normal, not a glitch.

Why not “percent of amount”? Two sends of the same data size compete the same way whether they move 10,000 sats or 10 million. The network prices scarce block space, not the economic size of the transfer. Bank “percentage fees” train a wrong habit; drop it here.

What your wallet is doing. When it suggests Low / Normal / High (or a sat/vB number), it is estimating how busy the mempool looks and how soon you might get into a block. Higher rate → usually sooner inclusion when demand is high. Lower rate → you may wait through several blocks, or longer if the room fills with higher bids. Confirmation still means “included in a block” (Chapter 9); the fee-rate only affects when, not whether the rules allow your transaction.

Optional muscle, not required. Viz’s Fee Pressure Dial (/playground/fee-pressure-dial) — “See why fees spike” — and the fee-rate muscle inside Build the Next Block let you feel “busy room → higher sat/vB” without risking coins. This chapter stands alone; use the playgrounds when you want a hands-on pass. Pure sims teach intuition; they are not live mempool oracles on day one.

A short picture after the mechanism. Think of a limited elevator: packages of different sizes, each offering a tip per cubic inch. The operator fills the car with the best tips per space—not the heaviest packages by dollar value inside. Your “tip per cubic inch” is sat/vB; the elevator car is the next block.

If you are stuck pending. Do not panic-broadcast a second copy. Check the transaction id, wait, and use only fee-bump features your own wallet documents (when available). Nobody legitimate needs your seed to “speed it up” (Chapter 18).

Watch-outs

  • Fee ≠ percent of amount — Size and fee-rate decide cost; amount moved does not.
  • Low fee is not “broken” — Often it means “patient.” Busy periods stretch waits.
  • Wallet estimates are guesses — Conditions change; a “next block” hint is not a promise.
  • Playground ≠ mainnet — Dial and block-builder sims do not move real bitcoin or quote live fees you must use.
  • Replace-by-fee / bumps — Advanced wallet tools exist; learn them from your wallet’s docs after you understand the auction, not from strangers in chat.

You now can…

  • Picture the mempool as an auction for limited block space.
  • Compute the intuition fee ≈ size × sat/vB, not a cut of the payment.
  • Read a pending send as “waiting for inclusion,” not “lost.”

What next?

Ebook: continue to Ch 13

Back one stepReturn to map