# How does the computational cost of verifying transactions scale with the number of total transactions?

As more transactions are added to the block chain, does each individual transaction (ie. I send a bitcoin to a friend) get more expensive (in terms of FLOPS) to verify and commit to the chain? If each new transaction cost does change the difficulty of verifying subsequent transactions, how does this scale?

I'd appreciate any answers, links or even location in the code where this happens. Thanks.

Reference: bitcoin wiki on confirmations

As more transactions are added to the block chain, does each individual transaction (ie. I send a bitcoin to a friend) get more expensive (in terms of FLOPS) to verify and commit to the chain?

No, it does not get more expensive in terms of anything. It especially does not get more expensive in terms of FLOPS because there are no floating point operations in Bitcoin.

The only cost of verifying a transaction is that it may cause the UTXO set as a whole to become larger, and as the UTXO set becomes larger, it becomes slightly harder to pull the necessary information from it to verify transactions. It does become harder to sync the blockchain as the UTXO set grows. Otherwise there is no compounding cost of verifying transactions as more transactions are added to the blockchain.

• So if it does get more expensive, what is the right measure (alternative to FLOPS) to use? – wroscoe Dec 4 '17 at 17:29
• Maybe Mhashes/sec? bitcoin.stackexchange.com/questions/1876/… – wroscoe Dec 4 '17 at 19:14
• Any unit of X per second is not a unit that measures computational cost. It measures the computational power of a given machine, which is not the same thing as computational cost. The computational cost would be best represented in Big O notation which is just "units of time" where a unit of time then depends on a machine's computational power. So the cost of validating a transaction would be the sum of the complexities of the hashing operations and the elliptic curve operations. – Andrew Chow Dec 4 '17 at 19:24
• It would be O(1) (aka constant time) w.r.t the number of transactions in the blockchain. This means that the number of transactions in the blockchain as no effect on the computational cost of validating another transaction. The only things that effect a transactions validation are the things contained within the transaction itself. – Andrew Chow Dec 4 '17 at 20:51
• Larger blocks makes blocks more computationally expensive to verify. The size of the blockchain and size of blocks is unrelated to transaction verification. It also becomes harder to sync the blockchain and more expensive to store it. – Andrew Chow Dec 5 '17 at 1:27

computational cost per transaction in bitcoin is ridiculously higher e.g. several orders of magnitude, compared to traditional payment systems. That’s why it doesn’t scale.

• The question is probably misunderstood, please revise. – Junaid Shaikh Jun 8 '18 at 23:45