Skip to content

Uptime monitoring for SaaS — before the first ticket.

Your public API, your sign-in flow and last night’s billing job are each watched as their own check, not inferred from a homepage that still returns 200. A failure is confirmed from other regions, then it pages whoever is on call — in Slack, PagerDuty or 10 other channels.

API, transaction & heartbeat checks included 30-day trial · no credit card Alerts to Slack, PagerDuty, MS Teams & 9 more
Websites monitored
100,000+
Checks per day
50M+
Checkpoints
171+
Countries covered
70+

Four beliefs that lose SaaS customers

Each one sounds reasonable. Each one ends with a churned customer you never got to argue with.

Belief 01

"If something broke, customers would tell us."

The ones who tell you are the loyal ones. A prospect who hits a broken signup closes the tab and never becomes a customer — there's nobody to complain, and nothing in your inbox to investigate.

Belief 02

"We're on AWS — uptime is their job."

Their SLA covers their infrastructure, not your product. A bad deploy, an expired certificate, a wedged queue worker are all yours — and the provider's status page stays green through every one of them.

Belief 03

"The app loads, so we're up."

A SaaS is a bundle of capabilities, not one page. The dashboard can load while the public API 502s, sign-in fails or the billing job quietly skips a night — each breaks on its own, and "up" hides all of it.

Belief 04

"Admitting incidents publicly makes us look bad."

Silence looks worse. A customer who finds a status note files no ticket — and remembers you told them before they asked. A customer who finds nothing assumes you don't know either.

358 h/month
"it doesn't work" exposure · 99.9% × 500 customers

"Three nines is basically perfect" is the biggest one. 99.9% uptime allows 43 minutes down a month. On a brochure site that is a rounding error — but customers work inside a SaaS. Multiply 43 minutes by 500 customers: 21,500 customer-minutes, 358 hours a month of someone finding your product broken.

Renewals aren't decided by your uptime percentage. They're decided by who found out first, and how fast it was fixed.

So what does 02:14 look like on the night the API starts throwing 502s — when something is running the login chain?↓ minute by minute

The night the API broke

At 02:14 the account endpoint started answering 502. The dashboard still loaded, the homepage ping stayed green, and every integration calling that endpoint was already failing.

02:14:02 The account endpoint starts throwing 502sThe login→call chain asserts 200, gets 502 — 3 regions agree first customers: unaware
02:14 The on-call engineer is pagedSlack first, PagerDuty five minutes later if nobody acknowledges customers: unaware
02:26 Bad deploy rolled backRecovery confirmed by the same chain that caught it customers: unaware
02:31 Customers hear it from youA note to the status page and its subscribers — before anyone asked customers: informed
12 min502 → fixed
Fixed before support woke up.02:31
The incident lived and died between 02:14 and 02:31. Support opened to a quiet queue and a status page that already said "resolved" — renewals never heard about it.
you found out firstfixed in 12 minstatus page told themapp · API · flows · jobs — one spine
And without the chain? The homepage ping stays green — a 502 from one endpoint never trips it. The outage surfaces at 09:00, as a support queue full of "is it down?" tickets. ticket flood

That's the API covered. But a SaaS breaks at four layers — app, API, flows, jobs — and each one fails on its own.↓ every layer

Seven checks, one alerting pipeline

Outbound checks hit your API and pages, a real browser replays login and signup, your jobs ping in, a snippet watches real users — all into one dashboard. Each family is counted on its own: uptime checks and heartbeats generously, API chains and browser flows tightly.

Public APIUp to 15 chained calls, each asserted
Login & signup flowsReplayed in real Chrome, 13 locations
Background jobsA missed ping is the alarm
Real-user monitoringWhat real users actually experience
7 checks on one product one dashboard · one alerting pipeline
Uptime & errorsEvery 30 s from Professional up
SSL certificatesExpiry caught weeks early
Page speedFull-page load time, charted
Uptime checks run from 171+ checkpoints in 70+ countries, as often as every 30 seconds on Professional and up — and a failure is re-checked from up to 3 regions before anyone is paged. One flaky network never becomes a status-page incident. no false alarms

Built for how SaaS breaks

API monitoring

The API your customers call

A 200 on your homepage says nothing about the endpoint their integrations hit — so today a customer tells you. Uptimia runs a real request chain against your public API instead, as often as every minute: log in, grab the token, call the protected endpoint, read the response.

  • Chains up to 15 steps — each asserts on status, JSON, headers or text, and passes values forward
  • Real auth — extract a token from the login response and reuse it as {{token}}
  • Confirmed, not flaky — a failing step is checked from up to three locations before an incident opens
Explore API monitoring
step 1 POST /v1/auth/loginassert 200 · extract token → {{token}} 148 ms
step 2 GET /v1/accountheader Authorization: Bearer {{token}} 96 ms
step 3 assert status is 200got 502 · confirmed from 3 locations FAIL
step 4 assert JSON plan = "active"not reached — the chain stopped at step 3 skipped
Run the chain as often as every minute — a broken endpoint becomes an incident before it becomes a ticket. every minute
Login & signup flows

Login and signup in real Chrome

After a deploy, the first person to try signing in should be a robot. Uptimia replays login and signup in a real Chrome browser from 13 locations, as often as every 10 minutes, and opens an incident the moment a step fails — with a screenshot of the page as it broke.

  • A real browser — go to the page, fill the fields, click, check the text
  • Screenshot on failure — the waterfall shows the step that broke and what the page looked like
  • Step timings — per-step durations, so a slowing flow shows up before it fails
Explore transaction monitoring
step 1 Go to /loginpage loaded · real Chrome 0.6 s
step 2 Fill email + passwordtest account 0.3 s
step 3 Click "Sign in"submitted 1.1 s
step 4 Check text "Dashboard"not found · screenshot saved FAIL
Incident — screenshot attachedthe moment it broke
The exact frame where "Dashboard" never appeared — you see what the customer would have seen, before a customer saw it.
SlackPagerDutySMS+ 9 more channels
Per-step timings on every run — a slowing flow shows up on the chart before it fails. real Chrome
Background jobs

The billing job that never ran

A cron that dies doesn't say so — nothing looks "down" from the outside while invoices quietly don't go out. Heartbeats flip that: your job pings Uptimia when it finishes, and a missing ping is the incident.

  • One ping URLcurl a unique /p/{token} at the end of a cron, worker or backup script
  • Interval or cron schedule — an expected cadence plus grace period; a ping missing past grace opens an incident
  • Start & fail signals too — catch a job that started but never finished, or reported its own failure
Explore heartbeat monitoring
yesterday Ping received — on schedulebilling.sh ends with: curl -fsS uptimia.com/p/hb_9f3c…a71 02:00
today 02:00 comes and goes — silencecron 0 2 * * * · grace 15 min running waiting
02:15 The missing ping IS the incidentnothing looked "down" from outside — on-call paged anyway paged
A dead-man's switch for the work that never shows up as a "down" website. Start and fail signals also catch a job that began but never finished. missed ping = incident
Customer-facing status

A status page on your domain

Before opening a ticket a customer looks for a page that says you already know. Put one on your own domain — your logo, the Uptimia badge switched off — showing live health, 90 days of history and every incident note, with subscribers emailed on each update.

  • Your domain, automatic SSLstatus.yourapp.com over HTTPS, the "Powered by Uptimia" badge removable
  • Sections & subscribers — group monitors by area, post incident and maintenance updates, notify subscribers
  • Public or private — open to your customers, or password-protected
Explore status pages
Web appuptime 99.99%
Dashboard load speedpage speed 1.4 s
Sign-in flowtransaction · real Chrome passing
status.caldmont.com
All systems operational.
updated 30 s ago · subscribers emailed on updates
90 days agotoday
Public🔒 PasswordPrivate · IP
Uptime, speed and flow monitors go on the page — customers see health, not your vendor. Your domain, automatic SSL, badge removable. badge off

One incident, your team and your status page

The same confirmed incident pages whoever is on call and updates the page your customers are already refreshing.

On-call & escalation
Direct

12 alert channels, one contact list — and the status page your customers watch, updated from the same incident.

Browse the full integrations directory
03:21 · incident confirmed — api.caldmont.com · 502 on /v1/sync
#ops-alertsSlack
⚠ API failing — api.caldmont.com · /v1/sync
502 from 3 regionsstatus page updatedAcknowledge ↩
+371 ··· 4082SMS
Uptimia: API FAILING api.caldmont.com. /v1/sync returning 502 from 3 regions at 03:21 UTC.
InboxEmail
⚠ API failing — api.caldmont.com · /v1/sync
Confirmed from Toronto, Amsterdam and Singapore at 03:21:09. Your status page and its subscribers were updated with the same incident…
ProductionPagerDuty
TRIGGEREDAPI failing — api.caldmont.com
assigned to on-call · via Uptimia integration

An outage should page you.Not your customers.

Every monitor type in the 30-day trial — 50 API chains, 50 login flows, 50 heartbeats, 500 uptime checks.

Start your free 30-day trial
30 days free no credit card cancel anytime

Set up API, flows and jobs

Your product's critical paths can be under watch this afternoon.

Step 115 minutes

Point checks at your product

Add an uptime check on the app, an API chain against your public endpoints, and a transaction that replays your login.

Monitors to add
UptimeAPI chainSign-in flowSpeed
API chain runs every minute · confirmed from 3 regions
Step 2one line

Wire heartbeats into your jobs

Drop the ping URL at the end of each cron, worker or backup. A missed ping becomes an incident.

crontab
0 2 * * * billing.sh && \
curl -fsS uptimia.com/p/hb_9f3c…
nightly billing job · expected daily 02:00
Step 35 minutes

Route alerts & publish status

Send alerts to Slack and PagerDuty, on Professional set the escalation ladder, and put uptime and flows on a status page.

Alerts & status
SlackPagerDuty+ 10 more
ladder: Slack → +5 min PagerDuty · status.yourapp.com live

Also included

Watch what real users feel

A passive JavaScript snippet reports real visitors' load times by device, browser and location.

by device · browser · country

Automate from the API

Create monitors and status pages from your own tooling — spin up checks in a deploy script.

POST /api/v1/uptime 201 · created

Maintenance windows

Shipping a release? Schedule the window — checks pause, alerts stay quiet, the status page shows planned work.

Deploy 02:00–02:20 · alerts muted

One incident, one alert

A storm becomes a single digest, not a hundred pings — with a signed link to acknowledge and MTTA tracked. Grouping and acknowledgement ride the escalation ladder, so they start at Professional.

✓ grouped · acknowledged · MTTA 3m

Recovery notices

When the API comes back, the engineers who were paged get the all-clear too.

✓ recovered · 02:26 · 12 min

Free tools for the debugging afterwards

Trace a redirect header-by-header with the HTTP Status Checker, or see what each "nine" allows with the Uptime Calculator.

HTTP Status CheckerFREE TOOL Uptime CalculatorFREE TOOL

What is uptime monitoring for SaaS?

Uptime monitoring for SaaS is watching the parts of a product customers depend on — the public API, login and signup flows, and the background jobs behind them — so your team is alerted the moment one breaks. A homepage ping stays green while your API returns 502s, sign-in fails, or a nightly job stops.

Homepage ping only

Green while customers are stuck

Homepage
200 OK · looks fine
meanwhile
API 502 · login fails
customers can't work

Your check passes while the thing customers pay for is down — you find out from a ticket.

With Uptimia

You watch every layer

API step fails
02:14 · confirmed 3 regions
within the minute
On-call is paged
Slack + PagerDuty · fixed 02:26

API, flow and job checks feed one pipeline — the failure reaches an engineer, not a customer.

The math

How much downtime each "nine" allows

"99.9% uptime" sounds airtight until you turn it into minutes — here's what each level permits.

Open the uptime calculator
UptimeDowntime / monthDowntime / year
99%7h 18m3d 15h
99.9%43m 49s8h 46m
99.95%21m 54s4h 23m
99.99%4m 23s52m 35s
99.999%26s5m 15s

SaaS monitoring FAQ

01What is uptime monitoring for SaaS?+
It's watching the parts of your product customers depend on — the public API, login and signup flows, background jobs — from outside your own infrastructure, so you're alerted the moment one breaks. A homepage ping stays green while the endpoint your customers call is failing.
02How is this different from just pinging my homepage?+
A homepage check says nothing about whether a customer can log in, your API returns the right response, or last night's job ran. Uptimia adds those layers — API chains asserting on real responses, transaction checks replaying sign-in in a real browser, heartbeats catching silent job failures — all feeding the same alerts.
03Can I monitor my public API?+
Yes. API uptime monitoring in Uptimia is an ordered chain of up to 15 HTTP requests — log in, extract a token, call a protected endpoint, assert on the status, JSON, headers or body of each step, with {{variable}} templating between steps. It runs as often as every minute on every plan, and a failing step is re-run from up to three locations before an incident opens. A chain is the most expensive check to run, so it's counted tightly: 1 API monitor on Basic, 10 on Professional, 100 on Enterprise — while the 30-day trial carries 50, more than any plan below Enterprise. Size the plan on the chains you intend to keep.
04Can it catch a broken login or signup?+
Yes — transaction monitoring drives a real Chrome browser through the flow: go to the page, fill the fields, click, check the expected text. A failing step opens an incident with a screenshot of where it broke, plus per-step timings that show a flow slowing before it fails. A full browser session is heavier than a request, so flows run every 10 minutes at their fastest and follow the same tight count as API chains: 1 on Basic, 10 on Professional, 100 on Enterprise, 50 in the trial.
05Can I get alerted when a background job stops?+
Yes — heartbeats are Uptimia's background and cron job monitoring: a dead-man's switch. Your cron, worker or backup pings a unique URL when it finishes; you set an expected interval or cron schedule with a grace period, and a missing ping is the incident. Start and fail signals also catch jobs that begin but never finish.
06How fast can it check?+
Uptime checks run as often as every 30 seconds on Professional and above; on Basic, and during the trial, the floor is one minute. API chains run as often as every minute; login and signup flows, driven through real Chrome, as often as every 10 minutes. Every outbound failure is re-checked from up to three regions before an alert fires, so one flaky network can't page anyone.
07Can I give my customers a status page?+
Yes — a SaaS status page on your own domain, with your logo, HTTPS issued for you, the "Powered by Uptimia" badge switched off, incident and maintenance threads and subscriber notifications. Uptime, speed, transaction, SSL, domain, virus and server monitors can be placed on a page; API and heartbeat monitors cannot. Publish the sign-in transaction, or an uptime check pointed at an API health endpoint.
08Can I restrict a teammate to only some monitors?+
Yes. Editor and Read-only seats can be scoped to monitor groups: their monitor list, dashboard, logs, incidents, search and exports return only those monitors, and anything they create is filed into their own groups. Owner and admin seats always see the whole account. The five roles — owner, admin, editor, viewer and billing — still decide what a seat can do.
09Do you support SSO, and can I get SLA reports?+
No SSO or SAML — sign-in is email and password with optional two-factor. Scheduled reports show historical uptime over a period, but there's no SLA-target feature to track against a contractual number; the reports and the free uptime calculator give you the percentages and the minutes.
10Which alert channels can my team use?+
Twelve: email, SMS, Slack, WhatsApp, PagerDuty, Microsoft Teams, Atlassian Statuspage, Discord, Telegram, Mattermost, Twilio and webhooks. Different monitors route to different channels on every plan. Escalation ladders — up to ten timed steps, running until someone acknowledges — come with Professional and above; on Basic, and during the trial, every alert goes to everyone at once. There is no phone-call channel, and a ladder is a fixed sequence of steps, not an on-call rotation.
11Do I need to install anything in my app?+
Almost nothing. Uptime and API checks run from the outside — 171+ checkpoints hit your product the way a customer would, and the login and signup flows are driven through real Chrome from 13 browser locations. Heartbeats need one line in your job (a curl to the ping URL); real-user monitoring is a small JavaScript snippet. No agent unless you also want server metrics.

Your product is the uptime.

Put your API, login flow and background jobs under watch this afternoon — and stop hearing about outages from customers.

API, transaction & heartbeat checks Alerts to Slack, PagerDuty & 10 more Status page on your own domain No credit card
30-day free trial · every monitor type included · checks from 171+ checkpoints in 70+ countries