How Blockchains Decide: Understanding Chain Splits and Finality
A canonical chain is the agreed-upon chain all participants on the blockchain agree to follow. But what happens when the blockchain splits into two branches? Which branch should we follow, and how do we determine the right one?
Why Chain Splits Happen
Chain splits can occur for several reasons:
Latency: While a validator is broadcasting a new block, it might clash with another validator doing the same thing. For example, Block A comes from a node in Asia and Block B from a node in Africa. Other validators tend to follow the region closer to them due to network speed, creating two competing chains.
Bugs: System updates that some nodes didn’t download correctly can cause splits.
Malicious Attacks: Bad actors intentionally trying to disrupt the network.
How We Determine the Winning Chain
The blockchain uses what’s called the weighted-chain to decide which branch to follow. This means the chain with the highest stake wins—not the highest number of votes. Why stake and not votes? Because of Sybil attacks, where one person could create multiple nodes to favor themselves. Those with higher stake have more skin in the game, making it extremely difficult for a hacker to take advantage.
The blockchain also uses a fork-choice rule with an algorithm called LMD-GHOST, which acts as a “scale” measuring which side has more total ETH staked. Even a tiny difference can break a tie.
What Happens to the Losing Branch
Once we determine which branch to follow, the losing branch (let’s say Branch B) becomes an orphan block. The transactions in those orphaned blocks are returned to the memepool (the waiting room for transactions) where they’ll be picked up by other validators. They might be bundled into the same block or split across different ones.
The validator that broadcast the orphaned block loses their reward. This incentivise everyone to stay honest and fast.
When Validators Cheat: Equivocation
Sometimes a group of validators might try to use high stake and low latency in their region to their advantage through what’s called a re-org. When this happens on purpose, other validators can detect it, this is called equivocation. It’s like knowing whether someone is ignoring your calls versus having network issues. Validators caught doing this are kicked out of the system.
The Final Stage: Finality
Even if a branch is winning (say Branch A has 54% and Branch B has 46%), it still needs to reach a threshold of 66% (or 2/3) to achieve finality and be permanently added to the blockchain.
What if there’s no clear winner?
When we have a 50/50 split or no chain reaches the 66% threshold, the protocol has measures to force resolution:
LMD-GHOST measures which side has slightly more total ETH staked, and even a tiny difference breaks the tie.
The Inactivity Leak (The Nuclear Option): If the network stays split for too long (hours or days), the protocol starts burning the ETH of validators who aren’t voting for the majority. This creates strong economic pressure to converge.
The Smooth Recovery: Eventually, enough stakers see which branch is the clear leader and switch their votes to it. Once that branch hits 66%, finality resumes and the network is whole again
ConclusionAt the end of the day, blockchain finality is about making sure that once a transaction is confirmed, it stays confirmed. The weighted-chain approach, LMD-GHOST, and the inactivity leak aren’t perfect, but they align individual incentives with network health. Validators with the most stake have the most to lose, so they’re incentivized to play by the rules. And when they don’t? The protocol has ways to force everyone back into agreement. Because if we can’t trust that our transaction history is permanent, then we’re just back to trusting centralized databases and that defeats the whole point.
.

