Child-Pays-for-Parent (CPFP): speed up an incoming Bitcoin transaction
Received coins that won't confirm? If you can spend them, you can speed them up.
The idea
Miners don't look at transactions in isolation. When a transaction (the child) spends an output of an unconfirmed transaction (the parent), the child can only be mined together with or after its parent. Miners therefore evaluate the pair as a package and use the package's combined fee rate. A generous child “pays” for its cheap parent.
The formula
child fee = target fee rate × (parent size + child size) − parent fee
Example: the parent is 141 vB and paid 282 sats (2 sat/vB). The next block needs 12 sat/vB. A simple child is about 110 vB. Required child fee = 12 × (141 + 110) − 282 = 2,730 sats — about 24.8 sat/vB on the child itself. The CPFP calculator does this automatically from the TXID and live fees.
Who can do CPFP?
Anyone who controls an unspent output of the parent: the receiver, or the sender if the parent has a change output. You need a wallet that lets you spend unconfirmed coins and choose which coin to spend (coin control).
How to do it
- Electrum: right-click the incoming transaction → “Child pays for parent”, set the fee and broadcast.
- Sparrow: right-click the transaction → “Increase Effective Fee (CPFP)”.
- Bitcoin Core: send the unconfirmed coin to yourself using coin control with the calculated fee.
- Any wallet with coin control: send the unconfirmed output to your own new address and set the fee from the calculator.
When CPFP is a bad deal
CPFP pays for the parent's whole size. If the parent is a large transaction (for example an exchange batch with hundreds of outputs) you'd be paying for all that block space alone. You also need the output to be large enough to cover the child's fee. In those cases premium acceleration is often cheaper — check its price for free before deciding.
CPFP vs RBF
RBF replaces the transaction and only the sender can do it; CPFP adds a new transaction and the receiver can do it. Comparison table: rebroadcast vs RBF vs CPFP.