Miner fees

From Bitcoin Wiki
Revision as of 03:33, 9 July 2013 by Sgornick (talk | contribs) (Settings: Update paytxfee and mintxfee to reflect values from v0.8.2)
Jump to: navigation, search
Receiving the fees from hundreds of transactions (0.44 BTC)





Reference Implementation

The following sections describe the behavior of the reference implementation as of version 0.8.2. Earlier versions treated fees differently, as do other popular implementations.


A transaction will be sent without fees if these conditions are met:

  • It is smaller than 10 thousand bytes.
  • All outputs are 0.01 BTC or larger.

Otherwise, the reference implementation will round up the transaction size to the nearest thousand bytes and then add a fee of 0.0001 BTC per thousand bytes[1]. Users may override the default 0.0001 BTC/kb fee setting, but cannot control transaction fees for each transaction. Bitcoin-Qt does prompt the user to accept the fee before the transaction is sent (they may cancel the transaction if they are not willing to pay the fee).

Note that a typical transaction is 500 bytes, so the typical transaction fee is 0.0001 BTC, regardless of the number of bitcoins sent.

Including in Blocks



Then transactions that pay a fee of at least 0.0005 BTC/kb are added to the block, highest-fee transactions first, until the block is not more than 250.000 bytes big.



The reference implementation's rules for relaying transactions across the peer-to-peer network are very similar to the rules for sending transactions, but a smaller value of 0.0001 BTC is used to determine whether or not a transaction is considered "Free". To prevent "penny-flooding" denial-of-service attacks on the network, the reference implementation caps the number of free transactions it will relay to other nodes to (by default) 15 thousand bytes per minute.


Setting Default Value (units)
paytxfee 0.0001 (BTC)
limitfreerelay 15 (thousand bytes per minute)
mintxfee 0.0001 (BTC)
blockmaxsize 250000 (bytes)
blockminsize 0 (bytes)
blockprioritysize 27000 (bytes)

Technical info


priority = sum(input_value_in_base_units * input_age)/size_in_bytes




See Also