As I delve deeper into Bitcoin, some fascinating things start surfacing.
Bitcoin is unprecedented, and still in beta (for those that don’t know). It has to adapt to new challenges such as an increasing blockchain.
One interesting problem is that micro-transactions become unfeasible if the accepted the transaction fee isn’t dynamically adjusted.
Let me explain. Bitcoin is close to $100 now, so let’s assume that’s the value for ease of explaining.
$1 is thus 0.01 BTC.
Transaction fees serve 2 purposes in the Bitcoin network. It rewards the miners for confirming transactions and also sets a priority on the inclusion of your transaction in the next block. ie, if you pay a higher transaction fee, chances are greater you will be included in the next block so that it can be verified and confirmed. For faster confirmations, spend more on the transaction fee.
It is not in the interest of the network (currently) to not incentivize small transactions. If you have 40 000 BTC and send 0.1 BTC’s all over, you will clog up the blockchain with massive amounts of transactions. This in fact an ‘attack’ strategy that someone can use on Bitcoin, greatly increasing the overall blockchain size. But, legitimate micro-transactions are being penalised.
The protocol is such, that you basically have to pay a transaction fee (https://en.bitcoin.it/wiki/Transaction_fees). You don’t have to, but if you don’t, your transaction can wait for hours until it’s eventually confirmed.
The problem is, is that the protocol has a ‘static’ minimum transaction fee of 0.0005btc (see the wiki page above). If you don’t pay that, you greatly decrease your changes of being included in the next block.
As website or start-up that wants to deal with fast micro-transactions, you will want to pay that. The problem: That fee was determined 2 years ago! Now at prices close $100, it’s becoming quickly more substantial. A service, if I want to take a cut, I won’t be able to provide a fast service if I want to make any kind of return.
So a quick recap:
Bitcoin transaction fees are quickly becoming too expensive for micro-transactions to remain feasible.
How to solve it?
Off the top of my head. One way to solve it, is by bringing supply/demand market forces to transaction fees. Want a faster transaction and want to be included in the next block? Check what the current average is, and pay more than that. This way compared to Bitcoin’s actual value it would hopefully self-adjust as well as to the market forces surrounding faster and slower transactions.
Bitcoin (originally) wasn’t designed to work with micro-transactions. However, if Bitcoin is supposed to become the next big thing, it has to adapt to work with this. When the blockchain size can be drastically reduced (which is in dev), ‘spammy’ transactions impact on the network can be decreased. If it is to deal with the internet’s exchange and transactions it will have to adapt to work around this.
EDIT: There seem to be ways around this which I still have to wrap my head around.
Also: by using the sendmany command you can group transactions and decrease the transaction size and thus pay a lower transaction fee.