Uptime monitoring
Catch downtime the moment it happens, from multiple regions, before your customers notice.
Synthetic monitoring for the journeys that make you money. Your Playwright scripts log in, search and check out in a real browser every 5 minutes, and a failed step is checked again before anyone is paged.
14-day free trial with a browser check included. No credit card required.
Synthetic monitoring runs scripted visits to your site or API on a schedule, from outside your infrastructure, and alerts you when a step fails. It finds a broken login or checkout before the first customer does, even when nobody is visiting.
Sends a request every 30 seconds and reads the status code, the response time and a keyword. Fast and cheap, but a login button that stopped working still answers 200.
Uptime monitoringOpens the page in a real browser, runs its JavaScript, clicks, types and checks what appears, like a user would. It catches broken logins, checkouts and pages that render blank.
Browser checksMeasures what real visitors experience, so it only sees a problem after someone hits it, and sees nothing at 3 AM with no traffic. Synthetic checks run on a schedule whether anyone visits or not.
A browser check walks through a whole user journey, step by step, and fails on the step that breaks. These are the ones teams check first.
An identity provider change, an expired client secret, a redirect loop. The check signs in with a test account and fails when the dashboard never shows up.
Monitor an Auth0 loginAdd to cart, fill the address, pay with a test card inside the payment iframe, and wait for the confirmation. The flow that loses money first is the one to check first.
Test a Stripe checkoutCreate an account with a fresh email on every run and check the welcome screen, so a broken form or a failing email step doesn't quietly stop your growth.
Test email links and OTPSingle-page apps and hydrated frameworks answer 200 with an empty shell. Only a browser that runs the JavaScript sees the error that leaves the page blank.
Catch hydration errorsType a query, wait for the results, check there are some. The same goes for a dashboard that loads data, an upload, or a download your users rely on.
12 ready-made scriptsFetch a token, pass it to the next call and assert on the JSON, without opening a page. A single endpoint is simpler as an HTTP monitor.
API monitoringEach check is a standard Playwright test in TypeScript, run on Node 24 with Playwright 1.59.1 and common packages bundled. Keep the files in your repository and run them locally with the same versions.
Paste a .spec.ts file, start from one of 12 templates, or record one with Playwright’s codegen. No proprietary format: the same file runs on your machine.
Test credentials and API tokens go in the check’s environment variables and are read with process.env. Wrap stages in test.step() and each one is reported on its own.
Run tests the script from the editor and shows each step and the logs. Save, and it runs every 5 minutes from Frankfurt and San Francisco, alerting like any other monitor.
import { test, expect } from '@playwright/test';
test('user can log in', async ({ page }) => {
await test.step('Open the login page', async () => {
await page.goto('https://app.example.com/login');
});
await test.step('Sign in', async () => {
await page.getByLabel('Email').fill(process.env.EMAIL);
await page.getByLabel('Password').fill(process.env.PASSWORD);
await page.getByRole('button', { name: 'Sign in' }).click();
});
await test.step('Dashboard loads', async () => {
await expect(page).toHaveURL(/\/dashboard/);
await expect(page.getByTestId('user-menu')).toBeVisible();
});
});Browser flows flake: a slow third-party script, a network hiccup. A failed run is retried at once from the other region, and only a second failure opens an outage, with everything you need to debug it.
Each run executes the whole script in a fresh browser, from Frankfurt and San Francisco in turn. Every step, log line and Web Vital is kept.
An assertion that doesn’t hold, a locator that never appears, or a run that times out. Nothing is sent yet.
The run is retried right away from the other region. A flaky network or a one-off blip passes there, and no outage opens.
Only a failure that happens again opens an outage, alerts the monitor’s channels and starts its escalation policy.
Every test.step() shows in the run with a green or red status and its duration, so the alert points at the stage that broke.
Attached to every failed run. See what the browser saw: the cookie banner in the way, the error toast, the spinner that never stopped.
Attached to every failed run. Replay it action by action, with the DOM, the console and the network requests at each step.
The full output of the run and the error, kept with every run, failed or not.
Each page your script opens is measured as it loads. The check charts the five metrics over time and shows them on every run, so a slow release shows up next to the step it slowed down.
How long until the largest visible element renders.
How much the layout jumps around while the page loads.
How long the main thread was too busy to answer input.
How long users look at a blank screen.
How fast the server answers, from each region.
Thresholds are Google’s “good” limits. INP needs real user input, so synthetic checks don’t collect it.
Browser checks are monitors like the others: the same alerts, escalation policies and status pages as your uptime, API and SSL checks, in one account.
Link an escalation policy to the check: Slack first, then SMS and a phone call to whoever is on call, then the next person if nobody acknowledges.
On-call and escalationAdd the check to a status page as a service, such as Checkout. When the outage is confirmed, customers see it, and the page goes back to operational on recovery.
Status pagesSlack, Microsoft Teams, email, SMS, phone calls, PagerDuty or Opsgenie: browser checks use the same channels, grouping and mutes as your uptime monitors.
AlertingEvery browser check failure is run again from a second region before it reaches the tools your team already uses.
@hyperping is really amazing
Hyperping’s reputation in our company is that it’s more reactive than Datadog. We usually get notifications from Hyperping before Datadog.
We picked Hyperping to bring a high quality incidents and status reporting dashboard to our users.
We have the real-time alerts from Hyperping telling us if the app is down. These are sometimes arriving even before AWS notices or notifies us.
We couldn’t imagine running our SaaS business without Hyperping now.
Hyperping nails all aspects: from smooth setup to peace of mind and attentive customer service.
You learn your site is down from a customer’s support ticket.
Catch downtime the moment it happens, from multiple regions, before your customers notice.
A lightweight agent tracks CPU, memory and disk, so you spot trouble before it turns into downtime.
Playwright tests that catch broken sign-ins and checkouts before your customers do.
Get alerted when a backup or scheduled job silently fails to run, not days later.
Alerts reach the right person on Slack,
Teams, SMS or a phone call, whichever wakes them up.
Keep certificates in check. Get alerted before they expire, so your customers always connect securely.
Plan rotations, share the load, and see who’s on call. Every incident reaches the right person, at the right time.
USD · Monthly billing for every plan
Three subscriptions to keep it all running.
$747/month
$8,964 over 12 monthsEverything connected, from the first check.
$299/month
$3,588 over 12 monthsSave $5,376 a year with this mix.
Reviewed . All amounts are USD; local currency prices may differ.
This is one example of a three-tool stack, not the cheapest possible setup or a feature-for-feature match. Pingdom and PagerDuty also include status-page features; a separate Statuspage subscription may not be needed by every team. Usage charges and paid connectors are not included. Annual totals are 12 monthly payments, not annual subscription quotes.
Synthetic monitoring runs scripted checks against your website or API on a schedule, from outside your infrastructure, to make sure key user journeys still work. It doesn’t wait for real traffic: a robot user logs in, searches or checks out every few minutes and alerts you when a step fails. See the definition in our glossary.
An uptime check reads the HTTP response: status code, response time and optionally a keyword. A synthetic browser check renders the page and clicks through it. Broken logins, checkouts and JavaScript errors often still return 200, so only a browser check sees them fail. Most teams use both: uptime monitoring for every endpoint, browser checks for the few journeys that matter most.
Real user monitoring (RUM) measures what actual visitors experience, so it needs traffic and reports problems after users hit them. Synthetic monitoring runs the same scripted journey on a schedule, so it catches a broken flow at night or before launch, with zero visitors. Hyperping does synthetic monitoring, not RUM.
Synthetic transaction monitoring checks multi-step flows such as login, signup or checkout end to end, rather than a single page. In Hyperping, each transaction is a Playwright script, and each test.step() in it is reported with its own status and duration, so an alert says which step broke. See the checkout template.
A browser check runs your Playwright script in headless Chromium on a schedule. The default runtime uses Node 24 and Playwright 1.59.1 with common packages bundled. A check fails when an assertion breaks or the run times out, and secrets such as test credentials are stored encrypted and passed as environment variables. See browser checks.
Hyperping retries the run right away from the other region, which filters out network blips and one-off flakes. If the retry fails too, an outage opens and your alerts and escalation policy start. Every run keeps its steps and logs, and failed runs also attach a screenshot, a video and a Playwright trace you can replay action by action.
Yes. On the current runtime, each navigation in your script records LCP, CLS, TBT, FCP and TTFB without any extra code. The check charts them over time and shows the values of every run. INP needs real user input, so synthetic checks don’t collect it.
Yes. Browser checks are standard Playwright tests, with no proprietary recorder or format. Install the same Playwright version and packages as the runtime and the script behaves the same on your machine, in CI and in Hyperping. See local Playwright setup.
Every 5 minutes at most, or as rarely as once a day, from Frankfurt and San Francisco in turn. Essentials includes 3 browser checks, Pro 10 and Business 25, next to your uptime monitors, status pages and on-call; the 14-day trial includes one. The Free plan has uptime monitors but no browser checks. See pricing.
It depends on whether you need scripted browser checks, API checks, private locations or real user monitoring too, and on how much you want to pay per run. We compared 36 tools in the best synthetic monitoring tools, and teams coming from Checkly can read Hyperping as a Checkly alternative.