/open · transparent metrics

We build in the open.
No vanity numbers.

Real state of Valpero — same numbers we look at internally. Transparency is how we earn trust, not how we talk about it.

// platform stats

Live platform numbers.

Active monitors
// live count, real-time
Registered users
// accounts on Valpero
< 12 sec
Avg. alert time
// detection → email
1 min
Fastest check interval
// Starter plan and above
10
Probe regions
// 9 live · 1 (KZ) coming
Apr 2026
Launched
// early days, growing
// our stack

Boring tech where it counts.

Interesting tech where it earns its keep. Here's what runs under the hood.

FastAPI (Python)
Powers the backend API. Fast, typed, easy to reason about. Does exactly what it says on the tin.
/backend
PostgreSQL + TimescaleDB
Primary store. TimescaleDB handles time-series data from uptime checks without breaking a sweat.
/database
Redis + Celery
Task queue for scheduling monitors, sending alerts, and everything that needs to happen in the background.
/queue
Nginx
Reverse proxy, SSL termination, static file serving. Still the gold standard for a reason.
/infra
Docker
Every service runs containerised. Predictable deploys, fast rollbacks, nothing "works on my machine".
/infra
Hetzner Cloud
Infrastructure hosted in Germany. Good performance, fair pricing, data stays in Europe.
/hosting
// pricing philosophy

Three plans, no surprises.

Valpero has three plans. That's intentional. No dozen tiers designed to confuse you, no "Enterprise" tier with a contact us button hiding a price that depends on how much we think you can pay.

The Free plan gives you real monitoring — 1 monitor, 10-min interval — with no expiration. Basic (€9/mo) covers individuals and small projects who need speed and reliability. Pro (€24/mo) covers serious production infrastructure that can't afford to miss a second.

No charge per seat, alert, or API call. If we ever change pricing, existing customers get min. 60 days notice and the option to leave. That's the deal.

// roadmap

What we're building next.

In rough priority order. We build in public.

Done
Real-time WebSocket dashboard
Live status pushed without refresh — incidents and check results appear instantly.
Done
Screenshots on failure
Playwright captures the page at the moment an incident opens — see exactly what your users saw.
Done
Server agent monitoring
Lightweight Go agent reports CPU, RAM, disk, network, processes, and Docker containers.
Done
On-call schedules & SLA tracking
Round-robin rotations with per-monitor SLA targets and flap detection to suppress noisy alerts.
Done
Response body keyword assertions
Alert when a page stops/starts containing a phrase — catch soft failures that return HTTP 200.
Done
Slack & Discord webhook notifications
Native integrations + generic webhook support for Zapier, Make, n8n, custom systems.
Done
Dark mode, themes, compact view
Four colour themes, compact density mode, persisted per browser.
Done
Developer API + API keys
Full REST API with personal access tokens for programmatic access to all monitor data.
Done
Team access & multi-user workspaces
Invite teammates, collaborate on the same monitors, role-based access.
Done
TOTP two-factor authentication
Secure your account with a TOTP authenticator app.
Done
Prometheus metrics export
Scrape uptime, response time, SSL expiry into Grafana or any Prometheus-compatible stack.
Done
Incident postmortems
Write root cause, timeline, and prevention notes directly on any resolved incident.
Done
Bulk CSV import
Upload a CSV to add dozens of monitors at once.
Done
Page speed monitoring
Core Web Vitals (LCP, FCP, CLS) via Google PageSpeed Insights with threshold alerts.
Done
Multi-protocol monitors
HTTP, Ping, TCP/Port, DNS, UDP, FTP, IMAP, POP3, NTP, SSH.
Planned
Response time alerting
Alert when response time exceeds a custom threshold — catch slowdowns before they become outages.
Planned
Monitor groups
Organise monitors into folders or groups by project or team.
Planned
PagerDuty & Opsgenie integrations
Native on-call integrations so alerts flow into your existing incident response workflow.
// last update: April 2026 · spotted something wrong? tell us