On Bitcoin-Wiki's page about Blocks, it says that "Bitcoin transactions are broadcast to the network by the sender, and all peers trying to solve blocks collect the transaction records and add them to the block they're working to solve.".

So, do all peers have the same transactions in their blocks at all times?


Miners will naturally be inclined to include those transactions in their blocks that give them high transaction fees (though exceptions exist), because apart from the block reward from coinbase transaction, those are the only incentives for miners. So, whatever transactions have reached a miner through the network, her choices will be restricted among those transactions. At a particular time instance, different miners most likely have different snapshots of transactions available to them. So, the answer is no (with very very high probability).

  • Thanks for the explanation. But now what happens to those transactions that don't get put in a block? Is there a limit on the number of transactions that can be placed in a block? Why wouldn't a miner want to include all the transactions received in a block? Sorry for asking so many questions, but I'm trying to build a simple Java cryto-currency that has the basics. – Pol Nov 11 '14 at 20:59
  • 1. Txns that are not yet included in a block Have to wait until someone picks them. 2. Max block size is 1 MB and avg txn size is roughly 0.5 KB, so yeah, there is an upper limit. 3.Miner creates the block with txns of her choice, she is free to choose whatever she wants. Though the general trend is to chooce txns that ensures highest profit. – Bitswazsky Nov 12 '14 at 7:50

Well long answer is No because transactions take time to relay between all peers. If you send coins from a multibit wallet you can see how many peers have seen the transaction, however it takes some time to relay it to all the peers.

Once a block is found, then ALL the peers get a notification that a new block was found and they add it to their respective chains. That is how all the peers stay synchronized on the same chain.

Hope I answered your question!

  • In addition, miners (or controllers for pooled mining) can include whatever valid transactions they want. They can (and do) use different rules for deciding which transactions to include. – David Schwartz Nov 8 '14 at 20:19

All valid unconfirmed transactions are broadcasted on the Bitcoin network, therefore all miners in principal have access to the same transactions.
However, the individual miners may receive knowledge of transactions in different order, select transactions to include in blocks by different rules, or may not yet have received every transaction that is currently unconfirmed.

Therefore, each miner has an individual subset of the same set of unconfirmed transactions.

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.