pingway
know your path.

is my internet ok right now
and where is the problem?

Ping every hop, every second.
From your LAN ISP Internet.
Catch 3-second glitches
before they ruin your day.
$ curl -fsSL https://raw.githubusercontent.com/jasondcamp/pingway/main/install.sh | bash
pingway dashboard — live network path, latency and packet loss

the toolkit

1s

1-second monitoring

Green LAN + red Internet?
It's your ISP, not your WiFi.

Loss Inspector Clipboard

Loss Inspector

Timestamps 2-second loss bursts. Receipts for your ISP ticket.

Honest speed tests

Download, upload, and latency under load. No fake numbers.

Outage Siren

Outage log

Start time, end time, and duration. Know exactly when it went bad.

Kiosk mode

Wall-mounted Pi? Big, clean status that never sleeps.

Docker Whale Sticker

Tiny. Simple. Local.

~22MB container.
SQLite database.
No cloud. No bloat.
Just your data.

Synthetic call probe NEW

"We deprioritize ICMP" — not this time. Pingway streams RTP-shaped UDP to a reflector outside your network, so it measures what a real video call experiences: freezes counted in milliseconds, jitter, and a MOS score — the telecom industry's own quality metric — saying your line fails. Evidence your ISP can't argue with. The far end is a reflector — use the free public ones, or host your own in 30 seconds.

MOS 2.1
"unusable for voice"
47 freezes >200ms in 3 hrs
coincident with loss at
the ISP's first hop

the reflector — your own far end

The call probe needs something outside your network to bounce off — reflecting off your own router only proves your LAN works. The reflector is a tiny, stateless UDP echo: use the free public fleet, or drop your own on any VPS. Every packet crosses the exact path that breaks — your access link, your ISP, the internet — and comes straight back.

  • safe on a public IP — an HMAC handshake proves each sender's address, so spoofed traffic never earns a single echo toward a third party.
  • no amplification — every reply is byte-for-byte the request, never bigger. Rate-limited per source and globally.
  • featherweight — zero per-client state, ~9KB/s each way per monitor. The smallest droplet you can rent is overkill.
  • use two — a near and a far reflector separate access-link problems from general internet weather. The public fleet covers both US coasts plus Europe.
# zero setup — point pingway at the
# public fleet and you're done:

CALLPROBE_REFLECTORS=NYC3:01.reflector.nyc3.pingway.net,
SFO3:01.reflector.sfo3.pingway.net,
AMS3:01.reflector.ams3.pingway.net

# nyc3 • sfo3 • ams3 — keep one near you
# plus one far, or run all three.
# free & best-effort; rate-limited. no signup.

how pingway sees your network

pingway LIVE
router 0.3 ms
wifi hub 0.6 ms
isp 11.7 ms
internet 23.1 ms

answering fast

slowing down or dropping packets

real trouble

read it top to bottom — the first hop that changes color is where your problem lives.

get up and running in 30 seconds

$ curl -fsSL https://raw.githubusercontent.com/jasondcamp/pingway/main/install.sh | bash

# then visit http://localhost:8080
Pingway Mascot Sitting