Thanks for the relay size correction and sighash and OP_RETURN data suggestions. I love giving users de-dusting their wallets the option to help others by combining higher fee-rate de-dusting txs with lower rate de-dusting txs.
I’ve created a simple “ddust” CLI app that demonstrates how to create these sort of de-dusting transactions. If there’s interest I’ll add the logic to combine unconfirmed de-dust txs.
I also fixed (I hope) my tx size and fee rate estimates:
Scenario 1: P2WPKH
- base size: 65 B = 10 B (overhead) + 41 B (P2WPKH input) + 14 B (OP_RETURN output, “ash” data)
- witness data: 108 B
- virtual size: 92.5 vB
- 294, 300, 325 sats input, fee rate is ~ 3.16, 3.23, 3.49 sats/vB
- example (signet) ddust tx
Scenario 2: P2SH 2-of-3 multisite
- base size: 315 B = 10 B + 295 B + 10 B (OP_RETURN output, no data)
- witness data: 0
- virtual size: 315 vB
- 294, 300, 325 sats input, fee rate is ~ 0.93, 0.95, 1.03 sats/vB
Scenario 3: P2WSH 2-of-3 multisig
- base size: 65 B = 10 B + 41 B + 14 B (OP_RETURN output, “ash” data)
- witness data: 255 B
- virtual size: 129.25 vB
- 294, 300, 325 sats input, fee rate is ~ 2.28, 2.33, 2.52 sats/vB