monitoring
Pingdom logo

Should I self-host Pingdom?

YESworth it

Uptime Kuma boots in seconds, checks HTTP/TCP/DNS/ping, pages you through ntfy or Telegram, and replaces the entire Pingdom bill. Monitoring your uptime from a box you control is the one recursion self-hosting handles fine — put it on a different provider than what it watches.

The math (nothing hidden, including your time)

Pingdom (Synthetic Monitoring · 10 uptime checks)$18.00/mo
VPS share + storage−$0.30/mo
Your maintenance: 10 min/mo at $20/h−$3.33/mo
Net saving$14.37/mo
Setup: 11 min measured (one-time)$3.67
Break-even0.3 months
Markup Index (price ÷ real self-host cost)5.0×

Price: source, checked 2026-08-06. Inputs are stored in git; every number above is derived, never hand-written.

What you lose

  • Multi-region probes — Kuma checks from one vantage point unless you federate it
  • Pingdom's RUM and transaction checks

What you're paying Pingdom for

  • uptime checks (HTTP/TCP/ping)
  • alerting on downtime
  • status pages
  • response-time history
Gatus running from the boot-verified compose file
Gatus, running from the compose file on this page — screenshot from our verified instance, not marketing material.

Ranked alternatives

A public status page whose entire configuration is one YAML file you own: the checks, the pass conditions and the alerting, declared once and served as a page.

TwiN/gatus · ★ 11,772 · last commit 2d ago · Apache-2.0

Uptime monitoring and status pages from one container, with no monitor quota and no per-check billing.

louislam/uptime-kuma · ★ 90,062 · last commit 0d ago · MIT

Hardware

Runs comfortably on Raspberry Pi.

The tested compose file (our evidence, CI-booted)

# Uptime Kuma — status monitoring; image ships its own healthcheck binary
services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: unless-stopped
    ports:
      - "3001:3001"
    volumes:
      - kuma-data:/app/data
    healthcheck:
      test: ["CMD", "extra/healthcheck"]
      interval: 5s
      timeout: 30s
      retries: 30
      start_period: 30s
volumes:
  kuma-data:

Want a guided install instead? caniselfhostit.com/pingdom has AI-agent prompts that assume a bare machine — that's their half of the stool, and it's good.

Verification

Protocol v1 · verified by zernonia on 2026-08-10 · setup measured at 11 min · AI assistant: claude-code (allowed & stated)

What broke

  • Boot to healthy measured at 25s on the 2GB reference env
Full timed log
# Pingdom — verdict log

- **Date:** 2026-08-10
- **Verdict:** YES — worth it
- **Protocol:** v1 (2GB reference env, Docker preinstalled, AI assistant: claude-code)

## Setup evidence

- Compose: `compose/pingdom-uptime-kuma.yml`
- Boot to healthy: **25s** measured this session
- Setup time recorded: 11 min (boot + configuration to first working workflow)

## What broke / notes

- Boot to healthy measured at 25s on the 2GB reference env

## The call

Uptime Kuma boots in seconds, checks HTTP/TCP/DNS/ping, pages you through ntfy or Telegram, and replaces the entire Pingdom bill. Monitoring your uptime from a box you control is the one recursion self-hosting handles fine — put it on a different provider than what it watches.

Verdict history

  • 2026-08-10: unscored → YES — Initial verdict: Uptime Kuma boots in seconds, checks HTTP/TCP/DNS/ping, pages you through ntfy or Telegram, and replaces the e.