A Bitcoin full node downloads 600+ GB during initial sync and uses 200+ GB/month ongoing. This guide covers exact bandwidth requirements by connection type, how to manage upload costs, and whether pruning helps.
Running a Bitcoin node is one of the most powerful ways to participate in the network. But when you start researching, you'll encounter a choice: run a full archival node that stores the entire blockchain history, or a pruned node that keeps only recent blocks.
Most people should run a pruned node. Here's the complete breakdown.
What Is a Bitcoin Full Node?
A Bitcoin full node independently downloads and verifies every block and transaction ever added to the Bitcoin blockchain. It maintains the complete UTXO set (unspent transaction outputs) and can answer queries about any transaction back to the genesis block.
Storage requirements (2026): ~650–700 GB and growing at ~60–70 GB/year
When people say "run your own node," they're usually talking about a full node. It's the gold standard: no trust in anyone else's data, complete history, able to serve other nodes.
What Is a Pruned Node?
A pruned Bitcoin node downloads and verifies the entire blockchain but then deletes old block data, keeping only the most recent blocks and — crucially — the full UTXO set.
A pruned node:
- Still verifies every block from genesis (just discards the raw data afterward)
- Maintains the full UTXO set (so it can validate any new transaction)
- Stores only recent blocks (configurable, minimum ~550 MB)
- Cannot serve historical block data to other nodes
Storage requirements: As low as 2–10 GB, depending on configuration
Full Node vs. Pruned Node: Comparison
| Feature | Full Archival Node | Pruned Node |
|---|---|---|
| Verifies all transactions | Yes | Yes |
| Maintains UTXO set | Yes | Yes |
| Validates new blocks | Yes | Yes |
| Stores complete history | Yes | No |
| Serves historical data to peers | Yes | No |
| Storage (2026) | ~650–700 GB | 2–10 GB |
| Storage growth/year | ~60–70 GB | Stays flat |
| Hardware requirement | High (large SSD) | Low (any storage) |
| Helps network bootstrapping | Yes | No |
| Trustless for your wallet | Yes | Yes |
| Runs on Raspberry Pi 4 | Technically (slowly) | Yes, easily |
What Pruning Does NOT Compromise
This is the most important point: pruning does not reduce your security or trustlessness for personal use.
Your pruned node:
- Independently verifies every block from the beginning
- Maintains the complete UTXO set
- Rejects invalid transactions
- Connects your Bitcoin wallet trustlessly
Pruning only affects your node's ability to serve historical data to other nodes. For your own use — verifying your wallet transactions, not trusting third parties, participating in network consensus — a pruned node is fully equivalent to a full node.
When You Need a Full Archival Node
A full archival node is specifically needed if you:
- Run a Bitcoin exchange or service that needs to query arbitrary historical transactions
- Run an Electrum server (like Electrs or Fulcrum) to serve wallet queries to multiple users
- Are a researcher or developer who needs historical blockchain data
- Want to help bootstrap new nodes joining the network
- Run a block explorer or similar infrastructure
If none of these apply to you, a pruned node serves your needs perfectly.
How to Configure Pruning in Bitcoin Core
Pruning is built into Bitcoin Core. To enable it, add to your bitcoin.conf:
prune=550
The number is in megabytes. The minimum is 550 MB. Common settings:
| Setting | Storage Used | Weeks of History Kept |
|---|---|---|
prune=550 | ~550 MB | ~2–3 weeks |
prune=2000 | ~2 GB | ~8–10 weeks |
prune=10000 | ~10 GB | ~40+ weeks |
prune=0 (default) | ~650 GB | All history |
For most personal users, prune=550 or prune=2000 is ideal. Your full UTXO set is always maintained regardless of this setting.
Hardware Recommendations
For a Pruned Node
Almost any hardware works:
- Raspberry Pi 4 (4 GB RAM) — adequate for pruned node
- Raspberry Pi 5 (8 GB RAM) — recommended for better performance
- Any old laptop or desktop
- Storage: Any reliable USB drive or SSD with 10+ GB free
For a Full Archival Node
Requires more serious hardware:
- Minimum: 1 TB SSD (but will need upgrading in ~5 years)
- Recommended: 2 TB NVMe SSD
- RAM: 8+ GB recommended
- Dedicated devices: Umbrel Home, Start9 Server One, RaspiBlitz
Pre-Built Node Options: Pruned vs. Full
Umbrel (umbrel.com): Supports both modes. Default installation often starts with pruned and lets users upgrade to full archival if they add storage.
Start9 Server One: Runs full archival node by default; 2 TB SSD included.
RaspiBlitz: Full archival node focused; requires 1 TB+ SSD.
Nodl: Full archival node hardware.
myNode: Supports both modes.
The Syncing Question: Initial Block Download
Whether pruned or full, your node must perform an Initial Block Download (IBD) — downloading and verifying the entire blockchain from the beginning.
This takes the same time regardless of pruning because Bitcoin Core verifies everything before pruning old data.
Typical IBD times (2026):
- Fast desktop/server with NVMe SSD: 6–12 hours
- Raspberry Pi 5: 24–48 hours
- Raspberry Pi 4: 3–5 days
- Slow HDD: 1–2 weeks
After IBD completes, pruning engages and old block data is deleted. Ongoing sync is minimal bandwidth.
Lightning Network Nodes: Full vs. Pruned
If you want to run a Lightning Network node, the requirements change:
- LND works with pruned nodes (it maintains its own channel graph)
- Core Lightning (CLN) works with pruned nodes
- Eclair works with pruned nodes
However, running Lightning with a pruned node may require careful configuration. Most pre-built node packages (Umbrel, Start9, RaspiBlitz) handle this automatically.
Which Should You Run?
Run a pruned node if:
- You want to verify your own transactions trustlessly
- You have limited storage (under 500 GB available)
- You're using a Raspberry Pi or low-powered device
- You just want to stop using SPV wallets or Electrum connected to random servers
- You're new to running nodes
Run a full archival node if:
- You have 2 TB+ SSD available
- You want to run an Electrum server for your whole household
- You want to help the network by serving historical data
- You're building Bitcoin infrastructure or services
Verdict: For 95% of Bitcoin holders who want sovereignty without running data center infrastructure, a pruned node is the right choice. Set prune=2000 in Bitcoin Core, sync once, and you have a fully sovereign Bitcoin node on minimal hardware.
Frequently Asked Questions
Is a pruned node less secure? No. A pruned node verifies every block from genesis — it just deletes the raw block data afterward. Your UTXO set is complete and your validation is identical to a full node.
Can I switch from pruned to full without re-syncing? Unfortunately, no. If you want to switch from pruned to full archival, you must re-download the entire blockchain from scratch.
Can a pruned node mine Bitcoin? Bitcoin mining requires valid block templates, not historical data. A pruned node technically can mine but the economics of mining require specialized ASIC hardware and pool connections — node storage type is irrelevant.
Do I need a static IP to run a node? No. You can run a node on a dynamic IP, but for best connectivity, configure your router's port forwarding for port 8333. A Tor-only node is also an option for privacy.
How much bandwidth does a Bitcoin node use? A fully connected node (8 outbound + multiple inbound connections) uses roughly 100–200 GB/month for a full archival node, and somewhat less for a pruned node. You can limit connections and bandwidth in bitcoin.conf.