Orphan Block: What It Is and How It Works
Orphan blocks are blocks produced by a blockchain network that are not accepted into the canonical (longest or most-work) chain. They arise when two valid blocks are mined at nearly the same time and the network later converges on one chain; the blocks on the shorter, discarded chain become orphan (or stale) blocks.
Key takeaways
- Historically, an “orphan block” could mean a block missing its parent header and therefore unverifiable.
- Today, orphan blocks usually refer to valid blocks that lose out to a competing chain and are discarded.
- Transactions in orphan blocks are returned to the mempool for inclusion in subsequent blocks.
- Orphan (stale) blocks are now rare on major blockchains due to protocol improvements and lower network latency.
How blockchains create parent-child block relationships
Blocks contain transaction data and a block header that references the previous block’s header. This parent-child chaining creates the blockchain’s immutability: each block’s hash incorporates the prior block’s information, linking the chain.
Explore More Resources
During mining (proof-of-work), miners race to find a hash meeting the network’s difficulty target. When two miners find valid blocks nearly simultaneously, the network can temporarily fork into competing chains until one chain accumulates more proof (work) and is accepted as canonical.
Old vs. current definitions
Old definition: An orphan block was a block missing its parent header or otherwise incomplete, making it unverifiable. This type of block was effectively unusable.
Explore More Resources
Current definition: Orphan (or stale) blocks are valid blocks that were part of a branch later discarded because another branch had more accumulated proof. They are produced when competing blocks cause a temporary fork and one branch loses the race.
How orphan blocks are created
- Near-simultaneous mining: Two miners find valid blocks at the same height around the same time.
- Network propagation delays: Nodes learn of different blocks first, leading miners to build on different tips.
- Chain selection: As more blocks are added, one chain gets more proof and becomes the accepted chain; the other branch’s blocks become orphaned.
Improvements in node software, faster block propagation, and the consolidation of mining into low-latency pools have greatly reduced the frequency of orphan blocks.
Explore More Resources
Orphan blocks vs. uncle blocks and stale blocks
- Stale blocks: Under current usage, “stale” and “orphan” are often synonymous—blocks that were valid but not included in the eventual longest/most-work chain.
- Uncle blocks (Ethereum PoW): Ethereum used a similar concept called uncle blocks, which were rewarded to partially compensate miners for work that didn’t make the main chain. After Ethereum’s move to proof-of-stake, uncle production ceased because validator selection is not competitive in the same way.
What happens to transactions in orphan blocks
Transactions included in an orphan block are not confirmed by that block’s inclusion in the canonical chain. Most of these transactions return to miners’ mempools and remain available for inclusion in later blocks. If a transaction in the orphan block is included in the accepted chain elsewhere, it is confirmed as usual.
Frequency and practical impact
Orphan/stale blocks were more common in earlier days of major blockchains. Today they are rare thanks to protocol updates and faster network communication. When they do occur, their main impact is minor delays in transaction confirmation until affected transactions are reprocessed.
Explore More Resources
Conclusion
An orphan block is a valid block that is discarded because another competing chain acquired more proof. While the term once described blocks missing parental information, modern usage refers to discarded blocks in short chains (also called stale blocks). Orphaned transactions typically return to the mempool and await re-inclusion, and improvements in blockchain protocols have made orphan events uncommon.