$0, $4, or your own box.
One price per account, not per person. Add a tablet or a second phone and it stays $4.
Pricing plans
Free
One person, one homelab.
- 5 active topics
- 1 critical topic with bedside siren
- 7 days of alert message history
- Repeats every 30 seconds until acknowledged
- Two-stage resolution with 10-minute desk timer
- No card needed
Pro
For servers you get paged about.
- Unlimited topics
- Unlimited critical topics
- 90 days of message history
- Multi-device escalation after 5 minutes
- Automated telephone call escalation after 10 minutes
- Per-topic quiet hours configuration
- Per-message priority overrides
- Priority email and push support
Self-hosted
Your box, your database file.
- Every Pro feature
- Your hardware, your local SQLite file
- Unlimited topics, messages, and critical alerts
- No telemetry
- Point the mobile app at your custom domain
- Open source AGPL-3.0 license
Feature comparison
| Feature | Free | Pro ($4/mo) | Self-Hosted |
|---|---|---|---|
| Topics & Ingestion | |||
| Active topics | 5 topics | Unlimited | Unlimited |
| Critical topics with siren | 1 topic | Unlimited | Unlimited |
| Publish API (ntfy compatible) | Included | Included | Included |
| Secret bearer token per topic | Included | Included | Included |
| Per-message priority override | Included | Included | Included |
| Siren & Alert Delivery | |||
| Time-Sensitive notifications on iOS | Included | Included | Included |
| Android full-screen alarm | Included | Included | Included |
| 30-second repeat loop | Included | Included | Included |
| Relay never sees alert text | Included | Included | Included |
| Incident Management & Escalation | |||
| Two-stage resolution ("I am up" + "At my desk") | Included | Included | Included |
| Configurable desk timer | 10 min fixed | Customizable (1 to 60 min) | Customizable (1 to 60 min) |
| Secondary device paging after 5 min | Optional add-on | Included | Included |
| Automated telephone call escalation | Unavailable | Included | Bring your own SIP / Twilio |
| Per-topic quiet hours | Global only | Per topic | Per topic |
| Storage & Operations | |||
| Message history retention | 7 days | 90 days | Unlimited (your disk) |
| Where timers live | SQLite cloud | SQLite cloud | Local SQLite file |
| Hosting location | Managed Cloud | Managed Cloud | Your private server |
| Source code license | Proprietary cloud | Proprietary cloud | AGPL-3.0 open source |
Frequently asked questions
Why is pricing flat instead of per seat?
One price per account. Add a phone, a tablet, or a backup handset and the price does not change.
How does push work when I self-host?
You point the official Crit Alarm app at your server URL. Your server pokes our relay, the relay pokes Apple and Google, and your phone fetches the alert text from your own server. The relay never sees that text.
Can I migrate between Cloud and Self-Hosted?
Yes. The Crit Alarm mobile app has a Server address field in Settings. Switch from api.critalarm.app to your own domain without reinstalling.
Are there per-alert or per-webhook fees?
No. Publishes are not counted or billed. Send as many heartbeats, backup logs and health pings as you like.
What happens when a critical alert goes unacknowledged?
The siren repeats every 30 seconds for up to 60 minutes. On Pro, if nobody taps Acknowledge after 5 minutes, Crit Alarm pages your secondary device. After 10 minutes, it places an automated phone call to your registered phone number.
Can I cancel Pro at any time?
Yes. You can cancel your subscription at any moment with one click. Your account goes back to Free. Your first critical topic and your tokens stay.
Start with five topics
Five free topics, or run the container on your own server.