Self-hosted alerting and on-call

From Prometheus to the person who fixes it, in one hop.

Shorthop replaces Alertmanager and the pager service behind it. Routes, silences, schedules, escalation and history live in one place you own — and every alert remembers what fixed it last time.

Free to self-host €1.99 per phone First 3 phones free
Shorthop · Alerts
critical KafkaConsumerLagHigh

orders-consumer · firing for 6 min · paged Anna

History

Seen 7 times in 90 days.

Last fixed by Erik, 12 days ago:

“Restarted the consumer — it had stalled after a broker failover.”
Acknowledge Silence 1 h

One system, not two

Routes and silences in one place, instead of copied between Alertmanager and a pager service.

Owned by your teams

Each team runs its own routes, schedules and escalation without filing a ticket.

Runs where you run

One container and a Postgres database. Your alerts never leave your infrastructure.

How it works

Fewer hops, one place to manage them

Today an alert crosses two systems, each with its own routes and its own silences. Muting something means doing it twice, and nobody is quite sure which one is right.

Before
  1. Prometheus
  2. Alertmanager routes, silences
  3. Pager service routes, silences, schedules
  4. Phone
With Shorthop
  1. Prometheus
  2. Shorthop routes, silences, schedules, escalation, history
  3. Phone

Drop-in for Alertmanager

Prometheus sends to Shorthop the way it sends to Alertmanager. An Alertmanager webhook door lets you run both side by side while you move.

Routes and incidents

An ordered route list decides who is told. Alerts that belong together become one incident, so a bad deploy pages you once, not forty times.

On-call and escalation

Schedules, shifts and escalation policies. If nobody acknowledges, the next person is told — by push, email or webhook.

Silences you can trust

Familiar matchers, a live preview of exactly what a silence would mute, and nothing deleted — expired silences stay on the record.

Watches itself

If Prometheus stops talking to Shorthop, Shorthop raises its own alert. A quiet pager should mean a quiet system, never a broken one.

Every change audited

Who acknowledged, who silenced what and for how long, who changed a route — all in one log.

History

Every alert remembers what fixed it

Shorthop recognises the same fault even when it fires on a different pod or host. When you resolve an alert you note what fixed it, and the next person paged sees that first. At three in the morning, that is the whole job.

  • How often it fires — and whether it is getting worse.
  • What fixed it — in the words of whoever fixed it.
  • Noisy alerts surfaced — the ones nobody acts on, so you can fix or delete them.
Claude

And Claude can use it too

A built-in MCP server lets Claude read incidents, the history behind them and who is on call, and act on them with the permissions of the person who connected it. Admin tokens are refused, and every call is in the audit log.

# connect Claude Code to your Shorthop claude mcp add --transport http shorthop \ https://shorthop.example.com/mcp \ --header "Authorization: Bearer sh_…"
Shorthop Watch

Paged when something stops — even Shorthop

An alerting system cannot tell you it is down: it is the thing that is down. Watch runs outside your installation. Your jobs ping a URL on a schedule, and when the pings stop, Watch pages your phones directly — whether it is a backup that never ran, a cron job that died, a Prometheus that went quiet, or your whole Shorthop server.

The Shorthop Watch list: checks for a database backup, a certificate renewal, an invoice export, a staging cleanup and a Prometheus Watchdog, each with its state — checking in, not checking in, paused or never pinged — when it last pinged and how often it must.
Every check in one listWhat it watches, when it last checked in, and how long it may stay quiet.
A Shorthop Watch alert on the phone: prometheus-live is not checking in, with when it last pinged and what to check.
The page, when one stops

One curl in your job

Add a ping to the end of a backup, cron job or batch run. Say how often it runs and how late is too late; an optional note, like "312 GB in 41 min", shows up on the check.

Watches your Prometheus

Shorthop forwards each Prometheus's Watchdog to Watch with one click, so a monitoring stack that dies quietly still pages you.

Pause for maintenance

Pause a check for a planned migration and it resumes by itself. A pause always has an end — a mute that never ends looks just like a working check.

What Watch knows about your jobs is the check's name, when it pinged and its note. The name is in the push and the email it sends; the note is shown only in your own Shorthop.

See it

What it looks like

The web UI your team works in, and the app in your pocket at three in the morning. Real screens, demo data.

The Shorthop incident list: open incidents with severity, team, open alerts and when the next escalation step fires, each with an Acknowledge button.
IncidentsAlerts that belong together become one incident, with the escalation clock beside it.
An alert's detail page: respond with acknowledge, resolve or silence, its labels with the signature highlighted, and a history saying it was seen seven times before and what fixed it.
What fixed it last timeAn alert's history: how often it fired and the fix someone recorded.
The routing page: three routes in order with their matchers and who they page, and a box to test which route a set of alert labels would take.
Routing you can testOne ordered list decides who is paged. Paste labels to see which route wins.
An on-call schedule as a month calendar: each person's shifts drawn as coloured bars across the days, overrides dashed, with a New override button.
On-call schedulesWho is on call, shift by shift. Click a shift to override it, or drag across days to cover them.
The Insight page: incident counts, time to acknowledge and resolve, and a table of the noisiest alerts with how often they fired, flapped and were acknowledged.
InsightThe alerts nobody acts on, flapping ones, and how fast pages get answered.
The integrations page: a generic webhook, an Alertmanager webhook and Prometheus, each with its last delivery and health, a warning that one alert fires in Prometheus but not here, and Prometheus watched from outside by Shorthop Watch.
IntegrationsEvery sender has its own door and token. Shorthop says when one goes quiet, and Watch says when Shorthop does.

The app

Paged by push, acknowledged with one tap, and the history is on the phone too.

The Shorthop app's incident list, each incident with severity, state and team.
Incidents on the phone
An alert in the Shorthop app with Acknowledge, Silence and the box to record what fixed it.
Acknowledge where you are
The on-call month in the Shorthop app: shifts as coloured bars, a New override button and who is on call now.
Your rota, and overrides from the phone
The paging rules in the Shorthop app: push to every paired phone and an email, both at once.
How you are paged
Pricing

The platform is free. You pay per phone.

Run Shorthop yourself, free, with no limits. You only pay for the phones paged through the Shorthop app — because keeping an app in two stores and a push service up around the clock is the part nobody should have to build again. Watch is priced the same way: per check.

Platform

Everything that runs on your own servers.

Free

Self-hosted, forever


  • Unlimited alerts, users, teams and integrations
  • Routing, incidents, schedules and escalation
  • History and what-fixed-it notes
  • MCP server for Claude
  • Email and webhook delivery
Install guide coming

Small team

Paging on the phones of a small on-call rota.

€0

Up to 3 phones · no card needed


Everything in Platform, plus

  • Push to the Shorthop app on 3 phones
  • Acknowledge from the lock screen
  • Swap phones whenever you like
App coming

Shorthop Watch

Checks for your jobs, your Prometheus and Shorthop itself, watched from outside.

First check freethen €1.99 / check / month · a paused check counts, a deleted one does not
No other limits No minimum Cancel by signing phones out

A page is never dropped over billing. A payment problem stops new phones and checks being added — it never stops alerts reaching the phones you already have, or a check you already have from paging.

We never see your alerts. The push carries an id; your phone fetches the details straight from your own server.

Prices exclude VAT. Billed monthly by card (Viva.com) on the most phones and checks you had that month; a month that comes to €0 is never charged. EU businesses with a valid VAT number pay no VAT (reverse charge). Phone paging and Watch open with the public app release.

Status

Where it stands

Shorthop is new. It runs our own monitoring today, beside Alertmanager — and we would rather tell you exactly what works than promise what does not yet.

Works today

  • Prometheus, Alertmanager-webhook and JSON ingest
  • Routing, incidents, escalation and on-call schedules
  • Silences, history and what-fixed-it notes
  • Web interface with Google sign-in
  • Email and webhook delivery
  • MCP server for Claude
  • The push relay — our own installs page phones through it
  • Shorthop Watch, including watching Shorthop itself
  • Monthly billing by card, with VAT and invoices — on a test account

Coming

  • The Shorthop app in the App Store and Google Play
  • The relay and Watch open to your own server, at relay.shorthop.io
  • Install guide and packaging for self-hosting
  • Sign-up and an account page for your phones, checks and invoices