There is a lot of opinions about how much fees should be in Bitcoin Cash (BCH). To be quite frank, a lot of them are harmful and quite damaging. The way Satoshi designed Bitcoin to work is that there will be a block reward paid out as coins are mined. Block rewards will continue until the mining reward runs out. The mining reward won't completely run out for another ~122 years (in approximately the year 2140). As there will only ever be 21 million coins in existence and the mining reward halves roughly every four years, this means the number of coins getting mined gets less and less over time. This means that deflation occurs and coins become rarer and more valuable over time which inevitably encourages the price upwards. As time goes on and the price of coins become more valuable, miners will need less and less coin reward from mining. One miner today might be earning 1.0 BCH per day which is equivalent to about $1000 USD. In a few years after the next reward halving they might be earning 0.5 BCH which might still be equivalent to $1000 USD. They can still make a good profit even though they're making less actual Bitcoin because the value of that coin relative to fiat currencies has doubled. Miners that don't make a profit after expenses eventually stop mining and drop off the network. Due to automatic difficulty adjustments each block due to hash rate leaving, the mining difficulty is quickly reduced for remaining miners which allows them to stay profitable regardless. Those that can still make a profit keep mining and keep the network running. Perhaps in future some miners will have access to cheaper/renewable energy like solar power which enables them to keep mining profitably. The mining always keeps running and stays in a profitable equilibrium. What this means is that the mining reward alone is enough to sustain the network until it runs out completely ~122 years from now. In 122 years, if the network is still running, the vision is that there will be so many transactions occurring per day paying the tiniest fee that this incentivises the miners to keep mining and gain a small profit from the fees alone. For example at a low estimate of 14 billion transactions per day (2 per day for everyone currently on the planet) x 1 Satoshi per transaction = 14 billion satoshis or 140 BCH per day split among all the miners. As long as the miners that are still running the servers and storing the blockchain can still pay their server/power/cooling/maintenance costs from that reward then the network stays operational. If they can't pay their costs then they power down some of their machines or drop off the network which means more revenue for the remaining miners. Eventually the mining difficulty could drop off significantly meaning that they don't need so much hash rate to keep mining. The remaining miners could just account for the minimum disk storage and memory costs to maintain the mempool and their copy of the blockchain. The difficulty doesn't necessarily have to keep increasing to infinity where the miners keep adding CPU power to keep up, they may reach a comfortable equilibrium. Now on the matter of how much transaction fees should be. The current 1 Satoshi per Byte is fine for now but will be too high in future if the price of Bitcoin Cash rises significantly. Say the price of 1 BCH was $1000 USD and the regular transaction size is 250 Bytes, then a user would be paying 250 Satoshis for their transaction which is 0.00000250 or $0.002 (one fifth of a cent) which is pretty good. If the price of 1 BCH reaches $10,000 USD it will be 2.5 cents which is not too bad. If the price reaches $100,000 then it would be 25 cents per transaction which is not that great and might rule out some micropayment services. For $1,000,000 per BCH the price is $2.50 per transaction which is getting too expensive and making it unusable for day-to-day transactions like buying cheap goods e.g. coffee. If it reaches $10,000,000 then it gets to $25 per transaction which is basically the minimum cost to do an international wire transfer or use Western Union which would definitely kill a lot of services. The network transaction fees must always be kept low for Bitcoin Cash to remain a viable currency. This is something that those in control of maintaining Legacy Bitcoin (BTC) never understood. So why does Bitcoin Cash need fees at all then? Well, it needs some tiny fee to prevent someone from just doing a Denial of Service (DOS) attack on the network with thousands of transactions for free and clogging up the blocks. At the moment to fill up an 8 MB block with the cheapest transactions and slow the network down for everyone it would take 33,554 transactions at a cost of 0.83885000 BCH. To sustain that attack for an entire day would cost 120.79 BCH ($120,790 if 1 BCH equalled $1000). Maybe that is still in range for a well funded government attacker who wanted to degrade the network for a few months so much that people no longer want to use it. Or something worse might happen in that people have to pay much higher fees to get included in the blocks and eventually merchants start dropping it as a payment mechanism (like what has happened in BTC). What the Bitcoin Cash network really needs is: - A dynamically adjusting maximum block size algorithm so that the maximum block size always increases to cater for the average number of transactions per block (measured over the previous 7 day period) plus a percentage of headroom to handle peak traffic and future growth e.g. 30%. The 0-conf feature means that transactions will always get confirmed eventually even if the transactions per block exceed peak capacity for a short period until the max block size adjusts upwards. A dynamically upwards adjusting maximum block size prevents the chance of a DOS attack ever permanently crippling the network. - A flat fee of 1 Satoshi per Byte (average of 250 Satoshis per average size transaction) at the moment is fine for now and expensive to attack the network. In early 2019 the network should lock in a flat fee of 1 Satoshi per 25 Bytes (10 Satoshis per average size transaction). Then in early 2020 the network should lock in 1 Satoshi per 250 Bytes (1 Satoshi per average transaction). This ensures the fees don't get out of hand but it is still expensive for an attacker to try a DOS attack. There may be better methods to gradually reduce the default network fee. Whatever algorithm is used though it should be hard coded into the core of the node software (ABC, Unlimited etc), exchanges and wallet software to prevent miners and users configuring it to please themselves. We do not need slider bars or fee estimators or anything else to configure fees in the wallets. A flat fee for everyone and for every transaction, locked in at the protocol level. If the currency really took off and fees were still too high due to the price of $100,000,000 per 1 BCH you could always add another decimal place to the currency then a standard 250 Byte transaction might cost 0.000000001 (1/10th of a Satoshi). It is expected more decimal places will continually need to be added in the future. - Transactions are always accepted on a first in, first out (FIFO) basis. Transactions that pay a higher fee do not just get to jump the queue like in BTC. If they want to optionally pay a higher fee there will be no benefit to doing it so no-one will do it. We need to get rid of the ridiculous idea of needing to make "donations" for the miners by setting our wallets to defaults of 2 Satoshis per Byte etc because the miners are already making tidy profits from the block reward alone and do not need transaction fees right now. Even worse is the idea of a fee market which the maintainers of BTC tried to create. Exchanges are also ripping users off by setting high withdrawal fees. The Bitcoin Cash network will be able to process all paying transactions that come in. A paying transaction paying the default fee is not "spam". A FIFO basis ensures a fair system where all transactions are treated equally and no-one's transactions get censored or unnecessarily delayed because they put a standard default fee on it. Across the network transactions may arrive in at different times so it doesn't have to be perfectly ordered into a block by the second. However obviously there is a difference between a transaction arriving at 1 minute then another 2 minutes later and another 10 minutes later. Most of the network should have received a transaction that was broadcasted after 1 minute has elapsed. So the first two transactions would be included in the block first on a best-efforts basis to detect which transaction the miner saw first on the network. Coding of this default behaviour can be done in the node clients and wallets. This would ideally be locked in for the November 2018 hard fork. This means that by default most miners will be following these rules. There may only be time for a few more hard forks to get the protocol right for the future. As the network gets bigger and bigger it takes a lot of time to get the whole ecosystem (miners, merchants, services, wallets and users) upgraded to a new version of the protocol. Just look at the slow adoption of the Cash Address format. Even there were some stragglers still mining the EDA chain for a while after the DAA fork. Ideally you would not want to be doing hard forks too often or you risk people running off the old network for an extended period and it's a lot of extra hassle for everyone to upgrade. Satoshi's method of upgrading everyone at a block height well in the future meant that users would generally have upgraded their wallets by then and other miners and services would be well prepared at least 6 months in advance. If I downloaded a wallet today it should already be ready for the May hard fork to add in new opcodes and other changes. I should not be doing some emergency last minute update in May or risk being incompatible with the network. In another two months I should start seeing wallet software etc ready for the November hard fork. The capability needs to be widely available ideally 6 months before it's activated on the network to give the whole ecosystem time to upgrade. I would not want to see another last minute DAA style upgrade unless it was a really critical upgrade or fixing a security flaw. I propose we discuss these ideas further and get these changes into the protocol to permanently fix the maximum block size issue and get a network protocol level flat fee accepted by the entire ecosystem. This would see Bitcoin Cash be a useful currency for the foreseeable future without further intervention. Ideally the Bitcoin Cash network should operate and upgrade its capacity to handle increasing number of transactions in an autonomous fashion without the need of continuous central planning by the developers.