Segwit | Replace-by-Fee

Segwit Addresses

What are segwit addresses? Transactions that spend bitcoins secured by segregated witness (segwit) use less block weight than equivalent non-segwit (legacy) transactions, allowing segwit transactions to pay less total fee to achieve the same feerate as legacy transactions.

Tested: on web

Tested on: 2019-04-11

Receive support

  • Allows receiving to P2SH-wrapped segwit
    Allows the generation of P2SH-wrapped (either P2WPKH or P2WSH) segwit receiving addresses.
  • Does not allow receiving to bech32 segwit addresses
    Does not allow the generation of bech32 native (either P2WPKH or P2WSH) segwit receiving addresses.
  • Default receiving address is P2SH-wrapped P2WPKH
    This service generates P2SH-wrapped P2WPKH segwit receiving addresses by default.

Send support

  • Allows sending to bech32 P2WPKH addresses
    Allows sending to bech32 P2WPKH native segwit addresses.
  • Allows sending to bech32 P2WSH addresses
    Allows sending to bech32 P2WSH native segwit addresses.
  • Creates bech32 change addresses
    When sending, generates bech32 (either P2WPKH or P2WSH) segwit change addresses.

Usability

Click on a thumbnail for a larger image or to play its video.

Coinbase does not have an explicit option for receiving to bech32. Coinbase uses p2sh wrapped segwit addresses for receiving.
Coinbase does not have an explicit option for receiving to bech32. Coinbase uses p2sh wrapped segwit addresses for receiving.

Coinbase allows sending to either wrapped or native segwit addresses. There is also visual validation of the address format.
Coinbase allows sending to either wrapped or native segwit addresses. There is also visual validation of the address format.


Transaction details screen shows the bech32 address. However, the link for that address uses a block explorer (BlockCypher) which shows an error as it does not support bech32 addresses.
Transaction details screen shows the bech32 address. However, the link for that address uses a block explorer (BlockCypher) which shows an error as it does not support bech32 addresses.

Coinbase uses bech32 for their change addresses, even when the send is going to non bech32.
Coinbase uses bech32 for their change addresses, even when the send is going to non bech32.


Replace-by-Fee (RBF)

What is Replace-by-Fee (RBF)? An unconfirmed transaction can be replaced by another version of the same transaction that spends the same inputs. Most full nodes support this if the earlier transaction enables BIP125 signaling and the replacement transaction increases the amount of fee paid. In terms of block chain space used, this is the most efficient form of fee bumping.

Tested: on web

Tested on: 2018-11-05

Receiving support

  • Notification does not note RBF
    Notification of incoming transaction does not note that the transaction signals RBF.
  • Received transaction not labeled replaceable in list
    Does not visually indicate that an incoming transaction has signaled RBF.
  • Received transaction not labeled replaceable in transaction details
    Does not visually indicate that a received transaction has signaled RBF when viewing the transaction details.
  • Shows original transaction only
    Only the original transaction is shown in transaction list. Replacement transactions are not shown.

Sending support

  • Does not signal BIP125 replacability when sending transactions
    Does not allow sending of BIP125 opt-in-RBF transactions in the interface.
  • Not tested: Does transaction list show whether sent transactions signal RBF?
    We were not able to test this because sending a BIP125 signaling transaction is not supported.
  • Not tested: Does transaction details page show whether received transaction signals RBF?
    We were not able to test this because sending a BIP125 signaling transaction is not supported.
  • Not tested: Are replacement and original sent transactions displayed?
    We were not able to test this because sending a BIP125 signaling transaction is not supported.

Usability

Click on a thumbnail for a larger image or to play its video.

Sending RBF Transaction - Default send transaction screen.
Sending RBF Transaction - Default send transaction screen.

Sending RBF Transaction - Send transaction confirmation screen. Shows fees. No RBF flag. Transaction sent without RBF signaled.
Sending RBF Transaction - Send transaction confirmation screen. Shows fees. No RBF flag. Transaction sent without RBF signaled.


Bumping RBF Transaction - Transaction not sent with RBF so no bumping possible.
Bumping RBF Transaction - Transaction not sent with RBF so no bumping possible.

Bumping RBF Transaction - After a period of time the View Transaction link shows up.
Bumping RBF Transaction - After a period of time the View Transaction link shows up.


Receiving RBF Transaction - Incoming RBF transaction list. No RBF label.
Receiving RBF Transaction - Incoming RBF transaction list. No RBF label.

Receiving RBF Transaction - Incoming RBF transaction details. No RBF label. Further transaction details are at BlockCypher explorer which does not label RBF transactions.
Receiving RBF Transaction - Incoming RBF transaction details. No RBF label. Further transaction details are at BlockCypher explorer which does not label RBF transactions.


Receiving Bumped RBF Transaction - After bumped transaction confirmed, the bumped transaction then shows up and is credited. Original transactions stay as pending (even after 100 confirmations).
Receiving Bumped RBF Transaction - After bumped transaction confirmed, the bumped transaction then shows up and is credited. Original transactions stay as pending (even after 100 confirmations).