A probe is watching
within 90 seconds
Synthetic HTTP and gRPC assertions, executed every ten seconds from bare-metal POPs in 28 transit centers. No agents on your fleet, no sidecars to babysit — the first probe is running before you finish reading this page.
curl -sL https://pulsegate.io/init | sh
90 seconds: measured from init to first assertion on a
cold account, 2026-08-20.
How it is wired
Probes run from physical tier-1 transit facilities, not shared cloud VPCs, so what you measure is the network your users ride — not cloud peering bias. One trace, three stations.
Bare-metal, not lambdas
Probes live in tier-1 transit facilities. The RTT you see is the RTT your users get.
Assertions, not pings
JSONPath body checks, gRPC status codes, TLS certificate expiry — a check fails when your product fails, not when a packet does.
Your telemetry, your tools
Export to the Prometheus and OpenTelemetry you already run. No dashboard to live in, no lock-in to migrate off.
One frame, all 28 POPs
A single assertion — GET /health against a Seoul origin —
fanned out to every POP at the same instant.
| POP | City | DNS | TLS | TTFB | p99 / 24h |
|---|---|---|---|---|---|
| ICN-01 | Seoul | 1.8 | 6.4 | 14.2 | 15.9 |
| NRT-02 | Tokyo | 2.1 | 7.1 | 28.6 | 31.2 |
| SIN-01 | Singapore | 2.4 | 8.2 | 34.0 | 37.5 |
| SJC-04 | San Jose | 3.0 | 9.6 | 88.4 | 94.7 |
| LHR-02 | London | 4.0 | 11.2 | 126.8 | 133.0 |
| FRA-01 | Frankfurt | 4.2 | 11.8 | 142.1 | 151.8 |
| …22 more POPs in the console — same frame, same instant | |||||
Measured 2026-08-20 14:00 UTC · 10 s interval · n = 8,640 per POP · milliseconds, median of the hour shown for DNS/TLS/TTFB.
Priced per probe,
not per seat
A probe costs the same whether three engineers or thirty look at the console. Downgrade, pause, or delete from the CLI.
Free
3 probes · 60 s interval · 7-day retention
Pro
Unlimited probes · 10 s interval · 13-month retention · OTel export