"Dust" Is a Matter of Economics and Policy
The term "dust" generally refers to outputs that are too small relative to the cost of spending them in the future. Nodes may refuse to relay transactions containing such outputs based on local policies; however, policy-based judgments should not be conflated with consensus-level validity. When a wallet displays a "small output" warning, examine the specific policy and output type it references—do not treat any arbitrary figure found online as a universal, permanent threshold applicable to all script types and all nodes.
Why Different Address Types Vary
Spending an output requires specific input data. Different script types and estimation methods result in varying transaction sizes, and relay policies also factor in specific fee-rate parameters. Consequently, the same amount (in satoshis) might trigger a warning for one type of output but not for another. Do not simply compare the received amounts; also take note of the script type, the node version, and the rules applied by the wallet when constructing the transaction.
Being Relayable Does Not Mean It Is Worth Spending
Even if an output passes relay policy checks, spending it individually—especially during periods of network congestion—may be uneconomical. For instance, if you hold many tiny outputs, a transaction would require a larger number of inputs, potentially causing transaction fees to consume a significant portion of the total value. Conversely, while consolidating UTXOs during periods of low transaction fees can reduce the burden of future inputs, merging addresses increases on-chain linkage. One should not sacrifice privacy or compromise fund management practices solely to save on fees.
How to handle small, unsolicited incoming transfers
Small, unsolicited transfers may be simple mistakes, or they could be used for address linkage analysis. Do not assume an attack based solely on the amount, and—crucially—never click on any URLs included in transaction memos. If your wallet supports "coin control," mark these inputs from unknown sources and avoid spending them alongside your other funds. Seeing a small amount in your wallet does not mean your device has been compromised; the real risk lies in whether you subsequently interact with it, grant authorizations, or leak sensitive information.
Troubleshooting steps for failed or stuck transactions
First, verify the payment amount, the change amount, and the transaction fee; check whether the wallet has generated any "dust" (excessively small outputs) as change. Often, the issue can be resolved by slightly adjusting the payment amount or allowing the wallet to re-select the inputs; in some cases, using a "send all" (sweep) function will alter the transaction structure. Do not repeatedly broadcast the same problematic raw transaction. If a third party asks you to import your private key or purchase "activation credits" to bypass "dust" limits, stop immediately and consult the official documentation for your wallet.
Documenting verifiable conditions
Keep a record of the asset unit, script type, planned number of inputs and outputs, estimated transaction size, current fee rate, and any error messages. Note the wallet version and the time of the estimate to avoid confusing historical fee rates with current costs. When explaining "dust" issues, cite the specific policy implementation and the relevant version. This text does not guarantee minimum transaction fees, nor should the fact that a node has relayed a transaction be taken as definitive proof that the payment has been successfully settled.
