When you use a mobile banking app, you might be prompted to update it. You typically agree, and the system upgrades. Sometimes, updates happen automatically. Software updates are essential. Without the latest version, you might lose access to services.
In open-source cryptocurrency systems, the process is very different. You don’t need to read every line of code that powers Bitcoin—though it can be helpful. In a decentralized environment, there is no management hierarchy. No bank can push updates or changes to you. Upgrading a blockchain network with new features is a significant challenge.
This article explores how cryptocurrency networks upgrade without centralized authority. Two primary mechanisms make this possible: the hard fork and the soft fork.
To understand how forks work, you must first understand who participates in the decision-making process—or governance—of a blockchain network.
In Bitcoin, participants can be roughly divided into three groups: developers, miners, and full node users. These are the parties that actively participate in and contribute to the network. Lightweight nodes (like mobile or laptop wallets) are not considered true “participants.”
Key Participants in Blockchain Networks
Developers
Developers create and update the code. In most traditional cryptocurrencies, anyone can contribute code. The code is publicly available, and proposed changes are submitted for review by other developers.
Miners
Miners are the participants who secure the network. They run the cryptocurrency’s code and dedicate computational resources to add new blocks to the blockchain. In the Bitcoin network, they do this through proof-of-work. Miners are rewarded for their efforts through block rewards.
Full Node Users
Full nodes form the backbone of the cryptocurrency network. They validate, relay, and receive blocks and transactions. They also maintain a complete copy of the blockchain.
These roles can overlap. You could be both a developer and a full node operator, or a miner and a full node operator. You could even be all three. However, many cryptocurrency users do not fill these roles. Instead, they use lightweight nodes or centralized services.
Developers and miners play crucial roles. Without developers, there would be no code to run, no one to fix bugs, and no new features. Without miners, the blockchain could be hijacked or stall due to lack of security.
But developers and miners cannot force the network to follow their will. The real control lies with the full node users. They keep the network running and decide which software to use.
Developers won’t force you to download new software. If miners try to force unwanted changes, users likely won’t comply. Miners and developers are service providers, not rulers. If users abandon the network, the token loses value. This loss directly affects miners (lower rewards in dollar terms) and developers (who may be ignored).
The software is not proprietary. You can modify it as you wish. If others run your modified software, you can interact with them. This is how you create a new network by forking the software.
What Is a Fork?
A fork occurs when software is copied and modified. The original project continues, but a new, separate project is created and develops in a different direction. Imagine a team behind a popular cryptocurrency website disagreeing on its future. Part of the team might copy the site to a new domain. From that point forward, they publish different content.
These projects share a common foundation and the same historical data. Like a road splitting into two, their paths diverge from a certain point.
Forks have long existed in open-source projects, even before Bitcoin or Ethereum. But only in blockchain is there a distinction between hard forks and soft forks.
Hard Fork vs. Soft Fork: Key Differences
Although their names are similar and they serve the same purpose, hard forks and soft forks are very different.
What Is a Hard Fork?
A hard fork is a software upgrade that is not backward-compatible. This usually happens when new rules are added that conflict with the old rules. New nodes can only interact with other nodes running the new version. As a result, the blockchain splits into two separate networks: one operating under the old rules and one under the new rules.
After upgrading, nodes become blue. The older yellow nodes reject connections from blue nodes, but blue nodes can connect with each other.
Now, two networks run in parallel. They continue to produce blocks and transactions but no longer work on the same blockchain. Before the fork block, all nodes share the same blockchain (and history remains intact). Afterward, they have different blocks and transactions.
Because they share the same history, if you held tokens before the fork, you now have tokens on both networks. Suppose you had 5 BTC at block 600,000 when a hard fork occurred. You could spend those 5 BTC on the original chain at block 600,001, but that spend would not be recorded on the new forked chain. Assuming the cryptography remains unchanged, your private keys would still control 5 tokens on the new network.
A well-known example is the 2017 fork that split Bitcoin into two separate chains: Bitcoin (BTC) and Bitcoin Cash (BCH). The split followed intense debate within the community about how to scale block capacity. Bitcoin Cash supporters wanted to increase the block size, while Bitcoin supporters opposed the change.
Increasing the block size required a rule change. This was done before the SegWit soft fork (more on that later), so nodes would only accept blocks smaller than 1MB. If you created a 2MB block, other nodes would reject it.
Only nodes that upgraded their software to support blocks larger than 1MB would accept such blocks. This made them incompatible with the previous version, so only nodes with the same protocol could communicate.
What Is a Soft Fork?
A soft fork is a backward-compatible software upgrade. Upgraded nodes can still interact with non-upgraded nodes. Soft forks typically add a new rule that does not conflict with the old rules.
For example, a soft fork can be used to reduce the block size. Bitcoin has an upper limit on block size but no lower limit. If you only want to accept blocks below a certain size, you can simply reject larger blocks.
This does not disconnect you from the network. You can still interact with nodes that don’t follow the new rules, but you will filter out some of the information they relay.
A good example is Segregated Witness (SegWit), which was implemented shortly after the Bitcoin and Bitcoin Cash split. SegWit was an update that changed the block and transaction format in a clever way. Old nodes could still validate blocks and transactions (as the new format did not break the old rules), but they could not read certain new fields. Only upgraded nodes could correctly parse the additional data.
More than two years after SegWit activation, not all nodes had upgraded. This was acceptable because the network did not break, and the upgrade was not urgent.
Which Is Better: Hard Fork or Soft Fork?
Each type of fork serves different purposes. A controversial hard fork can split the community, but a planned hard fork allows all participants to choose whether to upgrade.
Soft forks are a smoother option. Generally, because the upgrade does not conflict with prior rules, you can only enforce certain restrictions. If you can implement the upgrade in a compatible way, you avoid the risk of network fragmentation.
Both hard and soft forks are essential for the long-term success of blockchain networks. They enable changes and upgrades in decentralized systems despite the lack of central authority.
Forks allow blockchains and cryptocurrencies to integrate new features during development. Without these mechanisms, we would need a centralized system with top-down control. Otherwise, we would be stuck with the same rules for the entire lifecycle of the software protocol.
👉 Explore advanced blockchain upgrade strategies
Frequently Asked Questions
What is the main difference between a hard fork and a soft fork?
A hard fork is a non-backward-compatible upgrade that creates two separate blockchains. Old nodes cannot validate blocks from new nodes. A soft fork is backward-compatible, meaning upgraded and non-upgraded nodes can still interact, though non-upgraded nodes may not fully support new features.
Can I lose my coins in a hard fork?
No, you do not lose your coins. If you hold coins before a hard fork, you will have the same amount on both the old and new chains. However, you must be cautious about transaction replay attacks and ensure you use your private keys correctly on each chain.
Why are soft forks considered safer than hard forks?
Soft forks are generally considered lower risk because they maintain network unity. Since the upgrade is backward-compatible, the blockchain does not split. This reduces community division and the potential for confusion among users.
How do nodes decide whether to support a fork?
Nodes operators—miners and full node users—decide individually whether to upgrade their software. Developers propose changes, but the community adopts them only if a significant majority agrees. Economic incentives often play a key role in these decisions.
What was the outcome of the Bitcoin and Bitcoin Cash hard fork?
The hard fork resulted in two separate cryptocurrencies: Bitcoin (BTC) and Bitcoin Cash (BCH). Both continue to operate independently with different rules and communities. BTC retained the larger market share and broader adoption.
Are all forks planned in advance?
Not all forks are planned. Some occur due to disagreements within the community, leading to contentious hard forks. Others are scheduled upgrades agreed upon by developers and the community to improve functionality or security.