In this article
- TL;DR
- Why Switzerland is a good place to run a node
- Step 1 Select Hardware for Your Swiss Home Node
- Step 2 Choose Your Node Software
- Step 3 Plan Bandwidth and Storage Before Sync
- Step 4 Configure Your Swiss ISP Router for Port 8333
- Step 5 Set Up Tor for Node Privacy
- Step 6 Connect bitcoin-cli and Integrate Your Wallet
- Step 7 Run Electrs or Fulcrum as Your Personal Electrum Server
- Step 8 Back Up Your Wallet and Configuration
- The data sovereignty argument for Switzerland
I work in the crypto self-custody space and the question I get from Swiss Bitcoin holders after they have moved to a hardware wallet is always the same: can I go further? Running your own Bitcoin node is the answer. It is the last piece of the sovereignty stack. Your hardware wallet holds your keys. Your node validates the rules.
TL;DR
A Bitcoin full node is the only way to verify that the Bitcoin sent to your address follows the rules you agree with, without trusting anyone else to tell you. A Raspberry Pi 5, a 2 TB NVMe SSD, and Bitcoin Core 30.0 are all the hardware and software you need. Swiss ISP configuration is straightforward: one port-forwarding rule for TCP 8333 in your router. Add Tor for privacy. Add Electrs or Fulcrum if you want to connect Electrum or Sparrow to your own backend. The full setup takes an afternoon plus 3 to 7 days of initial blockchain sync. Annual electricity cost on a Pi 5 at Swiss rates: approximately CHF 22.
Why Switzerland is a good place to run a node
Switzerland has no legal restriction on running a Bitcoin full node at home. The Federal Council's 2018 and subsequent positions on crypto treat Bitcoin as a means of payment and property. Swiss Glasfaser fiber infrastructure, Swisscom's HFC and FTTH rollout, Sunrise fiber, iWay, gives most urban and suburban Swiss homes the symmetrical bandwidth needed. The privacy argument matters here: Swiss data protection law (DSG/nDSG revised 2023) gives you strong grounds to want your Bitcoin address queries staying within Swiss infrastructure you control rather than flowing to US-operated block explorer APIs.
Running a full node means no third-party server ever learns which Bitcoin addresses you hold. That is Swiss data sovereignty applied to Bitcoin.
Step 1 Select Hardware for Your Swiss Home Node
A Raspberry Pi 5 8GB is the cost-efficient baseline. Its idle power draw is approximately 8W, rising to roughly 15W during initial blockchain sync, figures documented at raspberrypi.com. At the Swiss average residential electricity rate of CHF 0.32/kWh published by the Bundesamt für Energie (bfe.admin.ch), continuous idle operation costs:
8W × 8,760 hours/year = 70.08 kWh/year × CHF 0.32 = CHF 22.43/year idle
If the node runs at sustained sync load (15W average):
15W × 8,760 hours/year = 131.4 kWh/year × CHF 0.32 = CHF 42.05/year
An Intel NUC-13 (documented at intel.com under NUC products) draws 10 to 28W depending on workload. More headroom for Electrum server indexing and Lightning node workloads, but roughly double the electricity cost, still under CHF 80/year. A Synology NAS with a spare 3.5-inch bay can run Bitcoin Core in Docker but imposes I/O constraints that make initial block download noticeably slower.
For most Swiss home users, the Pi 5 8GB with a 2 TB NVMe SSD is the right starting point. The Pi 5 is available from raspberrypi.com and authorised Swiss resellers including pi-shop.ch.
Step 2 Choose Your Node Software
Bitcoin Core 30.0 is the reference implementation, released 2025-10-10 per bitcoincore.org/en/releases/30.0. It is the most audited, most widely reviewed Bitcoin full-node software in existence. Download exclusively from bitcoincore.org. Verify the SHA-256 checksums and PGP signatures published on that download page before installing, every time, not just the first time.
Bitcoin Knots (bitcoinknots.org) is a derivative maintained by Luke Dashjr. It applies the same consensus rules as Core but adds stricter mempool policy, most notably a tighter datacarriersize limit that became operationally relevant during the 2023 ordinals inscription wave and the CVE-2023-50428 episode. We cover that history in detail in the Bitcoin CVE-2023-50428 post. Knots is a legitimate choice for node operators who want to filter ordinals-style spam from their mempool.
Check bitcoinknots.org directly for the current 2026 release before installing. Version numbers in third-party guides go stale quickly.
Both Core and Knots enforce full Bitcoin consensus rules. Both are free, open-source, and run on ARM64 (Pi 5) and x86-64 (NUC-13). Neither phone home. Neither requires registration.
Step 3 Plan Bandwidth and Storage Before Sync
The Bitcoin blockchain reached 743 GB in May 2026 per mempool.space/charts. Incremental chain growth runs approximately 5 to 10 GB per month. Budget a 2 TB NVMe SSD so you are not forced to prune or re-sync within 12 months.
Initial block download (IBD) transfers the full chain over your connection, roughly 750 to 800 GB including peer overhead. On a 1 Gbit/s Swisscom or Sunrise Fiber line, IBD completes in approximately 3 to 7 days. The bottleneck past a certain bandwidth threshold is CPU speed for signature verification, not the connection itself. On a 100 Mbit/s DSL connection, IBD takes longer and you should verify whether your ISP plan has a monthly data cap before starting.
After IBD, ongoing peer traffic is approximately 20 to 50 GB/month upstream if you serve blocks to peers (port 8333 open). Swiss residential fiber plans typically carry no monthly cap. Swisscom's residential fiber terms at swisscom.com do not apply a data volume limit to standard home fiber plans as of 2026, verify your specific plan contract.
If you prune the node (bitcoin.conf: prune=550) you keep only the most recent blocks and save disk space, but you lose the ability to run Electrs or Fulcrum and cannot serve historical blocks to peers. Full archival is the correct setup for Steps 6 and 7.
Step 4 Configure Your Swiss ISP Router for Port 8333
A Bitcoin node with an open inbound port 8333 is a first-class peer on the network. Without it, your node operates in outbound-only mode, it still validates everything, but it cannot serve blocks to new peers and does not contribute to network health.
To open port 8333 on a Swisscom Internet-Box: log into the admin panel (default 192.168.1.1), navigate to the port-forwarding section, and create a rule for protocol TCP, external port 8333, internal port 8333, directed to your node's LAN IP. Swisscom's support documentation at swisscom.com/support covers the Internet-Box port-forwarding procedure. On Sunrise and iWay equipment, the port-forwarding path is similar, check your router model's admin interface under NAT or port forwarding.
Assign a static LAN IP to your node via your router's DHCP reservation table. Without this, the forwarding rule breaks after the next DHCP lease renewal.
Do not open RPC port 8332 to the internet. That port provides full node control and should be accessible only on your local network or via a Tor hidden service.
Step 5 Set Up Tor for Node Privacy
Tor (torproject.org) routes your node's peer connections through an onion-routed network, hiding your home IP from both Bitcoin peers and your ISP. Without Tor, your ISP can correlate your IP with Bitcoin network activity and with every transaction you broadcast.
Install Tor on the node machine. On Raspberry Pi OS (Debian-based) or Ubuntu: sudo apt install tor. After installation, add the following to bitcoin.conf:
proxy=127.0.0.1:9050
listen=1
bind=127.0.0.1
Bitcoin Core's full Tor integration guide is maintained at github.com/bitcoin/bitcoin/blob/master/doc/tor.md. Tor daemon configuration documentation is at torproject.org/docs. After restarting Bitcoin Core with Tor active, the node's .onion address appears in the debug.log and in bitcoin-cli getnetworkinfo under the localaddresses field.
With Tor active, your node queries and broadcasts flow through the Tor network. Share the .onion address with wallets you want to connect privately. No IP address is visible to peers. No transaction you broadcast is traceable back to your Swiss home address.
This is the privacy layer that makes running a node in Switzerland qualitatively different from using a public Electrum server or block explorer API.
Step 6 Connect bitcoin-cli and Integrate Your Wallet
Bitcoin Core exposes its JSON-RPC interface on port 8332 over the local network. By default, authentication uses a cookie file written to the Bitcoin data directory (~/.bitcoin/.cookie) which bitcoin-cli reads automatically when run on the same machine. For remote access from another device on your LAN, set rpcbind=0.0.0.0, rpcallowip=192.168.1.0/24, rpcuser, and rpcpassword in bitcoin.conf.
Verify the node is running correctly:
bitcoin-cli getblockchaininfo
bitcoin-cli getnetworkinfo
bitcoin-cli getpeerinfo | grep addr
Sparrow Wallet (sparrowwallet.com) connects directly to a Bitcoin Core node. In Sparrow preferences, under Server, select Bitcoin Core. Enter your node's LAN IP, port 8332, and credentials. Sparrow derives all your hardware-wallet addresses from the master public key (xpub) and queries only your node, no external server learns your addresses. This is the full Bitcoin self-custody privacy model extended to the query layer.
Electrum (electrum.org) connects via the Electrum protocol rather than RPC, which is why you need Step 7, a personal Electrum server, to use Electrum against your own node privately.
Step 7 Run Electrs or Fulcrum as Your Personal Electrum Server
Electrs (github.com/romanz/electrs) and Fulcrum (github.com/cculianu/Fulcrum) are personal Electrum server implementations that build an address index over your full node's blockchain and serve Electrum protocol queries locally.
Electrs is written in Rust with a smaller memory footprint, making it the natural choice on a Raspberry Pi 5. Clone from github.com/romanz/electrs, build with cargo build --locked --release, and configure it to point at your Bitcoin Core RPC socket. Electrs listens on port 50001 (plain) and 50002 (SSL). Initial index build takes several hours on a Pi 5 after IBD completes, run it once, then it stays incrementally updated.
Fulcrum (github.com/cculianu/Fulcrum) is written in C++ and indexes faster on machines with 8 GB+ RAM. On an Intel NUC-13 with adequate RAM, Fulcrum handles higher concurrent query loads better, relevant if you plan to run a Lightning Network home node alongside your Bitcoin node and connect multiple wallet instances.
In Electrum wallet (electrum.org): Server settings → elect your node's LAN IP on port 50002. In Sparrow: Server → Electrum Server → enter IP:50002. For Tor users: configure Electrs or Fulcrum to listen on a .onion address so wallets can connect without exposing your LAN IP.
The result is every address-balance query, UTXO lookup, and transaction broadcast your wallet makes goes exclusively through hardware you own, on infrastructure you control, inside Switzerland. No third party sees your addresses. No server logs your query history.
Step 8 Back Up Your Wallet and Configuration
A Bitcoin Core node used only for validation, with no private keys stored on it, has minimal backup requirements: save bitcoin.conf, your Tor configuration, and Electrs or Fulcrum configuration to encrypted offline storage. If the node machine dies, you rebuild with the same configuration on new hardware and let IBD re-run.
If you hold keys on the node (for signing transactions via bitcoin-cli, or for testing): legacy wallets store keys in wallet.dat in ~/.bitcoin/wallets/. Descriptor wallets (default since Core 0.21) use JSON descriptor files exportable with bitcoin-cli listdescriptors true. Back up both after any new key generation. Copy to encrypted USB storage kept offline.
Standard procedure: after any configuration change, copy bitcoin.conf to offline storage. After any key generation, export and back up descriptors immediately. Test restoration on a second machine before you deposit funds. Do not rely on an untested backup.
For the broader home Bitcoin mining 2026 hardware setup that can run alongside a node, see the dedicated guide, the power, cooling, and network considerations overlap.
The data sovereignty argument for Switzerland
Running a Bitcoin node at home means the addresses you hold, the transactions you broadcast, and the blocks you receive are processed by hardware you own. No Swiss ISP, no cloud provider, no foreign government issuing a legal process to a US-based API company, can silently learn your Bitcoin holdings.
Public Electrum servers operated by unknown parties log every address query they receive. Block explorers are the same. Your hardware wallet is sovereign. Your node makes your queries sovereign too.
The Swiss combination is particularly clean: a privacy-conscious legal jurisdiction, strong fiber infrastructure, no data-volume caps on residential fiber, and electricity costs low enough that a Pi 5 node costs less per year than a Spotify subscription.
Run the node. Close the loop on self-custody.
Bitcoin Core / Knots versions, hardware prices, and ISP fees change. Verify each source directly before purchase. A home node is a self-sovereignty tool, not a wealth-generation tool. This is education.
New to self-custody? Start with Bitcoin self-custody from zero to cold wallet before setting up a node.
Building a full home Bitcoin stack? The Lightning Network home setup guide covers the next layer on top of a running full node.
Want the full picture? Read all 19 chapters free or order the physical book.
