Electrum Transaction Rejected: Dust Threshold & Server Script Fix
An Electrum error stating "Transaction was rejected by network rules (dust)" occurs when a transaction output has a value smaller than the Bitcoin network dust limit. For standard P2PKH and P2SH script outputs, the dust threshold is 546 satoshis; for native SegWit (P2WPKH), it is 330 satoshis; for Taproot (P2TR), it is 354 satoshis. Outputs below these amounts cost more in fees to spend than they are worth and are rejected. Increase output amounts.
# Root Cause & Technical Architecture
Bitcoin Core defines "dust" as any output whose value is less than the cost of spending it at the `dustRelayFee` rate (3,000 satoshis/kB). Creating an output below this limit (e.g. sending 100 satoshis) violates standard network relay rules, causing ElectrumX backend servers and full nodes to return `error: transaction was rejected by network rules [dust]`. If the server connection drops during rejection, Electrum reports "Server did not answer".
# 4-Step Actionable Diagnostic Protocol
Step-by-Step ResolutionCheck Output Values Against Script Dust Limits
Ensure all recipient and change outputs exceed 546 sats for Legacy (1...), 330 sats for SegWit (bc1q...), and 354 sats for Taproot (bc1p...).
Consolidate Dust Change into Miner Fees
If the change amount is smaller than the dust threshold, configure Electrum to add the remaining satoshis to the miner fee instead of creating change.
Switch ElectrumX Backend Server
In Electrum, open Tools > Network > Server, uncheck "Select server automatically", and manually connect to a responsive, fully synced node.
Inspect OP_RETURN Metadata Payload Limits
If attaching OP_RETURN data, ensure the script contains 0 value output. Attaching non-zero satoshis to OP_RETURN violates standard dust policy.
# Diagnostic Verification Code / Command
textBitcoin Script Type Dust Threshold Reference:
┌─────────────────────────┬──────────────┬────────────────┐
│ Address Script Type │ Prefix │ Dust Limit │
├─────────────────────────┼──────────────┼────────────────┤
│ Legacy P2PKH │ 1... │ 546 satoshis │
│ Nested SegWit P2SH-P2WPKH│ 3... │ 540 satoshis │
│ Native SegWit P2WPKH │ bc1q... │ 330 satoshis │
│ Taproot P2TR │ bc1p... │ 354 satoshis │
└─────────────────────────┴──────────────┴────────────────┘
Rule: Any output value < Dust Limit triggers instant network rejection. Launch Derivation Path Inspector
Execute client-side cryptographic simulation and parameter checks safely in your browser via native WebCrypto without sending private keys or mnemonics over the wire.
Read Full Investigation & Recovery Workflow
Explore complete architectural diagrams, edge-case failure trees, and detailed post-mortem analysis in our verified deep guide.
# Related Diagnostic Codes in Solana & Bitcoin
Related Hex StatusesSolana Error 0x1771 (6001): Slippage Tolerance Exceeded Fix
Fix Solana error 0x1771 (decimal 6001) Slippage Tolerance Exceeded. Troubleshoot Jupiter and Raydium swap reverts, priority fees, and price volatility.
Solana Error 0x1: Insufficient Lamports for Rent Exemption Fix
Fix Solana Custom Program Error 0x1 Insufficient Funds. Troubleshoot missing lamports for account rent exemption, token transfers, and fee payer balances.
Solana Anchor Error 0xbc4 (3012): AccountNotInitialized Fix
Fix Anchor error 0xbc4 (decimal 3012) AccountNotInitialized. Resolve missing Associated Token Accounts (ATA), program state creation, and pre-instructions.
# Frequently Asked Questions
FAQ SchemaWhy does Bitcoin have a dust limit?
The dust limit prevents blockchain bloat by disincentivizing outputs whose economic value is lower than the cryptographic fee required to spend them.
Why did Electrum say "Server did not answer" on a dust error?
When an ElectrumX server rejects a transaction due to network rules, it may terminate the RPC pipe, causing Electrum to report a server timeout.
Can I send an OP_RETURN output with zero satoshis?
Yes. OP_RETURN outputs are explicitly intended for data carrier storage and must carry a value of exactly 0 satoshis to comply with network rules.