NEW · Free on every plan

Show your customers what your stack depends on.

Embed a live status badge on your website. When your payments processor goes down or your auth provider degrades, your visitors see it immediately — and understand the issue is upstream, not your code.

Free on every plan · No card required · Read the docs →

↓ Live demo (this is the widget, embedded on this page)

Sub-processor status

! Partial outage in progress
  • Amazon Web Services
    2 active incidents
    Partial outage
  • Cloudflare
    2 active incidents
    Partial outage
  • Stripe
    Up
  • Anthropic
    Up
  • GitHub
    Up

Real-time data, polled every 60 seconds. This widget shows what Pingoru itself depends on.

2
Lines of HTML to install
~60s
Polling cadence — fresh data, always
5.6 KB
Gzipped script size — never blocks paint
Free
On every plan, including Free

Where it goes

Anywhere you'd want a reader to understand whether your dependencies are healthy.

Your status page

When your own service is up but a vendor is causing 500s, the widget tells visitors which one before they file a ticket.

Your "about our stack" page

Transparency about your subprocessors. SOC2 auditors love it; privacy-conscious customers love it more.

Your support docs

"Is the issue on our side?" The widget answers that question without making the user search your incident history.

Your dashboard footer

A persistent dependency-health indicator in your authenticated app. Tiny minimal-layout footprint, big "trust" signal.

Set it up in 60 seconds

  1. Add a monitor for each service you depend on — AWS, Stripe, GitHub Actions, whatever. /app/monitors.
  2. Open the widget editor at /app/settings/widget, pick the monitors you want shown, choose a layout, and save.
  3. Copy the snippet from the editor and paste it into the page where you want the widget to appear. Two lines:
<div data-pingoru-widget="w_yourid"></div>
<script async src="https://pingoru.io/widget.js"></script>

Need iframe instead because of CSP? The editor has that snippet too. Full docs at the help center.

FAQ

What does the widget do?

It renders a live status badge on your website showing the third-party services your stack depends on — AWS, Stripe, GitHub Actions, whatever you monitor on Pingoru. Each row updates within a couple of minutes when the upstream vendor flips into an incident, so visitors see what's degraded right now instead of guessing from your error messages.

How do I add it to my site?

Two lines of HTML. A div with your widget id, plus the script tag. Paste them into your status page, your support page, your homepage footer, your "about our stack" page — anywhere readers care about whether your dependencies are healthy.

Will it slow my page down?

No. The script is ~5.6KB gzipped, loads async, and renders into the page after first paint. It does one fetch to our edge-cached API (60-second cache, sub-50ms p95) and never blocks the parent page.

Does it work in iframes too?

Yes, the widget editor gives you three embed formats: script (recommended), iframe, and bare URL. Use iframe when your CMS or CSP blocks third-party script tags. The script embed is preferred because the rendered content lives in your DOM, which lets search engines index the status state.

Can I pick which services show?

Yes. The widget editor lets you pick which of your monitors to include and which components within each monitor. So if you monitor AWS as a whole but only want EC2 and S3 in the widget, you can narrow to just those two. Adding or removing services takes a couple of clicks and the change goes live within 60 seconds.

Can I customise the look?

Three layouts (Full, Compact, Minimal) and three themes (Auto, Light, Dark). Auto follows the embedding page's color-scheme so a dark customer site gets a dark widget without configuration. You can also toggle the title bar, the "all systems operational" banner, service logos, and per-row incident counts.

What's the footer link about?

The "Status data by Pingoru →" link is non-removable on the Free and Pro tiers. It links back to pingoru.io with a UTM tag specific to your widget so we can track which embeds drive traffic. Whitelabel removal is on the roadmap for a future Business tier.

How often does the data refresh?

Pingoru polls every status page on a 60-second cadence. The widget hits a 60-second edge cache, so the worst case staleness is about 2 minutes from the upstream vendor posting an incident to the widget reflecting it. Cached responses keep customer page load times fast even under heavy embed traffic.

What happens when a service has an outage?

The matching row flips from green to amber or red depending on severity, the banner at the top changes to "Partial outage in progress" or similar, and a per-row "X active incidents" subtitle appears. Visitors who see this on your site instantly understand the issue is upstream, not you.

Can I have multiple widgets?

One widget per account in v1. If you have two different sites that need different sets of services, the v1 workaround is to use the per-monitor component filter to show different subsets via one widget — or wait for v2 which lifts the constraint.

What does it cost?

Free on every plan. The widget is part of the free Pingoru tier alongside up to 25 monitors and email notifications. Pro ($15/month) unlocks more monitors and additional notification channels but the widget is identical between tiers.

Where do I see how often it's loaded?

The widget editor at /app/settings/widget shows total impressions, last render time, and the top sites that have embedded the widget. Each unique browser load counts as one impression; the script de-duplicates re-renders within a single page view.

Ready?

Sign up free, add a few monitors, paste two lines into your site. No card required.

Get started free Compare plans