Day 5 — How transactions actually work (and why gas exists)
You click send. You enter an amount, an address, hit confirm, sign with your wallet. A few seconds later your screen says "pending," and a few minutes after that it says "complete." Cost was a few dollars in fees. The whole thing felt like Venmo with extra steps.
In the gap between "pending" and "complete," a small army of things happened. Understanding what happened is the difference between using crypto reflexively and using it well.
Here is what your wallet does, in order.
First, it constructs a transaction. A transaction is just a chunk of structured data that says: from address A, send X units of asset Y to address B, with a maximum fee of F. The transaction also includes a nonce, which is a number that increments each time you send a transaction. The nonce prevents replay attacks (where someone broadcasts the same transaction twice and tries to take your money twice).
Second, your wallet signs the transaction with your private key. This is what we covered yesterday: the cryptographic proof that you authorized this specific transaction. The signature is mathematically tied to both the transaction data and your private key, which means nobody can change the transaction after the fact without invalidating the signature.
Third, your wallet broadcasts the signed transaction to the network. The transaction shows up in a kind of public waiting area called the mempool (short for memory pool). The mempool is where transactions wait to be included in the next block. At any given moment there might be tens of thousands of transactions sitting in the mempool, each one offering a fee to be picked up.
Fourth, validators (or miners, depending on which chain) look at the mempool and choose which transactions to include in the next block. They are economically motivated. They get the fees from the transactions they include, so they generally pick the transactions that pay the highest fees. This is where gas comes in.
Gas is the fee you pay to have your transaction processed. It exists for one boring reason: the network has limited capacity, and demand for that capacity fluctuates wildly. If there are 100,000 transactions competing for a block that can hold 2,000, the network has to decide which 2,000 win. Gas is the auction mechanism. Pay more, get in faster. Pay less, wait longer or get dropped entirely.
This is why your gas fees can vary by orders of magnitude on the same chain. On a quiet Tuesday afternoon, sending ETH might cost you a few cents. During a popular NFT mint or a sudden market move, the same transaction might cost $50 or $500. The transaction itself didn't change. The auction got more competitive.
There are two parts to a typical gas fee on Ethereum (post-2021, after a major upgrade called EIP-1559). The first is a base fee that gets burned (destroyed, removed from supply). The second is a priority fee (or "tip") that goes to the validator who includes your transaction. The base fee adjusts up or down based on how full the previous block was. The priority fee is what you set to compete against other transactions. Your wallet usually estimates both for you automatically.
Once your transaction is included in a block, it has been confirmed once. On Bitcoin, the convention is to wait for six confirmations (about an hour) before considering a payment final. On Ethereum, finality is more nuanced (typically considered final after about 13 minutes, or ~64 blocks). The reason for these waiting periods is that in rare cases, a block can be temporarily superseded by another block, and a transaction included in the superseded block might briefly disappear before being re-included in the canonical chain. Waiting for additional confirmations eliminates this risk.
A few related concepts worth knowing.
A failed transaction. Sometimes you send a transaction and it gets included in a block but doesn't do what you wanted. Maybe the smart contract you were interacting with rejected the call. Maybe you didn't approve enough of one of the tokens. The transaction shows up on the blockchain as included, but with a "failed" status. Critically, you still pay gas on failed transactions. The validator did the work of trying to execute your transaction, regardless of whether it succeeded. This is one of the most counterintuitive parts of crypto for new users, and it's a real money-burner if you're not careful.
A stuck transaction. If you set your gas fee too low and the network is congested, your transaction can sit in the mempool indefinitely. It hasn't failed, it just hasn't been picked up. You can either wait (sometimes for hours), cancel and replace the transaction with a higher fee, or speed it up by submitting a new transaction at the same nonce with a higher fee.
Block time. The cadence at which new blocks get produced. Bitcoin's block time is roughly 10 minutes. Ethereum's is roughly 12 seconds. Solana's is about 400 milliseconds. Block time shapes the user experience: short block times feel like "instant" payments, longer block times feel like waiting for an email to arrive. The tradeoff is generally between speed (short blocks) and decentralization or security (long blocks give more time for the network to agree).
The reason I want you to understand this much: most of the frustrations people have with crypto (high fees, delayed confirmations, failed transactions, stuck sends) make complete sense once you understand the mempool and the auction. They are not bugs. They are how an open, permissionless network of strangers coordinates limited resources. The same dynamics show up in different forms on every chain, in every Layer 2, in every bridge. If you understand the basics of how a transaction moves from your screen to the blockchain, you'll be able to debug most of what trips up retail users.
Tomorrow we go meta. We've spent four days inside Bitcoin's mental model. Tomorrow we open the door to Ethereum and the idea that a blockchain can run not just a ledger of money, but a ledger of programs. Most of the rest of what you'll encounter in crypto traces back to that one shift.
Glossary
| Term | Definition |
|---|---|
| Transaction | A signed instruction broadcast to a blockchain network, specifying what should happen (transfer, contract interaction, etc.). |
| Nonce | A counter that increments with each transaction sent from an address, preventing replay attacks. |
| Mempool | The public waiting area where unconfirmed transactions sit before being included in a block. |
| Validator / Miner | The participant that adds new blocks to the chain. On proof-of-stake chains (Ethereum, Solana, etc.) they are called validators. On proof-of-work chains (Bitcoin) they are called miners. |
| Gas | The fee paid to process a transaction. Determined by an auction across all the transactions in the mempool. |
| Base fee | (Ethereum post-EIP-1559) The portion of the gas fee that is burned, dynamically adjusted based on network demand. |
| Priority fee / tip | (Ethereum post-EIP-1559) The portion of the gas fee that goes to the validator as an incentive to include your transaction. |
| Confirmation | The number of blocks added to the chain after your transaction's block. More confirmations = more certainty that the transaction is final. |
| Block time | The average time between new blocks being added to a chain. Roughly 10 min for Bitcoin, 12 sec for Ethereum, 0.4 sec for Solana. |
| Failed transaction | A transaction that was included in a block but did not execute successfully. Still costs gas. |
| EIP-1559 | An Ethereum upgrade activated in August 2021 that introduced the base fee + tip structure and made gas fees more predictable. |
Reality check
You send a transaction and it sits "pending" for 45 minutes. What are the possible reasons, and what are your options?
If your answer is only "wait longer," you're missing tools. The full answer involves understanding the mempool, recognizing low gas as a likely cause, and knowing that you can cancel or replace a pending transaction with a higher fee. If you can name at least two distinct causes and two distinct responses, you have the lesson.
Read deeper
1. What are block explorers? by The Block (revisited)
The tool that lets you see the mempool, your transaction, and the chain in real time.
Read on IMPCT (curated commentary) | Read original (theblock.co)
Deven's take. Now that you understand what a transaction is doing, go look at one. Pick a recent transaction you've sent or pick a random one on mempool.space or Etherscan, and walk through every field. The "from" and "to" addresses. The nonce. The gas price and gas limit. The status. The block number. Every concept from today's lesson is sitting there. Block explorers were the first thing I made myself use regularly when I started taking this seriously. They will reward the same habit from you.
2. EIP-1559: Ethereum's Gas Fee Overhaul (Ethereum.org)
The technical explanation of why Ethereum gas fees behave the way they do post-2021.
Read on IMPCT (curated commentary) | Read original (ethereum.org)
Deven's take. This one is denser than most of our recommended readings, and it's optional. Read it if you find yourself wanting to know exactly how the base fee adjusts (it goes up when the previous block was more than half full, down when less). The mechanism is elegant. Understanding it will give you a sharper sense of when gas is likely to spike. For most readers, the higher-level intuition we built today is enough.
3. Ethereum.org — Transactions
The plain-English deep dive on what a transaction is.
Read on IMPCT (curated commentary) | Read original (ethereum.org)
Deven's take. Ethereum.org is the official documentation for the Ethereum protocol, and the writing is unusually good. The transactions page is the canonical reference for everything we covered today. Use it when you want to fact-check yourself or go one level deeper on any specific concept. Bookmark the whole "Learn" section of ethereum.org. It is the single best free educational resource for the Ethereum side of the world.
4. Binance Academy — What is gas?
The simplest explanation of gas as a concept.
Read on IMPCT (curated commentary) | Read original (academy.binance.com)
Deven's take. Binance Academy is the most beginner-friendly of the major crypto educational resources. The writing is shorter and less technical than The Block or ethereum.org. Useful when you want to send something to a friend who is just starting out and doesn't want to read a 2,000-word piece. The trade-off is that the depth isn't there. For this course you want a mix: Binance Academy for the smoothest entry, The Block for the working analyst's view, ethereum.org for the technical truth.
5. Mempool.space
The Bitcoin mempool, live and visualized.
Deven's take. Not an article. A tool. Open it once and just watch it for a minute. You can see transactions arriving in real time, color-coded by fee rate. You can see the projected next block being built. You can see the current congestion. This is what your transaction is doing right now when it's "pending." Seeing it visualized makes the abstraction concrete in a way no amount of reading will.
Tomorrow
We meet Ethereum and the most consequential shift in blockchain history: from a ledger of money to a ledger of programs. If Bitcoin is digital gold, Ethereum is closer to a global computer. Most of the rest of crypto (DeFi, NFTs, stablecoins beyond Bitcoin's chain, tokenized real-world assets, the entire smart-contract economy) is built on the idea you'll meet tomorrow.
See you in the morning.
Preview reader
You are reading a private preview of IMPCT Institute. If something landed, didn't land, or felt confusing on this lesson, tell us. Short notes are useful. Long notes are useful. No notes are also fine.