Seven tools · figures read in July 2026
Every figure, from the vendor's own page.
Licensing, deployment, check floors, status pages, roles and price. We make Vigil and Vigil Core, and both are named as ours; the other five columns are their vendors' claims, quoted and linked.
Three ways to run it
Pick the operating model first.
The table below settles the details. The decision above it is simpler: who runs the probes, who keeps the history, and who is allowed to change the software.
Free, and complete
Vigil Core
Apache-2.0, self-hosted, no license key and no telemetry. Forty of the check types, incidents, incident evidence, status pages with subscribers, four team roles, the audit page and the observation ledger. One organization per install.
It is a serious monitoring system on its own, and for a team watching its own infrastructure it may be the whole answer.
What Core ships$149 once, per company
Vigil Commercial
The same code with the operational and ownership layer on top: many client organizations in one install, on-call rotas and escalation, verified automatic recovery, remote probes, objectives, runbooks, operations tasks, branded client reports, and the repository itself with full private modification rights.
You buy software rather than access to it, and every version published afterwards is included.
What the $149 coversA different model
A hosted service
Better Stack, Pingdom, StatusCake and the rest run the probes for you from their own regions and keep your history in their cloud. That is a real advantage: checks from many locations with no infrastructure of your own, and somebody else on call for the monitoring itself.
Vigil ships software and operates nothing. If you would rather not run a server, that is the model to pick.
The figures, side by sideTen axes that actually decide it.
Monitor counts and check intervals are where most comparisons stop. The rows that decide real setups are lower down: who can log in, whether clients can be isolated, and whether anything happens automatically when a check fails.
| Vigilcommercial | Vigil Corefree | Uptime Kuma | UptimeRobot | Better Stack | Pingdom | StatusCake | |
|---|---|---|---|---|---|---|---|
| License | Source-available, commercial | Apache-2.0 | MIT | Proprietary | Proprietary | Proprietary | Proprietary |
| Self-hostable | Yes | Yes | Yes, only option | No | No | No | No |
| Runs the checks | Your hosts, one or many | Your one host | Your one host | Vendor, many regions | Vendor, many regions | Vendor, 100+ probes | Vendor, 43 locations |
| Fastest check | HTTP/JSON/TCP checks configurable down to 500 ms On the controller. A round dispatched to remote probes needs 20 seconds or more. | HTTP/JSON/TCP checks configurable down to 500 ms | 1 s | 15 s on Scale, 60 s on Solo 30 s on Team. Enterprise publishes no figure. | 30 s paid, 3 min free | 60 s | 30 s on Business |
| Check types | 42 monitor types | 40 monitor types | 31 monitor typesUptime Kuma 2.4.0. 29 excluding the Group and Manual entries | HTTP, keyword, ping, port | HTTP, ping, SSL, domain, ports, Playwright | HTTP, transactions, page speed | 8 types incl. DNS, SMTP, SSH |
| Multiple users | Unlimited · 4 roles | Unlimited · 4 roles | No, single account | Seats billed separately | Paid per responder | Unlimited | 1 on entry tier |
| Isolated client tenants | Yes | One org per install | No | No | No | No | No |
| Branded status pages | Unlimited, white-label | Unlimited, white-label | Unlimited, white-label | Included from free | 1 included; extra $12/mo; white-label $208/page/mo | One per organization | Separate product, from $12.46/mo |
| Acts on failure | Verified auto-recovery | Alerts only | Alerts only | Alerts only | Alerts, on-call, incidents | Alerts only | Alerts only |
| Customer-hosted multi-region probes + quorum | Probes you host, K-of-N agreement You place agents in the regions you control, on machines you own. Agreement is any / majority / all / K-of-N, with a minimum responder count. Probes that do not answer are never counted as failures. Vigil ships the software. Vigil does not host regions, VPSs, a relay or an SLA. Remote rounds need an interval of 20 seconds or more. | NoNot in the free edition. | NoSingle instance. Not in its feature list. | Vendor locationsFixed re-check confirmation, not a configurable quorum. Customer-run probes: Not verified. | Vendor locationsFixed 3-location confirmation. Private networks via a customer-run HTTP proxy, not a customer-run probe. | Vendor probesFixed second-opinion confirmation. Customer-run probes: Not verified. | Vendor servers0 to 3 confirmation tests, configurable, same region. Customer-run agents: Not verified. |
| Price shape | $149 once | Free | Free | Free tier; Solo, Team or Scale Billed monthly, quoted in the vendor's currency. | Free tier; $29/seat/mo + add-ons | No free tier; from $198/yr | Free tier; $20.41-$66.66/mo |
Prices are the vendors' own published figures as read in July 2026, annual billing where offered, and they change, check the source before deciding: UptimeRobot · Better Stack · Pingdom · StatusCake · Uptime Kuma. Better Stack's pricing is fully à-la-carte with no named tiers, so the seat price above excludes add-ons you may well need.
On remote probes. Vigil ships the software; it does not host global locations. A probe is a container you run on hardware you already pay for, connecting outbound to your own controller, and Vigil operates no probe, region or relay anywhere. That is a different product shape from every vendor in this table, and it cuts both ways: you get probes on networks a vendor will never sell you, and you get no probes at all until you put one somewhere. Two agents on one machine are not two locations, and the app says so where you assign them. Where a vendor's documentation did not answer for that row, the cell says Not verified. What that looks like in practice, including a partial regional failure and the arithmetic behind it.
A check interval is a schedule, not a detection time and not a notification time. A failure is noticed after the next slot, then the probe, then the monitor's failure window, then the alert path. The 500 ms cadence was measured holding to 100 monitors on one worker.
Architecture, team access, running cost, coverage.
The rows above compare features. These four decide whether the tool still works in year three: how it is built, who is allowed to log in, and what it costs to keep running.
how it scales
Vigil is two processes and one Postgres, a stateless Next.js app you can put behind a load balancer, and a worker that coordinates through the job queue, so you add worker replicas to add capacity. No Redis, no broker, one thing to back up. The full architecture →
Uptime Kuma is a single Node process and its maintainers have said it will stay one: "the current architecture does not use more than one core" (#6040), "we won't become a distributed system", and users report trouble around a thousand monitors (#7239). Clustering has been requested and declined repeatedly (#1259). It also cannot use PostgreSQL as its backing store. SQLite or MariaDB only, and a Postgres port sat open for two years before being closed unmerged (#959).
The current ceiling: the scheduler fans checks out once a minute and enqueues up to 500 per tick, so roughly 500 monitors is the practical limit of this release. Since 1.10.0 the configured interval is a baseline. A monitor that looks suspicious is probed harder, a steady one backs off, and a check due sooner than the next tick schedules its own follow-up. The ordinary floor is two seconds, measured at 2002 ms median for one monitor and 2003 ms for ten (the queue's poll, not contention). HTTP, JSON-query and TCP monitors below two seconds run on a separate plane, which holds 500 ms to 100 monitors on one worker and does not hold it at 1000. Raising the monitor ceiling is on the roadmap.
who can log in
Unlimited team members in the commercial edition, at no extra cost. Vigil is licensed once per company, never per seat, and since this release, free Core is uncapped too; it had inherited a 100-member limit from a library default. Four roles carry real authority: owner and admin configure, responder handles incidents, viewer reads. Every privileged mutation is written to an audit trail in the same transaction that made the change.
Uptime Kuma has no multi-user support at all. The schema has no role column, setup refuses to create a second account, and the tracking issue has been open since 2021 (#128). The hosted products do support teams, and charge per seat for them: Better Stack bills per responder, StatusCake gives one user on its entry tier. On a five-person team that difference recurs every month.
measured, not estimated
On the production build, idle, the web server holds ~115 MB RSS and the worker ~180 MB, about 300 MB of application memory before the operating system trims a quiet process further, plus whatever you give PostgreSQL and, if you run browser journeys, their Chromium. Measured over hour-long soak windows with the artifacts committed beside the code in docs/evidence/memsoak, and it fits comfortably on a small VPS, which is the entire point of running it yourself.
There is no head-to-head memory figure here: the other tools were not measured under identical conditions, and an unreproducible number is worthless. One fact needs no benchmark: the four hosted products cannot run on your hardware, so they cannot reach a database, a container or an internal host that is not exposed to the public internet.
42 types · 40 in Core
Vigil has 42 check types, and 40 of Core's check types are the same set, including push heartbeats, a real browser check, gRPC, Kafka, RabbitMQ, SNMP, Radius, SQL Server, Oracle and game servers. The two the paid edition adds are the scripted-synthetic ones: multi-step API and browser journeys. Uptime Kuma 2.4.0 offers 31 monitor types in its selector, or 29 excluding the Group and Manual entries, which probe nothing. All 31 map to Vigil types: the mapping is generated from the importer's own data, published as kuma-mapping.json, and checked in CI against a database written by Kuma 2.4.0 itself.
Most check types ship in the free edition; the paid edition adds two scripted-synthetic types and charges for what happens after a check fails: a verified recovery attempt, an incident with a lifecycle, an isolated status page per client, a rota that knows whose turn it is. The roadmap says what is being built and carries no dates.
One paragraph per vendor.
The facts most likely to decide for or against each tool, with the longer comparisons linked.
free · MIT · self-hosted
MIT-licensed, free, actively maintained; 2.5.0 is the current stable release. The counts here are read from Kuma 2.4.0, the release Vigil's importer targets: 94 notification providers, one-second checks, unlimited white-label status pages. One account per install: no roles, no read-only viewer, no per-client isolation (#128, open since 2021). Vigil imports a Kuma database at /settings/import; all 31 selectable types map. The longer comparison.
SaaS · free tier
The free plan permits commercial use: 50 monitors at five-minute checks with one status page, and no login seat. The paid tiers are Solo, Team and Scale, billed monthly; Solo includes three login seats. The longer comparison.
SaaS · $29/responder/mo
Monitoring, on-call and logs from one vendor, with detailed failure forensics: an error screenshot, a second-by-second timeline, traceroute and MTR captured automatically. Pricing is à-la-carte; extra monitors, status pages, SSO and audit logs are separate line items, and removing Better Stack's branding from a status page is $208 per page per month on annual billing. The Statuspage comparison.
SaaS · from $198/yr
Over 100 vendor-run probe servers, automatic second-checking before alerting, real-browser transaction monitoring, unlimited users. No free tier, and the vendor documents one status page per organization.
SaaS · free tier
Eight uptime test types including DNS, SMTP and SSH, from 43 locations across 30 countries with published IP lists for firewall allowlisting. Status pages are a separate product, not included in any monitoring plan, from $12.46/mo on top of the monitoring bill.
discontinued
Freshworks closed Freshping to new signups in June 2023 and disabled the remaining free accounts in January 2026, deleting the data. The closest free replacements are Uptime Kuma self-hosted or UptimeRobot's free tier.
What Vigil does not do.
your server
Vigil is self-hosted. The install is one compose file and the stack is two processes and one Postgres, but it is your box, your backups, your upgrades. Remote probes run on machines you supply; Vigil hosts no regions, no VPS fleet and no relay. A monitor dispatched to remote probes needs an interval of 20 seconds or more; the 500 ms floor applies to local checks on the controller. How the quorum works.
no scripting
The paid edition runs multi-step API and browser journeys: sign in, click through, assert on every answer. What it will never do is run your JavaScript. A journey is a list of typed steps with no loops, no branching and no regular expressions, because the worker holds the installation's database and notification credentials and running operator-supplied code in that process is not a sandbox problem you solve with a flag. If you need a loop, you need a different tool, and being told that here is better than finding out from a support ticket. Core has the real-browser check, which loads one page and asserts on it, and no journeys.
one engineer
Sikur is one engineer. Pre-sales questions get answered, and there is no 24/7 rota, no SLA and no stated response time. That constraint is part of the price.
Two cases.
The agency case. Many clients, each needing an isolated organization and their own branded status page, with your team on separate accounts and real roles. Every hosted product here either bills per page, bills per seat, or caps you at one status page; Kuma cannot do multi-user at all. Vigil is one install, one payment, unlimited tenants.
The recovery case. If the human woken at 3 a.m. is going to run a restart command that a machine could have run, Vigil closes that loop: re-verify the failure, call your signed hook, wait, probe again, and page only if it did not come back. The alert you would have received is dropped. Nothing else on this page does that as a built-in.
About this comparison.
Vigil, Vigil Core and Uptime Kuma. Better Stack, UptimeRobot, Pingdom and StatusCake are hosted services with no self-hosted or on-premise option, which also means none of them can reach an endpoint that is not publicly routable, so internal services behind a VPN are out of scope for them.
Uptime Kuma, which is MIT-licensed and free with no commercial restriction, if one shared login is acceptable. UptimeRobot's free plan also permits commercial use, at five-minute checks with one status page. Both stop fitting when each client needs an isolated, branded page and your team needs separate accounts with roles.
Vigil's commercial edition does, as a built-in: re-verify the failure, call a restart endpoint you own with an HMAC-signed payload, wait, probe again, and page a human only if the service did not come back. The others alert, and alerting is where they stop. Several can trigger an external automation tool, but the verified detect-act-verify loop is not a feature they ship.
No. Freshworks closed it to new signups in June 2023 and disabled the remaining free accounts in January 2026, deleting the data. If you are searching for a Freshping alternative, that is why, and it is a reasonable argument for running something you can keep alive yourself.
Corrections are welcome. If a figure here is wrong or out of date, Ask Maria or write to s8kur3@gmail.com and it gets fixed.