<p>This is in a state of flux at the moment and could be changed in the near future (e.g. Bitcoin Core PR <a href="https://github.com/bitcoin/bitcoin/pull/25600" rel="nofollow noreferrer">25600</a>).</p>
<p>There are two aspects to RBF: whether your wallet signals for RBF on transactions it constructs and broadcasts and how your node treats transactions that signal or don't signal for RBF.</p>
<blockquote>
<p>Or does RBF need to be opted into on a per transaction basis?</p>
</blockquote>
<p>Today for transactions that your wallet constructs and broadcasts it <strong>does</strong> need to signal for RBF, yes. Otherwise by default a Bitcoin Core node for example will not accept a RBF for that transaction. <a href="https://github.com/bitcoin/bitcoin/pull/25600" rel="nofollow noreferrer">PR 25600</a> (open and unmerged at the time of writing) seeks to change this and allow a node to accept RBF transactions even if the original transaction wasn't signaling for RBF.</p>
<p>The Bitcoin Core wallet since the merge of <a href="https://github.com/bitcoin/bitcoin/pull/25610" rel="nofollow noreferrer">PR 25610</a> (and included in the upcoming 24.0 release) signals for RBF by default. Other wallets may take a similar or a different approach.</p>

CC BY-SA 4.0
2022-09-24T11:47:20.200Z
Thanks, sounds like the 24.0 release will do what I want . Will “walletrbf=1” in the config file also work?
Aaron
CC BY-SA 4.0
2022-09-24T13:40:02.790Z
Yes that will ensure all transactions constructed from your Core wallet signal for RBF.
Michael Folkson
CC BY-SA 4.0
2022-09-24T16:08:45.943Z
This answer does give some good background on the overall landscape but sidesteps the main question of the asker:  "I would just like every transaction sent by my node to be RBF enabled."
Murch
CC BY-SA 4.0
2022-09-24T16:25:17.993Z
Agreed. I'd recommend you put Murch's answer rather than this as the accepted answer @Aaron :)
Michael Folkson
CC BY-SA 4.0
2022-09-24T10:09:24.263Z
2022-09-24T13:44:09.803Z
2022-09-24T13:44:09.803Z
Michael Folkson
<p><strong>You're looking for <code>walletrbf=1</code>.</strong></p>
<p>You can configure <code>bitcoind</code> to always create transactions that signal replaceability by using the <code>-walletrbf</code> startup option or setting <code>walletrbf=1</code> in the config.</p>
<p>Relatedly, Bitcoin Core creates by default replaceable transactions from the GUI since v0.16.0, and will also create replaceable transactions by default when using RPCs starting with the upcoming v24.0 release (see <a href="https://github.com/bitcoin/bitcoin/pull/25610" rel="nofollow noreferrer">PR 25610</a>).</p>
<p>Orthogonal to your question, some people contend that all transactions should always be replaceable even if the sender did not opt-in by signaling replaceability originally. Also to be released in v24.0, <a href="https://github.com/bitcoin/bitcoin/pull/25353" rel="nofollow noreferrer">PR 25353</a> added the <code>-mempoolfullrbf</code> startup option which would configure a node to permit transactions in its mempool to be replaced per the established replacement rules without requiring the original transaction to have signaled replaceability. If sufficient node operators and miners choose to adopt to this updated mempool policy, the possibility of doing replacement without prior signaling may emerge on the network.</p>

CC BY-SA 4.0
2022-09-25T04:53:48.477Z
Thanks Murch. I was thinking there might be a global cli command to make it constant, in a similar vein to 'settxfee'.  The config didn't even occur to me until I read through the PR's that Michael initially replied with. So thanks guys, crisis averted :)
Aaron
CC BY-SA 4.0
2022-09-24T15:59:30.267Z
2022-09-26T16:50:21.427Z
2022-09-26T16:50:21.427Z
Murch
<p>I can't seem to find any cli commands for this. Is it even possible? Or does RBF need to be opted into on a per transaction basis?
I would just like every transaction sent by my node to be RBF enabled.</p>

<wallet><bitcoind><bitcoin-cli><p2p><replace-by-fee>
Is it possible to set RBF as always-on in bitcoind?
Aaron
# Is it possible to set RBF as always-on in bitcoind?

(Asked by: username_0 on 2022-09-24)

I can't seem to find any cli commands for this. Is it even possible? Or does RBF need to be opted into on a per transaction basis?
I would just like every transaction sent by my node to be RBF enabled.

**Tags:** wallet, bitcoind, bitcoin-cli, p2p, replace-by-fee


---

## 2 answers

### Answer by username_2 on 2022-09-24. Score: 7 | Accepted answer

**You're looking for `walletrbf=1`.**

You can configure `bitcoind` to always create transactions that signal replaceability by using the `-walletrbf` startup option or setting `walletrbf=1` in the config.

Relatedly, Bitcoin Core creates by default replaceable transactions from the GUI since v0.16.0, and will also create replaceable transactions by default when using RPCs starting with the upcoming v24.0 release (see [PR 25610](https://github.com/bitcoin/bitcoin/pull/25610)).

Orthogonal to your question, some people contend that all transactions should always be replaceable even if the sender did not opt-in by signaling replaceability originally. Also to be released in v24.0, [PR 25353](https://github.com/bitcoin/bitcoin/pull/25353) added the `-mempoolfullrbf` startup option which would configure a node to permit transactions in its mempool to be replaced per the established replacement rules without requiring the original transaction to have signaled replaceability. If sufficient node operators and miners choose to adopt to this updated mempool policy, the possibility of doing replacement without prior signaling may emerge on the network.

> **Comments:**
> **username_0**: Thanks username_2. I was thinking there might be a global cli command to make it constant, in a similar vein to 'settxfee'.  The config didn't even occur to me until I read through the PR's that username_1 initially replied with. So thanks guys, crisis averted :)  

---

### Answer by username_1 on 2022-09-24. Score: 0

This is in a state of flux at the moment and could be changed in the near future (e.g. Bitcoin Core PR [25600](https://github.com/bitcoin/bitcoin/pull/25600)).

There are two aspects to RBF: whether your wallet signals for RBF on transactions it constructs and broadcasts and how your node treats transactions that signal or don't signal for RBF.

> Or does RBF need to be opted into on a per transaction basis?

Today for transactions that your wallet constructs and broadcasts it **does** need to signal for RBF, yes. Otherwise by default a Bitcoin Core node for example will not accept a RBF for that transaction. [PR 25600](https://github.com/bitcoin/bitcoin/pull/25600) (open and unmerged at the time of writing) seeks to change this and allow a node to accept RBF transactions even if the original transaction wasn't signaling for RBF.

The Bitcoin Core wallet since the merge of [PR 25610](https://github.com/bitcoin/bitcoin/pull/25610) (and included in the upcoming 24.0 release) signals for RBF by default. Other wallets may take a similar or a different approach.

> **Comments:**
> **username_0**: Thanks, sounds like the 24.0 release will do what I want . Will “walletrbf=1” in the config file also work?  
> **username_1**: Yes that will ensure all transactions constructed from your Core wallet signal for RBF.  
> **username_2**: This answer does give some good background on the overall landscape but sidesteps the main question of the asker:  "I would just like every transaction sent by my node to be RBF enabled."  
> **username_1**: Agreed. I'd recommend you put username_2's answer rather than this as the accepted answer @username_0 :)  

---

