You tap "Send," enter an amount, and within seconds your wallet shows a transaction ID. But nothing has actually moved yet. Over the next few minutes — or, in some cases, an hour — a precise sequence of cryptographic steps unfolds across thousands of computers worldwide. Here's exactly what happens, and why each step matters.
In Plain English
Think of a blockchain transaction like sending a certified letter. You write the letter (construct the transaction), sign and seal it so nobody can tamper with the contents (cryptographic signature), hand it to the post office (broadcast to the network), watch it sit in a sorting facility until a postal worker puts it in a truck (the mempool), and finally receive confirmation that it was delivered (block inclusion). At that point it's on the record — and after enough time passes, reversing it would require breaking the entire postal system.
Now let's go step by step.
What You're Actually Authorizing When You Hit Send
When you confirm a send in your crypto wallet, nothing has yet touched the blockchain. Your wallet first assembles a transaction object — a small data structure containing your sending address, the recipient's address, the amount, and the fee you're willing to pay.
The exact structure depends on which chain you're using. Ethereum and similar account-model chains include a nonce — a sequential counter (starting at zero for a new account) that prevents the same transaction from being resubmitted twice. This is called replay attack protection. If you've sent 47 transactions from an address, your next one will have nonce 47, and the network will reject any transaction that reuses a lower number.
Bitcoin works differently. It uses a UTXO (unspent transaction output) model. Your balance isn't stored as a number against your address; it exists as a collection of discrete chunks of bitcoin left over from previous transactions. Your wallet selects one or more of these unspent outputs to "spend," and if their total exceeds the amount you're sending plus the fee, the surplus is automatically sent back to an address you control as change.
Either way, none of this has reached the network. This entire construction step is local, inside your device.
Signing: Proving Ownership Without Revealing Your Private Key
Once the transaction is assembled, your wallet signs it using your private key. The signing algorithm used across most blockchains is ECDSA (Elliptic Curve Digital Signature Algorithm). It produces a unique signature tied to both your private key and the exact content of the transaction.
The signature does two things at once. First, it proves to the network that you control the sending address — without ever exposing the private key itself. Second, it makes the transaction tamper-proof: if any field is altered after signing (the amount, the recipient, anything), the signature becomes invalid and every node on the network will reject it.
The result is a self-contained package: the transaction payload, the signature, and your public key. Hardware wallets perform this step inside an isolated chip, which means the private key never passes through internet-connected memory even for a millisecond.
Broadcasting: Entering the Peer-to-Peer Network
With the signed transaction ready, your wallet pushes it to one or more network nodes via a gossip protocol — a method where each node that receives a valid message immediately forwards it to its neighbors. Within a few seconds, the transaction has propagated across the globe.
But propagation is not unconditional. Before forwarding, every node independently validates the transaction: is the signature correct? Does the sender have sufficient balance or valid UTXOs? Is the nonce in sequence? Does the fee meet the minimum relay threshold?
If any check fails, the node silently drops the transaction. It never reaches the pool of pending transactions. If all checks pass, the node forwards it and your transaction hash becomes visible on block explorers — marked "pending" or "unconfirmed."
The Mempool: Waiting Room for Unconfirmed Transactions
Every node maintains a mempool (short for memory pool) — a local, temporary list of valid transactions waiting to be confirmed. There is no single global mempool; each node has its own, though they tend to converge on the same contents because of the gossip protocol.
Block producers — called miners on proof-of-work chains and validators on proof-of-stake chains — select transactions from their mempool to include in the next block. Their primary selection criterion is fee. Higher-transaction fees get picked first.
On Bitcoin, the minimum relay fee is 1,000 satoshis. On Ethereum, the fee structure introduced by EIP-1559 splits the fee into a base fee (burned by the protocol, so it no longer goes to validators) and a priority tip (which does go to the validator as an incentive to include your transaction quickly). A simple ETH transfer costs exactly 21,000 gas units; multiply that by the current base fee plus your tip to get what you pay.
During periods of high demand, the mempool fills up. Low-fee transactions can wait hours or eventually get dropped. The mempool is not a queue in the fairness sense — it is a fee-based competition.
Block Inclusion: From Pending to Confirmed
A block producer bundles selected mempool transactions into a candidate block, runs the chain's consensus process (proof-of-work or proof-of-stake), and broadcasts the new block to the network. Once the network accepts it, every transaction inside receives its first confirmation.
How blocks are added to the chain determines how long you wait. Bitcoin targets a new block every 10 minutes — a rate deliberately slow to make mining costly and the chain secure. The standard safety threshold is 6 confirmations, which takes roughly 60 minutes, because the computational cost of rewriting six blocks is prohibitively high. For small amounts, one or two confirmations is typically fine; for large, irreversible transfers, waiting for six is prudent.
Ethereum produces a new block every 12 seconds (one slot, under proof-of-stake). Transactions reach practical finality after approximately two epochs, which is about 12.8 minutes.
Finality: When Is a Transaction Truly Irreversible?
Finality is the point at which reversing a transaction would require rewriting the chain — an effort so costly it becomes effectively impossible.
Proof-of-work chains have probabilistic finality: there is no absolute cutoff, but each additional block piled on top exponentially increases the cost of a double-spend attack (spending the same coins twice by secretly building a longer chain). The risk approaches zero as confirmations accumulate.
Proof-of-stake chains offer economic finality: the protocol can cryptographically finalize checkpoints. On Ethereum, once a checkpoint is finalized, validators would need to burn enormous amounts of staked ETH to reverse it — the protocol enforces this penalty automatically.
Layer-2 networks (rollups, state channels) inherit their security from the base layer but introduce their own settlement delays. A transaction on a Layer-2 may confirm in seconds locally but might take minutes to hours to be fully settled back to the base chain.
For everyday amounts, a single confirmation is sufficient. For large, high-value transfers, wait for the protocol-level finality appropriate to that chain.
Key Takeaways
- Every transaction is constructed locally, signed with your private key using ECDSA, and only then broadcast to the network — nothing happens on-chain until the broadcast step.
- The mempool is a fee-based competition, not a fair queue; fees exist because block space is limited and block producers prioritize the highest bidders.
- Bitcoin's safety threshold is 6 confirmations (~60 minutes); Ethereum reaches economic finality after ~2 epochs (~12.8 minutes).
- Proof-of-work chains have probabilistic finality; proof-of-stake chains can achieve cryptographic, economic finality at designated checkpoints.
- Layer-2 transactions settle fast locally but inherit base-layer finality timelines for full security.



