When a VPN app is the better choice
To hop between countries, a VPN app is the better answer: one subscription, many exit countries. A server here gives you one city and a tunnel that answers only to you.
Your own WireGuard VPN, with wg-easy 15.4.0 already configured, deployed on a dedicated server Selfhost.dev provisions, secures and runs, across six locations on three continents. The panel's admin login is yours before first boot.
Your traffic exits where your server sits. Price that city first.
A rented server running WireGuard, the fast, modern VPN protocol, so your devices tunnel through an IP and a city you choose. wg-easy adds a web panel where each device gets its own config and QR code.
People and small teams who want their own VPN exit: safe browsing on public Wi-Fi or a way into private services.
When one exit city that answers only to you matters more than a list of countries. To hop between countries, a VPN app fits better.
What's in the WireGuard VPS deployment is one wg-easy container, pinned to 15.4.0, running both the WireGuard server and its web panel. Devices connect over UDP 51820; the panel sits behind HTTPS, with its admin login set before the container first starts.
Your phones, laptops and browser
HTTPS panel and UDP 51820
wg-easy 15.4.0
Admin login
Keys and devices
| Item | On this template |
|---|---|
| VPN and panel | ghcr.io/wg-easy/wg-easy 15.4.0, one container |
| VPN port | UDP 51820, open to the internet |
| Panel | HTTPS; your own domain optional |
| Admin | admin or your choice, with your deploy password |
| Server | 4 GB, in six locations |
| Rate | A European 4 GB server at $0.02/hr |
Most wg-easy guides still copy the pre-v15 setup: a PASSWORD or PASSWORD_HASH variable and a panel on plain HTTP at port 51821. Version 15 is a rewrite that drops both variables and opens a setup wizard for whoever visits first. Here the admin is set before first boot, on HTTPS.
| What a wg-easy guide has you do | On this template |
|---|---|
Set PASSWORD_HASH or beat strangers to the v15 wizard | Admin set before first boot |
| Set the server address for device configs | Set; every QR code points at your server |
Add a proxy or run HTTP with INSECURE=true | HTTPS on a generated address |
| Open UDP 51820, turn on IP forwarding | Done; only 22, 80, 443 and UDP 51820 open |
| Pick an image tag | 15.4.0, pinned |
WireGuard server requirements are tiny: one core and 512 MB to 1 GB of RAM carry a personal VPN, as most guides say. Here the server starts at 4 GB, the smallest size our platform runs, with WireGuard's port already open.
WireGuard is one light workload. A project holds one WireGuard server, so the rest of a 4 GB server is room for other light apps.
The admin is yours before the panel ever answers.
Choose a 4 GB server in one of six cities, the place your traffic will appear to come from.
Set the admin username and password, then launch. The template deploys in about ten minutes, then the console shows the panel's HTTPS address.
Sign in, add a client in wg-easy and scan its QR code with the WireGuard app or download its config.
WireGuard VPS cost here is the server alone: no template fee, nothing per device. The location you deploy in is where your traffic exits. It sets the rate, from $0.02/hr for a European server to $0.12/hr for a US one.
| Item | Cost |
|---|---|
| WireGuard and wg-easy | $0 |
| Devices and peers | $0, nothing per device |
| Bandwidth | $0, no traffic metering on a template project |
| Backups | Optional, +20% of the server rate |
| Server | RAM, cores, disk | Exit location | Rate | About a month |
|---|---|---|---|---|
cx23 | 4 GB, 2 cores, 40 GB | Europe | $0.02/hr | $15.18 |
cax11 (ARM) | 4 GB, 2 cores, 40 GB | Europe | $0.02/hr | $16.35 |
cpx22 | 4 GB, 2 cores, 80 GB | Singapore | $0.10/hr | $72.56 |
cpx21 | 4 GB, 3 cores, 80 GB | US | $0.12/hr | $87.75 |
Monthly figures assume 730 hours.
With a card on file or a past top-up, the server is powered off and held for 24 hours. Tunnels stay down until a top-up in that window restarts it. Welcome-credit-only servers are deleted at zero, backups included.
Price another exit city in the calculator, no signup.
A budget VPS runs WireGuard for a few dollars a month. A VPN app costs about as little, with dozens of exit countries. Either is cheaper for a VPN alone. A WireGuard VPS here adds the setup done, the panel secured and an exit only you control.
| Budget VPS | VPN app | WireGuard VPS here | |
|---|---|---|---|
| Setup | WireGuard, keys, firewall and panel are yours | None | Done before first boot |
| Exit IP | Yours, one location | Shared with other users | An IP nobody else uses, one of six cities |
| Commitment | Monthly or yearly plans | Usually yearly | By the hour; delete it any time |
To hop between countries, a VPN app is the better answer: one subscription, many exit countries. A server here gives you one city and a tunnel that answers only to you.
WireGuard's template deploys in about ten minutes. That is the platform's own budget, not an estimate.
None of these a dealbreaker? The template deploys in about ten minutes.
Launch WireGuardWireGuard VPS backup and restore comes down to one folder: wg-easy's data, holding the server keys and every device. Restore it on the same address and phones reconnect without new QR codes. An optional daily server image covers it. You can also copy it over SSH.
| Method | What it covers | Where it lives |
|---|---|---|
| Daily server backup (optional, +20%) | The whole server, keys and devices included, last 7 kept | With the server |
| A copy of wg-easy's data folder | Server keys and every device's config | Wherever you copy it |
Tell us where you want your traffic to appear. We reply with the server there and its monthly cost.
Yes. WireGuard runs on almost any VPS. wg-easy adds a web panel for devices and QR codes. This template does it in one click: the admin is set before first boot, the panel is on HTTPS and UDP 51820 is already open.
wg-easy is open source under AGPL-3.0, with password login and optional two-factor sign-in in version 15. The usual risk is the setup around it: a panel on plain HTTP or a first-run wizard open to anyone. Here the admin is set before first boot, on HTTPS.
Version 15 is a complete rewrite. The PASSWORD and PASSWORD_HASH variables from older guides are gone: the admin is created in a setup wizard on first visit or with INIT variables set before the first start. A panel served over plain HTTP now needs INSECURE=true. This template handles all three for you.
As many as you add as clients in wg-easy, with no per-device fee. Each device gets its own keys and config, so you can revoke one without touching the others. A household's phones and laptops use a fraction of a 4 GB server.
Sometimes. Streaming services often block datacenter IP addresses. A server's IP is one, so a show locked to another region may still refuse to play. A WireGuard VPS is better for safe browsing on public Wi-Fi than for getting round region locks.
Selfhost.dev is a managed self hosting platform for developers and small teams. Open source apps and databases on dedicated servers you control, billed by the hour with no subscription tiers.
Best for: WireGuard, AdGuard Home, Vaultwarden, n8n and managed PostgreSQL, MySQL, Redis, ClickHouse, OpenSearch and Kafka.