Hard Fork vs. Soft Fork
Is There a Real Difference Between The Two?

hard fork and soft fork comparison

To most people “hard forks” vs “soft forks” seems like a debate involving cutlery experts. But when it comes to cryptocurrencies such as discussion is no joke and involves the beating heart of the cryptoverse itself: the software used to create the blockchain. Forks are the result of a split in the blockchain, but not all splits create forks. By that, we mean that a split caused by the simultaneous discovery of blocks by different miners is not a true “fork” but a temporary split that will right itself, as we will see. The only type of split that creates true “forks” is a change in the underlying software protocols instituted by the developers. This type of split is permanent and leads to subsequent hard forks and soft forks. Below we’ll take a closer look at what causes these splits as well as the difference between hard and soft forks.

The Blockchain

blockchain process

Before we get into what a fork is we need to touch on what a blockchain is. The blockchain that underlies Bitcoin is a continuously expanding distributed ledger composed of blocks of data.  Each block is a verified record of the most recent transactions that are added to the chain of information regarding Bitcoin in chronological order. In this way, digital currency transactions are all accounted for and a single, verifiable "truth" is created regarding the currency which, among other things, negates the need for standard bookkeeping.

Generating Forks

As we stated above, there are two types of splits. One is temporary and self-correcting while the other is permanent and leads to hard or soft forks in the blockchain structure. Here's a bit more about the different types of splits:

fork with btc
  • A Split in Consensus - Sometimes miners will discover a block at the same time. When this happens, the blockchain is split into to 2 parallel chains. This type of split, however, is only temporary because as soon as the next block is discovered whichever chain it was discovered on becomes the "true" chain. The other is then abandoned, and the single blockchain structure is re-established.
  • A Split Caused by a Change in the Rules - This type of split occurs on purpose and is permanent. It happens when new features are added that enhance the functionality of the network or when a change is instituted that affects a core principle like the size of the block. It is this type of split that creates what are called "hard forks" and "soft forks." This type of split also requires participants to upgrade their software.

Now let’s take a closer look at hard and soft forks.

The Soft Fork

A soft fork is created when an upgrade is instituted that is compatible with older versions of the software. When such an upgrade occurs even participants who were slow to adopt it will be able to continue to participate in verifying and validating transactions.

The only aside here is that those who have not upgraded their software will not be able to enjoy any improved functionality. Other than that soft forks are relatively easy to implement and cause the least disruption to the network. Soft forks have a way of working themselves out as well because eventually, the people who have not upgraded will encounter functional limitations that should prompt them to upgrade. The process of bringing everyone into the upgraded fold, however, is no doubt a gradual one.

programming codes

The Hard Fork

A hard fork occurs when a software upgrade is not compatible with old versions of the software. When this type of upgrade happens, it is incumbent upon all participants to upgrade their software asap to continue participating fully in network activities. Those who for whatever reason do not upgrade will find themselves in a kind of limbo outside of the upgraded network structure unable to validate new transactions, but still able to mine the old chain which will continue to exist concurrently alongside the upgraded chain (as long as there are participants). There are two different types of hard forks: planned and contentious. Let's look at them a little closer.

exchange graph
  • Planned Forks - Planned forks are upgrades that have been in the pipeline from the start with all participants aware that they would be occurring at a certain point. No one should be taken by surprise by a planned fork, and therefore all should abandon the old chain and migrate to the new chain. As a result, the former chain, now bereft of incentives, is allowed to die.
  • Contentious Forks - Contentious hard forks are the result of disagreements within the community of participants regarding the overall direction of the chain. When these disagreements occur, a dissenting group will sometimes break away and create a new chain that diverges from the main blockchain and takes on a life of its own. Bitcoin Cash is perhaps the best known of these contentious hard forks. Bitcoin Cash was the result of a significant portion of the community being unhappy with escalating fees and bottlenecks created by ever-increasing network traffic. The resulting hard fork was so contentious, it resulted in an entirely new cryptocurrency (Bitcoin Cash).

Bitcoin Cash, however, was not the only new currency derived from Bitcoin code. Indeed, the fact that the Bitcoin protocol is open source means anyone with the requisite skills can change it to facilitate the creation of a new coin. And there are many good reasons to do so. Primary among them is that it's just easier to modify the already existing Bitcoin code then it is to build a new currency from scratch.

Also, each contentious fork has the built-in advantage of carrying the Bitcoin name, which in theory gives it the kind of instant market viability, an entirely new currency simply wouldn't have.

utensil with bitcoin


In a nutshell, soft forks enable a slow, painless transition to the upgraded network while hard forks ensure the continued health of the underlying code base while also allowing the birth of entirely new currencies that expand the potential of the crypto economy going forward.