AI-powered incident monitoring

Your API went down.
We already wrote
the post-mortem.

postmortem.so monitors your endpoints, detects incidents, and generates publish-ready post-mortems — automatically.

Free forever for 1 project · No credit card required

The problem

Incidents happen. Writing about them
shouldn't take hours.

The average post-mortem takes 3–5 hours to write. Most teams skip them entirely. The ones that don't ship them days after the incident — when the details are already fuzzy.

Manual and slow

Someone has to dig through logs, Slack threads, and Grafana screenshots just to piece together what happened.

Inconsistent quality

Post-mortems vary by author, team, and how tired everyone is. Most are forgotten in a Confluence graveyard.

Written under pressure

Engineers write post-mortems while already behind on the next sprint. Quality suffers. Nobody reads them.

How it works

From outage to post-mortem
in under 5 minutes.

01

Monitor

Add your API endpoints. We check them every minute from multiple regions, recording latency and status codes.

02

Detect

Three consecutive failures open an incident automatically. Subscribers and on-call get emailed within seconds.

03

Generate

Claude reads the full check history and writes a publish-ready post-mortem. Review it, publish it, done.

See it in action

This post-mortem wrote itself.

Real output from a real incident. Claude analysed 47 minutes of check data and produced this — no human input required.

Payments API Outage — 14 Feb 2025AI generated

Summary

A 47-minute outage of /v1/payments/charge caused approximately 3,200 failed payment attempts on 14 February 2025 between 14:03 and 14:50 UTC. The root cause was connection pool exhaustion on the primary PostgreSQL replica, triggered by a 3× traffic spike during a flash sale.

Timeline

14:03 UTCFirst failed health check (HTTP 503). Latency spiked to 12,400 ms.
14:06 UTCConsecutive failure threshold reached; incident opened automatically.
14:06 UTCEmail alerts sent to subscribers and on-call engineer.
14:31 UTCRoot cause identified: connection pool limit of 100 exhausted.
14:48 UTCConnection pool limit increased to 500; service began recovering.
14:50 UTCAll health checks passing. Incident resolved.

Root Cause

A flash sale drove checkout traffic to 3× baseline. The payments service exhausted its PostgreSQL connection pool (limit: 100). Incoming requests queued, hit the 30-second timeout, and returned HTTP 503. The connection pool limit had not been reviewed since the service's initial deployment 14 months prior.

Impact

  • 47 minutes of complete unavailability for all checkout flows
  • ~3,200 failed payment requests
  • Estimated revenue impact: €18,400

Action Items

Increased connection pool limit: 100 → 500
Added pool saturation alert at 80% utilisation
Evaluate PgBouncer as a long-term connection pooler
Load test before next promotional event
Generated in 4.2 seconds · claude-sonnet-4-6postmortem.so

Pricing

Simple, transparent pricing.

Start free. Upgrade when you need AI post-mortems or more projects.

Free

€0forever

For personal projects and side hustles.

  • 1 project
  • 5 endpoints
  • Public status page
  • Email subscriber alerts
  • 1-minute check interval
Start free
Recommended

Pro

€39/ month

For teams that ship fast and recover faster.

  • Unlimited projects
  • Unlimited endpoints
  • AI-generated post-mortems
  • Custom domain
  • Email subscriber alerts
  • 30-second check interval
  • Priority support
Start free trial

Team

€99/ month

For engineering organisations with compliance requirements.

  • Everything in Pro
  • Up to 5 team members
  • Custom branding
  • Webhook integrations
  • SLA monitoring
  • Audit logs
  • SSO (coming soon)
Contact us