Skip to content

Self-host Beszel

prices checked · Aug 2026

A lightweight server monitoring hub with a small agent per machine, charting CPU, memory, disk, network and Docker container stats with history and threshold alerts. The hub is a single Go binary built on PocketBase, so there is no separate database to run.

Datadog / yr$180
Self-hosted / yr~$55
You keep$125/yr
Pocket the difference — spin it up on a cheap VPS in minutes.Start free on Kamatera →

Key facts

CategoryMonitoring
LicenseMIT
StackGo, PocketBase, SQLite
Min RAM256 MB
Dockeryes
Difficulty
Our recommendation

Pick Beszel when you want a clean dashboard over machines you own — CPU, memory, disk, network and container stats from a small agent per host, with history and threshold alerts, and no separate database to provision. Be equally clear about what it is not: Beszel has no HTTP or URL checks at all, so it will never tell you that a public site went down. It watches boxes, not endpoints — run Uptime Kuma or Gatus alongside it if you need both, and only reach for Zabbix when you genuinely need SNMP, templates and network discovery.

What you need

  • Any VPS with at least 256 MB of RAM
  • A domain you control — most self-hosted setups need HTTPS in front of them
  • Under an hour if you've used Docker before

Install

Run these commands on your server:

# Beszel — the hub container first, then one agent per monitored machine
docker run -d --name beszel --restart unless-stopped \
  -p 8090:8090 -v /opt/beszel:/beszel_data henrygd/beszel:latest
# create the admin account at http://SERVER_IP:8090, add a system, and copy
# the public key + token it shows you into the agent install below
curl -sL https://get.beszel.dev -o /tmp/install-agent.sh && chmod +x /tmp/install-agent.sh && /tmp/install-agent.sh

What you take on

Beszel is the easiest thing in this category to stand up, and the agent model is where the surprises live:

non-negotiableEvery monitored machine needs the agent installed. There is no agentless mode — a box without the agent is simply invisible — and the hub connects out to each agent rather than the other way around, so firewall rules and network reachability are yours to arrange before a system reports anything.
non-negotiableIt answers “is this box healthy”, never “is my site up”. There are no HTTP, TCP or DNS checks in Beszel, so pair it with an endpoint monitor or you will be watching calm CPU graphs while visitors get a 502.
non-negotiableThe hub is both the single point of failure and the single backup target. Users, systems and all history live in the PocketBase data directory, so snapshot it off the box — and remember that a hub that is down is a fleet you cannot see.

An alternative to

Head-to-head

More in Monitoring

Common questions

Does Beszel monitor websites, or only servers?

Only machines running its agent. Beszel collects CPU, memory, disk, network and container metrics from an agent you install on each host — it never makes an outbound HTTP request to check whether a URL is up. If you need endpoint checks, run Uptime Kuma or Gatus alongside it; the two answer different questions.

Does Beszel need a database?

No. The hub is built on PocketBase and keeps everything in an embedded database inside its data directory, so there is no Postgres or MongoDB to provision. Back up the beszel_data volume and you have backed up the entire install, users and history included.

How do I add a machine to Beszel?

Create the system in the hub UI first — it generates a public key and a token — then run the agent installer on the target machine with those two values. The agent listens on a port and the hub connects to it, so the hub needs network access to the agent rather than the other way around.

What can Beszel alert on?

Status (the system going offline) plus thresholds for CPU, memory, disk, bandwidth, load average, temperature and fan speed, and S.M.A.R.T. disk health where the agent can read it. Alerts are configured per system and per alert type, and each user manages alerts for the systems they can see.

Search SelfHost Atlas

Search apps, comparisons, guides, and categories.

We use analytics cookies (Google Analytics, PostHog) to see which guides are useful. No ad networks, no cross-site tracking. See our privacy policy.