What Is a Dust Transaction in Crypto? Bitcoin UTXO Basics
A dust transaction is one that creates or spends an output so small that the fee to spend it would be larger than the output itself is worth. Bitcoin Core treats such outputs as dust: at its default settings, anything below 546 satoshis sent to a legacy address or 294 satoshis sent to a native SegWit address. Dust ends up in wallets as leftover change, as tiny payments from faucets and services, or on purpose, in dusting attacks that try to link a person’s addresses.
Dust Limits at a Glance
| Output type | Address starts with | Dust limit at 3 sat/vB |
|---|---|---|
| Legacy (P2PKH) | 1 | 546 satoshis |
| Native SegWit (P2WPKH) | bc1q | 294 satoshis |
| Taproot (P2TR) | bc1p | 330 satoshis |
The first two limits are spelled out in Bitcoin Core’s policy code, and the same formula gives 330 satoshis for a Taproot output. Bitcoin address types explains the formats.
How Small Is Too Small to Spend?
In Bitcoin, value sits in unspent transaction outputs (UTXOs), and every output you spend later has to be added to a transaction as an input, which takes space and therefore fees. Bitcoin Core counts an output as dust when spending it would cost more than it is worth at its dust relay fee rate of 3 sat/vB. The cost covers the output itself plus the input needed to spend it, so the limit depends on the output type: a legacy output of 34 bytes needs an input of at least 148 bytes to spend, 182 bytes in all, which at 3 sat/vB comes to 546 satoshis.
Outputs above the dust limit can still be uneconomical. Bitcoin Optech defines uneconomical outputs as outputs worth less than the fees it will cost to spend them, which depends on fee rates at the time. A native SegWit input takes about 68 vbytes, so at 15 sat/vB spending it costs about 1,000 satoshis: a 1,000-satoshi output is not dust by policy, but it is worth nothing in a busy mempool.
Where Do Tiny Outputs Come From?
Change Left Over From Payments
When the coins a wallet spends don’t match the payment exactly, the remainder comes back to the sender as change. Sometimes that change is so small that it is barely worth spending.
Many Small Payments
Receiving lots of low-value payments over time, from faucets, rewards or micropayments, builds up a pile of small UTXOs. Each one adds an input, and a fee, when you eventually spend it.
Dusting Attacks
An attacker sends tiny amounts, usually just above the dust limit so that the transactions relay, to addresses that have already appeared on the blockchain. If a wallet later spends that dust together with its other coins, the transaction shows that the addresses belong to the same owner, a privacy leak that Bitcoin Optech describes in its topic on output linking. The defense is simple: don’t spend unexpected dust. Freeze it in your wallet’s coin control, or leave it alone.
Why Do Small Outputs Cost More Than They Are Worth?
Despite the tiny amounts involved, dust outputs cause real problems:
Extra Load on the Blockchain
Every UTXO stays in the set of unspent outputs that each full node keeps until someone spends it. Dust that is never spent bloats that set forever, which is why nodes refuse to relay transactions that create it.
Higher Transaction Costs
Fees in Bitcoin depend on the size of the transaction in virtual bytes, not on the value transferred. A transaction with many small inputs is larger and therefore more expensive to confirm.
Slower Wallet Performance
Wallets that hold hundreds of tiny outputs can slow down when building transactions, and the clutter complicates fee estimation and coin selection.
How Do You Clean Up Small UTXOs?
Leave Dust Out of Payments
Spending a single dust output on its own costs more in fees than the output is worth. Many wallets skip such outputs when they pick coins automatically, and Bitcoin Core nodes won’t relay a transaction that would create new dust.
Consolidate When Fees Are Low
When the mempool is quiet and fee rates drop, you can combine several small outputs into one larger UTXO, which cuts the cost of future payments. Consolidation is the opposite of batching payments: many inputs become one output instead of one transaction paying many people. Keep in mind that it links the consolidated addresses on the blockchain, so never consolidate dust that arrived from strangers.
Use Coin Control
Desktop wallets such as Bitcoin Core, Electrum and Sparrow let you see individual UTXOs, choose which ones a transaction spends and freeze the ones you want to keep out of it.
Check for Inscriptions First
Small outputs can carry Bitcoin Ordinals inscriptions. A wallet that doesn’t track individual sats treats an inscribed output like any other coin, so a cleanup can spend the inscription as part of a fee or a consolidation.
Is Dust Part of Bitcoin’s Consensus Rules?
No. Dust is governed by node policy and mempool behavior, not by Bitcoin’s consensus rules: a block containing dust outputs is still valid. Bitcoin Core refuses to relay or mine new transactions that create dust, and node operators can change the threshold with the -dustrelayfee setting. The limit depends on the output type and on that configured fee rate, not on current network fees.
Since Bitcoin Core 29.0, there is one narrow exception called ephemeral dust: a zero-fee transaction may carry a single dust output, as long as that output is spent in the same package by a child transaction.
Dust involves tiny amounts of bitcoin, but it touches privacy, fees and the size of every node’s database. Knowing where it comes from and when to leave it alone keeps a wallet clean, cheap to use and harder to trace.