13

What is the minRelayTxFee?
What is it used for, what's the default value and how does the value change?

0
15

The minRelayTxFee specifies a feerate acting as a lower bound for a node's mempool. A node will not admit unconfirmed transactions below that feerate to its mempool and thus will not relay them to its peers. The minRelayTxFee is a configuration setting and can be specified by each node operator independently. The value only impacts unconfirmed transactions, transactions included in a block are processed even when they do not meet the minRelayTxFee. Note that contrary to its name's implication, the minRelayTxFee is not an absolute fee, but a feerate.

The current default value for the minRelayTxFee in Bitcoin Core is 1000 satoshi/kB (= 1 sat/B). A node operator may specify a different value via the startup parameter -minrelaytxfee=<amt> or the configuration parameter minrelaytxfee=<amt> which takes an <amt> in [BTC/kB].

The minRelayTxFee also serves as the basis to calculate the minimum cost increments for replacement transactions per BIP-125 (Opt-in RBF). It was also previously used to calculate the dust limit which has since been decoupled into a separate feerate called DUST_RELAY_TX_FEE with a default value of 3000 sat/kvB (H/T Darius).

minRelayTxFee should not be confused with:

  • minTxFee, which is a wallet configuration setting that sets a lower bound when creating new transactions
  • mempoolminfee, which is an independent lower bound for mempool acceptance that dynamically increases when the mempool limit is exceeded

Bitcoin Core 0.13.0 introduced a new, optional feefilter P2P message, which will tell neighboring nodes not to send transactions below the filter's feerate. Older nodes do not communicate their minimum feerate, but rather just drop incoming transactions that doesn't pass it.

You may retrieve the current values for your node by calling the getmempoolinfo RPC.

2
  • What's the default value of feefilter? I searched the code but didn't find an obvious constant. Also didn't see it mentioned in the BIP. ty
    – Donn Lee
    Apr 8 at 20:10
  • @DonnLee: It's a protocol message between peers setting a lower bound on the feerate for transaction forwarding: en.bitcoin.it/wiki/Protocol_documentation#feefilter
    – Murch
    Apr 8 at 21:30
5

'minRelayTxFee' is the node's minimum reward (BTC/KB) for a transaction "transmission" (relay). In the p2p network there could be a node (A) with a minRelayTxFee setted at 0,0001 and a node (B) with a minRelayTxFee setted at 0,0003. In the case of a transaction of 2 KB with a fee of 0,0002 , this tx will be included in the A's mempool and not in the B's mempool.

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.