How to monitor
A status page for your Next.js app
Monitor your Next.js app and API routes, catch SSR and edge failures, watch SSL expiry, and publish a custom-domain status page — in minutes, with nothing to install.
A Next.js app is more than one thing: there's the rendered frontend, the API routes, any server actions, and often a database and third-party services behind them. Each can fail on its own. Here's how to monitor a Next.js deployment and publish a status page — with nothing to install.
What to monitor
- The app — an HTTP check on your main URL with a keyword assertion (so a blank
200still counts as down). - API routes — checks on critical endpoints like
/api/health(see how to monitor an API). - SSL certificate — expiry monitoring so a lapsed cert never takes you down (SSL guide).
- Scheduled work — heartbeats for cron jobs, ISR revalidation, or queue processing (cron guide).
Add a health route
// app/api/health/route.ts
export async function GET() {
// Touch the critical path — e.g. a cheap DB query.
// await db.query('SELECT 1');
return Response.json({ status: 'ok' });
}
Point a StatusCat HTTP monitor at /api/health with a keyword assertion on "status":"ok". If a dependency is down, make the route return a 503 so the monitor trips immediately.
Watch the edge and regions
If you deploy to the edge or multiple regions, monitor the public URL your users actually hit. StatusCat re-checks every failure before alerting, so a single cold-start blip won't page you.
Publish the status page
- Group your monitors (app, API, database, jobs).
- Create a status page and add them as components.
- Point it at
status.yourapp.com. - Enable email subscribers for incident updates.
StatusCat does all of this from the outside, free for 50 monitors, with on-call and status pages included. New to monitoring? Start with what uptime monitoring is. Running Laravel instead? See status page for Laravel.