What is Pruning?
A pruned node:- ✅ Downloads and validates the entire blockchain
- ✅ Maintains the full UTXO set for validation
- ✅ Enforces all consensus rules
- ❌ Cannot serve historical blocks to other nodes
- ❌ Cannot rescan the blockchain for old wallet transactions
Pruned nodes are still fully validating nodes. They verify every transaction and block but don’t store all historical data.
Storage Requirements
Full Node vs Pruned Node
| Node Type | Disk Space Required |
|---|---|
| Full node | ~600 GB (growing ~50-100 GB/year) |
| Pruned node (550 MB) | ~10 GB |
| Pruned node (5000 MB) | ~15 GB |
| Pruned node (10000 MB) | ~20 GB |
Enabling Pruning
Manual Pruning
Enable manual pruning without automatic deletion:- Blocks are not automatically deleted
- Use the
pruneblockchainRPC to delete specific blocks - Gives you control over when and what to prune
Automatic Pruning
Set a target disk usage in MiB:In bitcoin.conf
To make pruning permanent, add to yourbitcoin.conf file:
Enabling Pruning on an Existing Node
There is one exception: if your existing node is fully synced, you can enable pruning and it will start pruning old blocks without re-downloading:How Pruning Works
During Initial Block Download
After IBD
Once synchronized:- New blocks are validated and added normally
- Old blocks are automatically pruned to maintain the target size
- The most recent blocks are always retained (at least one week’s worth)
Pruned nodes keep the most recent blocks to help the network and protect against chain reorganizations.
Limitations of Pruned Nodes
Cannot Serve Historical Blocks
Pruned nodes cannot:- Help new nodes with initial block download for old blocks
- Serve historical blocks to other peers
- Participate fully in the archival node network
- Serve recent blocks to peers
- Relay transactions and new blocks
- Fully validate the blockchain
Incompatible with Transaction Index
Pruning is incompatible with-txindex:
Limited Wallet Rescanning
Pruned nodes can only rescan the blockchain from the oldest retained block:Pruning with Assumeutxo
When using assumeutxo with a pruned node:- The minimum
-prunesetting is 550 MiB normally - With assumeutxo, at least 1100 MiB is used temporarily
- Two chainstates exist during background sync
Pruning During IBD
Bitcoin Core prunes more aggressively during initial block download:- Prunes 10% extra to avoid pruning again immediately
- Reduces I/O operations during sync
- Helps IBD complete faster on pruned nodes
Checking Prune Status
Verify pruning is enabled:- pruned: Whether pruning is enabled
- pruneheight: Oldest block still available
- automatic_pruning: If automatic pruning is active
- prune_target_size: Target size in bytes
Best Practices
Choosing a Prune Target
- Minimum (550 MB): For extremely constrained systems
- 1-5 GB: Reasonable for most VPS or embedded systems
- 10+ GB: Allows serving more blocks to peers
- No pruning: If you have the disk space, run a full node
Considerations
- Wallet usage: If you frequently import old addresses or keys, consider a larger target or full node
- Network contribution: Larger prune targets help the network more
- Available space: Always leave extra space beyond your target
- Future growth: Blockchain grows ~50-100 GB per year
Converting Between Pruned and Full
Full Node → Pruned Node
Pruned Node → Full Node
-reindex will not restore pruned blocks. You need to re-download:
Next Steps
Performance Optimization
Further optimize your pruned node
Reduce Traffic
Minimize bandwidth usage
Initial Block Download
Optimize IBD for pruned nodes
Configuration
Learn about other configuration options