At its inception, Bitcoin was an ingenious piece of software, a decentralized online payment system that would allow different parties to send money to each other without going through financial institutions. Some hardcore Bitcoin fans believed it would one day replace payment services and become the main way we pay for goods and services every day.

But as Bitcoin became increasingly popular and more and more people started using the cryptocurrency to transfer money and to support payments in online applications, it ran into problems that its creator(s) had not predicted. Most prominent among these problems was slow payments and high transaction fees.

Bitcoin developers were divided over how to solve the problem, and a lack of consensus in the community led to hard forks, a process in which an alternate version of Bitcoin is created. The most popular fork is Bitcoin Cash, which addresses the problems of Bitcoin by raising the block size to support more transactions per hour.

But not everyone is convinced that an upgrade to the block size is the solution to Bitcoin’s problems.

Bitcoin’s scalability problem

Bitcoin has been designed to compile new transactions into 1-megabyte blocks and append them to the blockchain, the ledger that stores the history of all Bitcoin payments. Instead of being stored on a centralized server, the blockchain is replicated and updated on a decentralized network of volunteer computers, called nodes.

In order to prevent malicious actors from compromising the network, Bitcoin has set a ten-minute interval between blocks. At this rate, the Bitcoin network processes an average of 8 transactions per second.

This limit was not a problem in the early years of Bitcoin’s life, when the number of transactions never surpassed the network’s capacity. But as the cryptocurrency rose in popularity, more people started using it, and the network started becoming clogged with unprocessed transactions. At one point, the mempool, the buffer where unconfirmed transactions are stored, contained more than 280,000 payments waiting to be processed.

Bitcoin has provisioned a transaction fee mechanism, which enables Bitcoin holders to prioritize the processing of their transactions by associating a reward to it. The more reward attached to a transaction, the more likely it is that miners, the computers that process transactions, include it in the next block.

With the Bitcoin network becoming hard-pressed to process new payments, Bitcoin holders started increasing transaction fees to make sure their payments were processed in time. At one point, the average fee associated with each Bitcoin transaction was $55.

image_0-2
Figure 1 Source: Bitinfocharts.com

The byproduct of increasing transaction fees was that Bitcoin became increasingly inefficient for making small payments. Imagine buying a pizza with Bitcoin at $10 and having to pay an extra $50 just to have the transaction processed.

The result was that for some transactions, wait times stretched over hours. And some transactions got stuck because there was always another transaction that had paid more fees to get prioritized.

The Bitcoin Cash solution

The proposition of Bitcoin Cash was very simple: By changing the block size from 1 to 8 megabytes, the network’s throughput would suddenly increase approximately eightfold, reducing the time people had to wait for their payments to be confirmed and the fees they had to pay with each transaction.

And the plan delivered on its promise. Bitcoin Cash fees have never exceeded $1, and on average they’re below $0.1. Bitcoin Cash can also process an average of 60 transactions per second. The proponents of Bitcoin Cash claim that its characteristics make it much more favorable and in line with the original vision of Bitcoin, which was supposed to be a payment system that you could use for everything you do on a daily basis.

However, despite its professed promises, not everyone endorsed the Bitcoin Cash proposition, and the result was a hard fork. As of August 1, 2017, when Bitcoin Cash became activated, there have been two different versions of Bitcoin on two separate blockchains: Bitcoin Core, marked by the BTC ticker symbol, and Bitcoin Cash, marked by the BCH symbol.

At the moment, BTC still remains the most popular cryptocurrency, is more valuable than BCH and processes many more transactions every day.

The problem with Bitcoin Cash

The detractors of Bitcoin Cash claim that increasing the block size only pushes the can down the road and introduces new problems. While Bitcoin Cash’s increased transaction rate does solve Bitcoin’s current slow payments problem, it is only a matter of time before that too becomes insufficient if the cryptocurrency becomes too popular. Traditional online payment systems like Visa and PayPal are capable of processing thousands of transactions per second, which is much more than BCH’s capacity.

In May 2018, the Bitcoin Cash community updated the protocol to support 32MB blocks. This upgrade will further extend the number of transactions that the network can process. There’s even talks of lifting block size limits altogether.

However, critics point out to another problem with the Bitcoin Cash architecture: Larger blocks will increase the speed at which the BCH blockchain grows. The current size of the BCH blockchain is 160GB. If the network works at full capacity with an 8MB block size, the blockchain will grow at a rate of 1.1GB per day. This will put more strain on the nodes that support the network.

Some experts believe that the solution to Bitcoin’s problems isn’t to increase the block size, but to decrease the size and number of transactions. Segwit, a Bitcoin soft fork that became activated a little later than the Bitcoin Cash hard fork, changed BTC’s block structure to be able to pack more transactions in 1MB. Another notable effort is the Bitcoin Lightning Network, an ongoing project that wants to add a secondary layer on top of the blockchain to support faster transactions and fix the scalability problem.