3

I've been doing research in trying to answer this question and haven't found a good answer yet. I was wondering what is the incentive for miners to include a transaction in a block when mining bitcoin? Since it's a race to solve the proof of work problem, why wouldn't miners just leave the block empty to save time?

The reward for mining the block is much bigger than the transaction fee(s) so it doesn't seem to make sense to me to waste time validating transactions for the block just to accumulate small transaction fees. If anyone can provide an answer, that would be greatly appreciated. Thanks.

1

The incentive is the transaction fee. Although the individual transaction fee may be fairly small, all together, transaction fees now make up 2-3 BTC of the block reward. As the block subsidy diminishes, transaction fees will become a bigger and bigger part of the block reward, eventually becoming the entire block reward.

  • Thanks for your reply Andrew. Just a quick followup. I've read that having an empty block doesn't minimize the mining effort compared to having a full block of transactions. Is that true and if so, why is that? – Mitchell Ong Jun 23 '17 at 20:42
  • Yes, that is true. The majority of the work going into mining a block is just hashing a bunch of different block headers. The size of the header (and thus the amount of work required to hash it) remains constant regardless of the data within the block and of the data within the header. – Andrew Chow Jun 23 '17 at 20:55
2

Three reasons:

  1. Leaving the block empty doesn't save any time. They still hash however many times a second they hash.

  2. Transaction fees make up a significant fraction of the mining reward today. Such a miner would be foolish.

  3. Miners have invested in expensive hardware that is valuable only if bitcoins remain valuable. If too many miners mine empty blocks, confirmation times will go up and the usefulness of the network will be diminshed.

  • David, thank you for your response. One thing I wanted to follow up with you on. So what is the incentive for peers on the network to validate solved blocks? They could just use the block without validating it or continue mining the previous block. Plus, there are no fees for validating solved blocks, and even though it might be quick, it's extra work they'd have to do. – Mitchell Ong Jun 26 '17 at 14:17
  • If you don't validate a block, how do you know whether other people will accept it or not? If you accept it and others don't, you can lose money by accepting as payment bitcoins that nobody else will accept as spendable. The system would be unusable if nobody validated blocks -- no two machines would agree on who has what. As for mining on the previous block, if you do that, you won't get any mining reward or transaction fees because only the longest chain stays valid long enough to spend its fees/rewards. – David Schwartz Jun 26 '17 at 17:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.