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: 2021-08-17

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.
  • Allows receiving to bech32m addresses
    Allows the generation of bech32m (P2TR) 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.
  • Allows sending to bech32m addresses
    Allows sending to bech32m (P2TR) 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.

BitGo's web wallet UI defaults to P2SH-wrapped segwit addresses. Visually, the segwit logo is displayed next to segwit addresses with a tooltip indicating "Wrapped Segwit". While bech32 receive addresses are  not possible in the UI currently, bech32 receive addresses can be generated using the API.
BitGo’s web wallet UI defaults to P2SH-wrapped segwit addresses. Visually, the segwit logo is displayed next to segwit addresses with a tooltip indicating “Wrapped Segwit”. While bech32 receive addresses are not possible in the UI currently, bech32 receive addresses can be generated using the API.

BitGo's web wallet allows sending to bech32 addresses.
BitGo’s web wallet allows sending to bech32 addresses.


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-12-06

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.
  • No unconfirmed transactions
    Neither the original nor replacement transactions are shown in the transaction list. Unconfirmed transactions are probably not supported.

Sending support

  • Signals BIP125 replaceability when sending transactions
    Allows sending of BIP125 opt-in-RBF transactions in the interface.
  • Sent transaction labeled replaceable in list
    Visually indicates that an outgoing transaction has signaled RBF.
  • Sent transaction labeled replaceable in transaction details
    Visually indicates that a sent transaction has signaled RBF when viewing the transaction details.
  • 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 Transaction - Default send transaction screen with fee options expanded. No RBF options.
Sending Transaction - Default send transaction screen with fee options expanded. No RBF options.

Sending Transaction - Send confirmation screen. Fee noted. No RBF note. Note Transaction was not sent with RBF flag enabled.
Sending Transaction - Send confirmation screen. Fee noted. No RBF note. Note Transaction was not sent with RBF flag enabled.


Attempting Transaction Replacement - Transaction list screen showing sent transaction. No RBF options. Note BitGo uses the Smartbit explorer to show transaction details.
Attempting Transaction Replacement - Transaction list screen showing sent transaction. No RBF options. Note BitGo uses the Smartbit explorer to show transaction details.

Receiving Transaction Signaling RBF - Unconfirmed transactions do not appear in BitGo transactions list.
Receiving Transaction Signaling RBF - Unconfirmed transactions do not appear in BitGo transactions list.


Receiving Transaction Signaling RBF - Incoming transaction email. No RBF note.
Receiving Transaction Signaling RBF - Incoming transaction email. No RBF note.

Receiving Replacement Transaction - Since no unconfirmed transaction appear, neither original nor replacement show until the replacement transactions confirms.
Receiving Replacement Transaction - Since no unconfirmed transaction appear, neither original nor replacement show until the replacement transactions confirms.