unsubbed.co

Beszel Companion

Beszel Companion is a self-hosted server monitoring tool that provides unofficial native iOS client for Beszel.

An unofficial iOS companion for Beszel server monitoring, honestly reviewed. Built by a solo developer, not the Beszel team.

TL;DR

  • What it is: An unofficial, native iOS client for the Beszel open-source server monitoring platform — lets you check CPU, memory, Docker containers, and disk health from your iPhone [README].
  • Who it’s for: Home lab operators and self-hosting enthusiasts who already run Beszel and want glanceable stats without opening a browser. Not for people who haven’t set up Beszel yet — that’s a prerequisite, not a bonus [README][1].
  • Cost: Free on the App Store. Requires a self-hosted Beszel instance ($0 software cost, ~$5–15/mo VPS) [App Store][5].
  • Key strength: Native iOS experience — SwiftUI, Home Screen widgets, Face ID lock, push notifications — built on top of what reviewers call the cleanest lightweight server monitoring dashboard available [1][README].
  • Key weakness: Unofficial app with 104 GitHub stars and 7 App Store ratings. Push notifications may become a paid feature. iOS 18+ required. If you don’t run Beszel, this review ends here [README][App Store].

What is Beszel Companion

Beszel Companion is a free, open-source (MIT) iOS app that connects to your self-hosted Beszel instance and puts server metrics on your iPhone. It was built by a solo developer (BRUNO DURAND) in SwiftUI — it is explicitly unofficial, meaning it has no affiliation with the Beszel project and depends on the Beszel API, which could break across Beszel versions [README].

To understand what you’re getting, you need to understand what Beszel is first. Beszel is a lightweight server monitoring platform built on PocketBase. It uses a hub-and-agent model: you run the hub on one machine, install small agents on every server you want to monitor, and the hub aggregates everything into a single dashboard [1]. MakeUseOf called it “one of the quickest to set up” server monitors, noting that it took under five minutes to add a first server and that it avoided “confusing graphs” in favor of plain-language metrics [1]. The historical metrics have a practical track record — one reviewer caught a failing SSD through S.M.A.R.T. error trends in Beszel’s historical charts before it caused downtime [1].

Beszel Companion takes that web dashboard and wraps it in a native iOS shell. Charts for CPU, memory, disk, network, temperature, GPU, and battery. Docker container inspection with CPU/memory/network and logs. Home Screen and Lock Screen widgets. Push notifications when thresholds breach. Face ID lock. Themes. Multiple hub management if you run separate Beszel instances for home and work. The entire stack — app plus self-hosted Beszel — collects no telemetry and stores all credentials in the iOS Keychain [README][App Store].

As of this review it sits at 104 GitHub stars and has 7 App Store ratings averaging 4.4/5. That’s a niche project with a genuinely enthusiastic but small user base.


Why people choose it

The honest answer is that most people who choose Beszel Companion have already chosen Beszel. The app isn’t converting anyone to self-hosted monitoring — it’s solving the friction for people who already committed to it and want mobile access.

The case for Beszel as the underlying platform is well-made in the reviews. The MakeUseOf piece [1] describes the experience of using Beszel for real production work: catching CPU spikes, memory leaks, disks filling up. The hub-and-agent architecture means no public internet exposure is required — agent-to-hub communication uses HTTPS/WebSocket with tokens, and you can tunnel over SSH or VPN without opening ports [1]. Pulse and Uptime Kuma get mentioned as alternatives for Proxmox-heavy setups [2], but for straightforward Docker server monitoring, Beszel comes up consistently as the lightweight, no-database-required option.

Beszel Companion adds one meaningful thing Beszel’s web interface doesn’t have: push notifications from a native iOS app, Home Screen widgets, and Face ID protection. If you’re the type who checks your servers from a phone, the browser-based Beszel dashboard is functional but not purpose-built for mobile. The app is.

The App Store reviews are thin (seven total at time of writing) but aligned: “This app is perfect for seeing my home servers statistics, it works as well as the website if not better” and “Great for Homelab!!” [App Store]. Short, genuine, no marketing polish — which is about what you’d expect from a homelab tool with a small community.


Features

Based on the README and App Store version history:

System monitoring:

  • Charts for CPU, memory, swap, disk (including additional disks), network, load average, temperatures, GPU, and battery [README]
  • Real-time and historical data (last hour up to 30 days) [App Store]
  • Flexible time ranges for trend analysis [App Store]

Container monitoring:

  • Docker and Podman container stats (CPU, memory, network usage) [README][1]
  • Per-container drill-down with logs and service info (health, uptime, image) [App Store version history]
  • Stacked chart for Docker network I/O [App Store v3.2.2]

Dashboard and widgets:

  • Custom dashboard — pin your most-watched charts, search, flexible sorting [README]
  • Home Screen and Lock Screen widgets [README]
  • Note: widgets do not function if you sideload the .ipa; App Store install required [README]

Alerts:

  • Push notifications for system status breaches — configurable thresholds for CPU, memory, temperature, load average, battery, GPU [README]
  • Dedicated Alerts page showing triggered alerts and alert history (added v3.2.3) [App Store version history]
  • Important caveat: the developer notes push notifications “may eventually be moved behind a subscription due to infrastructure costs” [App Store version history]

Security and access:

  • mTLS with client certificates [README]
  • SSO/OAuth login (requires adding beszel-companion://redirect to your SSO provider’s redirect URIs) [README]
  • 2FA / MFA support [README][App Store]
  • Credentials stored in iOS Keychain [README]
  • Face ID / passcode lock [App Store v3.2.2]

Multiple hub management:

  • Switch between multiple Beszel hub instances (home lab, work, VPS) [README][App Store]
  • Edit hub settings by swiping left in Settings [App Store]

Localization:

  • English, French, Polish — contributions via Crowdin [README]

The development cadence is active: the version history shows meaningful feature additions across January–April 2026, including the alerts page, additional disk charts, MFA support, Face ID, and container log viewing [App Store].


Pricing: SaaS vs self-hosted math

Beszel Companion (iOS app): Free. MIT licensed. Available on the App Store [App Store].

Beszel (required underlying platform): Free and open source. Self-hosted on your own hardware or VPS [1][5].

Infrastructure cost to run Beszel:

  • Smallest Hetzner or Contabo VPS: ~$4–6/mo
  • Beszel itself has minimal resource requirements — it runs on PocketBase, which is a single binary [1]
  • The hub can run alongside other workloads on an existing server with no extra VPS cost

What you’re replacing: If you’re already monitoring servers professionally, the comparison is against Datadog, New Relic, or Grafana Cloud:

  • Datadog infrastructure monitoring: starts at $15/host/month, scales quickly past $100/mo for multiple servers
  • New Relic: $49/user/month after free tier
  • Grafana Cloud: free tier is limited; paid starts at $8/month per active series, costs accumulate

A typical home lab or small founder setup with 3–5 servers running Beszel self-hosted: $0 in software costs, hosting already paid for. vs. Datadog for the same 3 servers: ~$45/mo baseline, potentially more with container monitoring. Over a year that’s $540 saved at minimum.

The Beszel Companion iOS app is free on top of that. No subscription, no per-device fee, no per-notification charge — yet. The push notification asterisk (possible future subscription) is the one pricing unknown [App Store].

Data on whether push notification infrastructure costs actually trigger that paywall isn’t available — the developer flagged it as a possibility, not a certainty.


Deployment reality check

Beszel Companion is only as good as your Beszel setup. If you don’t have Beszel running and accessible from the internet, the app is useless. That’s the first filter.

To use this app you need:

  1. A working Beszel hub instance — deployed via Docker Compose on any VPS or home server [1][5]
  2. That hub accessible over HTTPS from your iPhone (public IP + domain, or a VPN like Tailscale)
  3. iOS 18 or later — this cuts off older iPhones (anything pre-iPhone XS running older iOS)
  4. An account on your Beszel instance (admin or read-only user) [README]

SSO configuration gotcha: If you use SSO on your Beszel instance, you must manually add beszel-companion://redirect to the redirect URIs of your SSO provider. This is not done automatically [README].

Sideloading limitation: If you install via sideloaded .ipa instead of App Store, Home Screen widgets will not work. iOS prevents the widget from sharing data with the main app via App Group when sideloaded. This is an iOS security constraint, not a bug in the app [README].

Unofficial status risk: The app is not maintained by the Beszel team. Beszel API changes could break the companion app temporarily until DURAND ships an update. Given the pace of updates in the version history, this seems managed well — but it’s a single developer, not a company. If they stop maintaining it, you’re back to the browser [README].

The MakeUseOf review [1] covers the Beszel setup side: initial setup takes under five minutes for the first server with Docker Compose. No separate database, no config files for each server — the agent is a binary. That simplicity transfers to the mobile setup: once Beszel is running, connecting the iOS app is a matter of entering your hub URL and credentials.


Pros and Cons

Pros

  • Native iOS experience. SwiftUI throughout — not a web view wrapper. Swift Charts for rendering, WidgetKit for Home Screen widgets. Feels like a proper iOS app [README].
  • Genuinely free. No subscription, no freemium features, no paywalled charts. The full feature set is available at $0 [App Store].
  • Home Screen and Lock Screen widgets. Glanceable stats without opening the app — CPU, memory, disk from your most-watched systems [README].
  • Active development. Multiple significant updates per month in early 2026 — alerts page, new disk charts, Face ID, MFA support all shipped recently [App Store].
  • 100% private. No telemetry, no analytics, no data leaving your device except to your own Beszel instance. Credentials in Keychain [App Store].
  • mTLS + SSO + 2FA. Serious security features for a free homelab tool — client certificates, OAuth, MFA — more than most commercial monitoring mobile apps offer [README].
  • MIT licensed. Fork it, modify it, sideload it [README].
  • Companion macOS app available. BeszelBar is a separate native macOS menu bar client by the same developer, if you want the same workflow on a Mac [README].

Cons

  • iOS 18+ only. Excludes iPhones running iOS 17 or older. Significant portion of older devices locked out [README].
  • Unofficial, single-developer project. 104 GitHub stars. If the developer burns out or Beszel changes its API, maintenance could stall. No corporate backing [README].
  • Push notifications may become paid. The developer explicitly noted that push notifications “may eventually be moved behind a subscription due to infrastructure costs” [App Store]. This isn’t announced — but if you’re relying on free notifications, budget for it.
  • Tiny community. 7 App Store reviews. If you run into a bug, you’re likely filing a GitHub issue and waiting rather than finding a community workaround [App Store].
  • Widgets broken on sideloaded installs. If you prefer not to use the App Store, you lose widget functionality — a material limitation given widgets are one of the main selling points [README].
  • No Android equivalent. This is iOS-only. If your team runs Android, this doesn’t help them [README].
  • SSO redirect URI setup is manual. Non-obvious configuration step that could trip up non-technical users trying to use their existing SSO provider [README].

Who should use this / who shouldn’t

Use Beszel Companion if:

  • You already run Beszel and want native mobile access instead of opening Safari.
  • You want Home Screen widgets showing live server stats on your iPhone.
  • You need push alerts when a server crosses a CPU or memory threshold without paying for Datadog or PagerDuty.
  • You run iOS 18+ and can tolerate a small-community project.
  • You value privacy — no SaaS middleman between your phone and your server.

Don’t use it if you’re not running Beszel. The app has zero value as a standalone product. If you’re shopping for server monitoring from scratch, the decision is which monitoring platform to adopt — Beszel, Netdata, Grafana, Uptime Kuma — and the companion app is irrelevant to that choice.

Skip it (use the Beszel web UI) if:

  • You check servers infrequently and a browser tab is fine.
  • You don’t need push notifications or widgets.
  • You run Android — there’s no equivalent.

Skip it (consider a commercial option) if:

  • Your infrastructure team needs reliable, SLA-backed alerting. A solo-developer iOS app isn’t that.
  • Your company mandates managed software for any system that touches production monitoring credentials.

Consider BeszelBar instead (or in addition) if:

  • You primarily work from a Mac and want a menu bar view of your servers without opening a browser [README].

Alternatives worth considering

The relevant comparison isn’t “Beszel Companion vs Grafana” — it’s about the broader monitoring + mobile workflow:

  • Beszel web interface (built-in) — fully functional in mobile Safari or Chrome. No install required. No widgets, no push notifications, no Face ID. The zero-effort fallback.
  • BeszelBar — same developer’s native macOS menu bar client [README]. If you’re mostly on a Mac, this complements or replaces the need for the iOS app.
  • Netdata — richer metrics and anomaly detection than Beszel, also self-hostable, no native iOS app with equivalent features. More complex to set up [1].
  • Uptime Kuma — focused on uptime and status pages rather than detailed resource metrics [2]. Different use case. No native iOS app.
  • Grafana + mobile — Grafana’s iOS app exists for Grafana Cloud dashboards. More powerful, significantly more complex, requires separate infrastructure.
  • Datadog mobile app — excellent native experience, but you’re paying $15+/host/month for the privilege.
  • Server Monitor apps (generic) — SSH-based tools like Termius or SSH Files don’t give you Beszel’s aggregated multi-server view.

For someone already on Beszel: the web UI is the direct alternative. The question is whether widgets and push notifications are worth the iOS 18 requirement and the risk of a small-community project.


Bottom line

Beszel Companion is a well-built, genuinely free iOS app for a narrow audience: people running self-hosted Beszel who want their server metrics on their iPhone with native UX, Home Screen widgets, and push notifications. The development pace is solid for a solo project, the security posture is serious (mTLS, SSO, Face ID, Keychain), and the App Store ratings — sparse as they are — are positive. The trade-offs are real: iOS 18+ only, single developer, push notifications might become paid, and it’s entirely useless if you don’t already run Beszel. If that description fits you, it’s a free download with no downside. If you’re not running Beszel, the question you should be asking is whether to adopt Beszel, not whether to get the companion app.


Sources

  1. Afam Onyimadu, MakeUseOf“Beszel is the lightweight server monitor I wish I’d found earlier” (Mar 13, 2026). https://www.makeuseof.com/beszel-is-the-lightweight-server-monitor-i-wish-id-found-earlier/
  2. Ayush Pande, XDA Developers“This is hands-down the best monitoring utility for Proxmox” (Aug 27, 2025). https://www.xda-developers.com/pulse-guide/
  3. Ayush Pande, XDA Developers“I turned an old laptop into the perfect Linux box for my home lab” (Nov 21, 2025). https://www.xda-developers.com/i-turned-an-old-laptop-into-the-perfect-linux-box-for-my-home-lab/
  4. Easy Indie App — App directory listing including Beszel. https://easyindie.app/glance
  5. Hostinger“VPS Docker Templates | One-Click App Deployment Templates” (includes Beszel and Beszel Agent). https://www.hostinger.com/vps/docker

Primary sources:

Features

Authentication & Access

  • OAuth / Social Login
  • Single Sign-On (SSO)
  • Two-Factor Authentication

Integrations & APIs

  • REST API

Communication & Notifications

  • Push Notifications

Customization & Branding

  • Themes / Skins

Analytics & Reporting

  • Charts & Graphs
  • Dashboard

Security & Privacy

  • SSL / TLS / HTTPS

Mobile & Desktop

  • Mobile App