When looking at Bitcoin unconfirmed transactions, I'm trying to distinguish between txs that are likely to confirm (whether that be in the first next block or in 2 hours) versus txs that are likely to be replaced, or never to confirm at all.

Obviously, txs with the opt-in RBF flag fall in the latter category.

But I guess there are other criteria, such as:

  • having an extremely low fee, or even zero fee.
  • Having lots of dust outputs.
  • Depending on unconfirmed inputs.

Anything else I should take into consideration? What other factors could make a tx less likely to end up confirmed?

For example, besides dust output, do dust (i.e. many small) inputs make a tx less sure to confirm? (other than more inputs causing larger tx data, thus resulting in a lower fee when measured in satoshis per KB)

  • Classifying 0-conf transactions based on whether or not it has RBF or any of the above-mentioned characteristics is inappropriate. A transactions that is least likely to be double-spend or confirmed is one that incentivises miners least to include into a block. One could equally argue a transaction that satisfies the negation of all your above-mentioned properties would still be "suspicious" if miners were purely incentivised to mint based on transaction fees alone.
    – rny
    May 22, 2016 at 23:29

1 Answer 1


Replacing transactions without confirmation is relatively easy. I would tag every transaction without confirmation as "suspicious".

RBF is a policy and miners could also replace transaction that do not sign opt-in-RBF.

Best way to check if a 0-conf transactions will be mined soon:

  • check nSequence number (only accept 0-conf if nSequence number is INT_MAX)
  • check the transactions fee-rate and compare it with your estimated fee (requires a mempool/bitcoin-core)
  • Calculate the risks: every 0-conf transaction can be replaced/double-spent! High value items should not be "dispatched" < 6 confirmations (IMO).
  • Thanks. Just to be sure, did you actually mean: if nSequence number is INT_MAX or INT_MAX-1 ? (that's 0xFFFFFFFF or 0xFFFFFFFE). If I'm not mistaken, the opt-in RBF is flag consists of an nSequence below INT_MAX-1 ?
    – RocketNuts
    Jun 1, 2016 at 14:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.