Consolidating Transaction Output

Prior to SegWit, when blocks were at their transaction maximum and major wallets were not transaction batching, many wallets were generated and discarded with minuscule sums. In the Bitcoin source code, these balances are referred to as “dust” (the following comment is adjusted for formatting):

“Dust” is defined in terms of dustRelayFee, which has units satoshis-per-kilobyte. If you’d pay more in fees than the value of the output to spend something, then we consider it dust.

A typical spendable non-segwit txout is 34 bytes big, and will need a CTxIn of at least 148 bytes to spend: so dust is a spendable txout less than 182 * dustRelayFee / 1000 (in satoshis). 546 satoshis at the default rate of 3000 sat/kB. A typical spendable segwit txout is 31 bytes big, and will need a CTxIn of at least 67 bytes to spend: so dust is a spendable txout less than 98 * dustRelayFee / 1000 (in satoshis). 294 staoshis at the default rate of 3000 sat/kB.

When a long term Bitcoin user traces their transaction history through their various wallets, they may find an accumulation of mirco-balances. These balances may be accumulated through batched transactions, but the user ought to be aware that consolidating dust balances can reduce anonymity. Through batching, many wallets have eliminated the generation of dust. Ideally these micro-balances will be eliminated altogether as fee prediction becomes more precise.

Support us and the authors of this article by donating to the following address:

3HDUCcRnqSS61cSiHsEyXRE4YqA9tyjxMU

Comments powered by Talkyard.