Today, monitoring a server is a task that sometimes feels like flying an Airbus just to check the weather — far more complexity and resources than the actual task. When I started looking for a server monitoring tool, I found myself stuck in between a tool that had no visibility at all or a full-blown stack that consumed unnecessary resources for my use case.
Self-hosting apps and utility tools have become one of my latest obsessions; I tend to host different apps on my VPS server, whether it’s a VPN, URL shortener, or my personal website. Hetzner is my go-to virtual private server (VPS) provider thanks to its great pricing and availability, but the in-built server stats it provides are too vague.
What I really wanted was a lightweight server monitoring service/tool that gives me all the necessary information without becoming another resource-hungry service. That search eventually led me to Beszel.
6 free tools every home lab needs
Level up your tinkering game with these neat utilities
What Beszel is (and what it isn’t)
A lightweight server monitor built for quick visibility
Is my server healthy right now? This was the only question I had in my mind, and Beszel answered that exactly, without overcomplicating things.
Beszel gives me a clear and high-level overview of my server, focusing on the four core metrics — CPU, RAM, disk, and network usage. I open the dashboard, glance at the numbers, and immediately know what needs my attention.
I have previously used enterprise-level monitoring services like Datadog and Zabbix for large-scale infrastructure; those tools are built differently — they track logs, transitions, alerts, and historical data.
Unlike them, Beszel takes a different approach; it doesn’t try to monitor every micro-event. It is built for a person like me who wants to know, “Is my server okay?” If yes, then I move on.
How Beszel is installed
Deploying with Docker
The installation is intentionally straightforward. It has two components — a lightweight agent running on the server to monitor and a simple GUI dashboard that shows the metrics.
No database, no complex dependencies, and no long onboarding process. It took me a few minutes to deploy it on Docker. Here is how my Docker Compose looked.
version: '3.8'
services:
beszel-hub:
image: 'henrygd/beszel:latest'
restart: unless-stopped
environment:
- BESZEL_DATABASE_PATH=/beszel_data/beszel.db
volumes:
- 'beszel_data:/beszel_data'
beszel-agent:
image: 'henrygd/beszel-agent:latest'
restart: unless-stopped
environment:
# Replace with your actual key/token from the Hub UI
- 'KEY=Agent_Public_Key'
- BESZEL_AGENT_NAME=hetzner-main
ports:
- '45876:45876'
volumes:
- '/:/host:ro'
- '/var/run/docker.sock:/var/run/docker.sock'
volumes:
beszel_data: null
How lightweight it actually is
The Beszel dashboard uses less memory than a single browser tab
We are living in an era where “lightweight” is just marketing hokum used loosely by many products. Beszel, in contrast, actually delivers. One of the first things I noticed using Beszel was how little memory its dashboard actually consumes.
The central dashboard, known as the Hub, typically uses less than 20MB of memory while running, which is around one-tenth of an empty Chrome tab. For context, I opened the web dashboard on the Brave browser, and that single tab took around 300MB of my system memory.
The server-side footprint stays negligible
Low-resource metric collection
On the server side, the Beszel agent is practically invisible. The CPU usage is barely noticeable, and it usually stays under 0.01% on my 2-core VPS server, thanks to the agent being written in Go. In my case, the memory usage stays minimal at all times; mostly, it is under 10MB.
Since it has no additional dependencies to maintain and no database, metric collection and display are the only two activities happening in the background.
What using Beszel feels like day to day
Enough information at a glance, without alert fatigue
The user interface is clean and intentional. The day-to-day usage is uneventful and clearly designed that way. By default, there are no constant notifications, alerts, or warnings that require my instant attention.
It uses a simple color-coded system to show my server status and load. Instead of bombarding me with numerous unnecessary alerts, it only notifies me when my manually set thresholds are exceeded. Like when it warns me when my storage usage is above 80% or alerts me when my system is above 90% load.
Where Beszel makes sense (and where it doesn’t)
Small servers, side projects, and low-maintenance setups
Beszel shines in environments where you need simplicity more than complexity. If you are like me and want to run a single VPS or a few small servers to self-host your day-to-day utilities and apps. You don’t need a full-stack monitoring service and just need basic server health and core metrics; Beszel fits naturally.
For side projects, personal services, and internal tools, you can quickly check the core metrics like CPU, RAM, disk, and network usage, confirm nothing is out of the ordinary, and move on.
Beszel feels like a natural fit for those kinds of servers that are meant to be “set and forget,” where the goal is stability rather than constant tweaking.
Why older NAS hardware and locked-down systems aren’t a good fit
Dependencies and environment constraints
Beszel is not universally applicable. It relies on Docker, Podman, and modern system binaries. Older NAS hardware doesn’t always support these environments. In those cases, even a lightweight agent like Beszel may simply not be an ideal option.
Similarly, if you are running a large-scale environment that requires more low-level telemetry like logs, transactions, alerts, and historical data, Beszel may feel too limited.
4 essential Docker containers i run on every new server
A collection of handy containers to manage my workstations
Should you use Beszel?
Beszel isn’t trying to replace enterprise monitoring platforms like Datadog and Prometheus; it is simply trying to provide a platform that doesn’t use more resources than the apps that it’s watching.
If you are tired of heavy and overcomplicated monitoring services, and lightweight, low-maintenance monitoring is your priority, Beszel fits naturally into your setup.
Beszel
Beszel is a lightweight server and container monitoring utility that can be used to track multiple servers via a single dashboard.
