Skip to content
LogoLogo

Fees: RBF, CPFP, packages, TRUC

Fees are paid in ARRK: fee = ARRK inputs − ARRK outputs. Mempool policy, modelled on Bitcoin Core 28, decides what relays and how blocks are filled (§13). None of this is consensus; it can evolve without a fork.

Basics

PolicyValue
Minimum relay fee1,000 base units per kB
Maximum standard transaction400,000 bytes
Ancestor limit25
Pool cap300 MB, evicting by descendant-package fee rate
Expiry14 days

GET /v1/fees returns the node's fee estimate. Block templates select by ancestor-package fee rate, so a child that pays well pulls its low-fee parent into the block (child pays for parent).

Replace-by-fee (full RBF)

A transaction that conflicts with pool entries replaces them and their descendants when (BIP 125 limits):

RuleError
at most 100 transactions evictedtoo-many-replacements
it does not spend an output of a transaction it replacesreplacement-spends-conflict
it adds no new unconfirmed inputsreplacement-adds-unconfirmed
its fee rate beats every direct conflictinsufficient-feerate
its fee covers the evicted fees plus 1,000 base units/kB of its own sizeinsufficient-fee

The SDKs' bumpFee rebuilds a transaction with a higher fee rate under these rules.

Packages and CPFP

A parent below the relay fee can enter together with a child that spends it, through POST /v1/txs/package ([parent, child]) or the P2P PACKAGE message, if the package pays the relay fee for both sizes and the child pays for itself (package-fee-too-low). The SDKs' cpfp builds such a child from the stuck transaction's change.

TRUC (version 3)

Version-3 transactions opt into TRUC (BIP 431), which prevents pinning. Sizes are scaled for post-quantum signatures:

RuleError
at most 40,000 bytestruc-tx-size
at most one unconfirmed ancestortruc-too-many-ancestors
no chaining with non-TRUC unconfirmed transactionstruc-mixed
a TRUC child is at most 16,000 bytestruc-child-too-big

A TRUC child that pays more may evict an existing sibling (sibling eviction). Consensus treats version 3 like version 2.