TutorialNov 5, 20264 min read

Run a Bitcoin Node on a VPS: Pruned Node Setup Guide

How to run Bitcoin Core on a Linux VPS paid with crypto: why a pruned node fits on a $13 server, the settings for a fast first sync, a systemd service, and what a pruned node can't do.

Short answer: yes, you can run your own Bitcoin node on a small VPS by running Bitcoin Core in pruned mode. It downloads and verifies the whole blockchain once, but only keeps the recent blocks and the set of unspent coins, about 12–15 GB on disk. A Linux VPS with 2 vCPU, 6 GB RAM and 40 GB NVMe for $13 a month is enough. The full archive (roughly 750 GB and growing) doesn't fit on our NVMe plans.

A node of your own means your wallet checks the rules itself instead of trusting someone else's server, and it runs 24/7 without keeping your PC on. Here's how to set one up on a VPS paid with crypto.

01Pruned or Full Node?

Pruned nodeFull (archival) node
Disk neededabout 12–15 GBabout 750 GB and growing
Verifies every block and transactionYesYes
Backs your own walletYesYes
Serves old blocks to other nodesNoYes
Electrum server (electrs, Fulcrum), block explorerNoYes
Fits on a Rdp.Vision Linux VPSYes, from $13No

For your own wallet and for supporting the network with a validating node, pruned is enough. For an Electrum server or an explorer you need the full chain and a large disk.

02Which VPS Size

Disk isn't the hard part for a pruned node. The first sync is, and that needs RAM and CPU.
  • 2 vCPU, 6 GB RAM, 40 GB NVMe ($13/month): comfortable for a pruned node. Bitcoin Core's own minimum is 2 GB of RAM; 6 GB leaves room for a big cache during the first sync.
  • 6 vCPU, 10 GB RAM ($26 or $39/month): a noticeably faster first sync, and room for other services next to the node.

The first sync downloads the whole chain once, several hundred gigabytes, and checks every block. On 2 vCPU expect it to take days rather than hours; after that the node keeps up on its own with little load.

Nano1 vCPU · 1 GB · 10 GB NVMe$3.90/mobilled monthlyBuy
Most popularSpark1 vCPU · 2 GB · 20 GB NVMe$6.50/mobilled monthlyBuy
Pulse2 vCPU · 2 GB · 20 GB NVMe$6.50/mobilled monthlyBuy
Surge2 vCPU · 6 GB · 40 GB NVMe$13.00/mobilled monthlyBuy
Storm6 vCPU · 10 GB · 40 GB NVMe$26.00/mobilled monthlyBuy
Apex6 vCPU · 10 GB · 80 GB NVMe$39.00/mobilled monthlyBuy

Full root SSH access · NVMe storage · DDoS protection · No setup fee

03Setting It Up

These steps are for Ubuntu 24.04 or Debian 12. Get the current release and its checksums from bitcoincore.org and replace <version> below.

  1. 1Create a user for the node: sudo adduser --disabled-password bitcoin
  2. 2Download and check Bitcoin Core as that user: download bitcoin-<version>-x86_64-linux-gnu.tar.gz and SHA256SUMS, then run sha256sum --ignore-missing --check SHA256SUMS. It must print OK.
  3. 3Install it: tar xzf bitcoin-<version>-x86_64-linux-gnu.tar.gz and sudo install -m 0755 bitcoin-<version>/bin/* /usr/local/bin/
  4. 4Write the config (below) to /home/bitcoin/.bitcoin/bitcoin.conf.
  5. 5Add the service (below), then sudo systemctl enable --now bitcoind.
  6. 6Watch the sync: sudo -u bitcoin bitcoin-cli getblockchaininfo shows verificationprogress climbing to 1.

The config for a pruned node on a 6 GB server:

ini
# /home/bitcoin/.bitcoin/bitcoin.conf
prune=550          # keep about 550 MB of recent blocks
dbcache=3000       # large cache for the first sync; lower to 450 afterwards
maxmempool=300
server=1           # lets bitcoin-cli and your wallet talk to it
listen=1           # accept connections from other nodes on port 8333

The systemd service:

ini
# /etc/systemd/system/bitcoind.service
[Unit]
Description=Bitcoin Core
After=network-online.target

[Service]
User=bitcoin
ExecStart=/usr/local/bin/bitcoind -conf=/home/bitcoin/.bitcoin/bitcoin.conf
Restart=on-failure
TimeoutStopSec=600

[Install]
WantedBy=multi-user.target

04Keep It Safe

  • RPC stays local. Don't open port 8332 to the internet. To use the node from your own computer, tunnel it over SSH: ssh -L 8332:127.0.0.1:8332 you@your-server.
  • Port 8333 is fine to open: that's how other nodes connect to yours.
  • Restrict SSH to your own IP with the firewall on your server page.
  • Keep keys off the server. The node verifies; your coins belong in a wallet on your own device or a hardware wallet that connects to the node.

05Paying for It with Bitcoin

Sign up with an email or Telegram and pay with Bitcoin, USDT or another coin, no ID needed. A Linux VPS is ready a few minutes after the payment confirms. How to Buy RDP with Crypto explains fees and confirmation times per coin. Other chains with large state, like Ethereum or Solana validators, need far more disk and RAM than these plans; see crypto nodes for what fits.

A pruned node, yes: it needs about 12–15 GB of disk. A full archival node needs about 750 GB, which is more than our NVMe plans offer.

  • bitcoin node hosting
  • bitcoin node vps
  • run bitcoin core on vps
  • pruned bitcoin node
  • crypto node vps
  • buy vps to run blockchain

Keep reading

All articles