Internet Stability Test

Log your ping once a second for 5 to 60 minutes and catch the drops, spikes and outages a speed test never shows. Keeps running in a background tab.

- % uptime 5 min window
Ready
The verdict appears when the window ends or you stop.
Ping timeline
top edge 100 ms

Each bar is the worst ping in its slice of time. Amber is a spike, red is a drop.

Average
-
Min
-
Max
-
Jitter
-
Drops
-
Longest outage
-
Runs in this browser
WhenLengthDrops
Next run--

Leave this tab open and go play or work. The probe runs in a Web Worker, so it keeps ticking while the tab sits in the background. Once a second it asks the RigPolice edge for a tiny reply and logs the round trip; a reply that takes longer than two seconds counts as a drop. This is not a packet loss test: a normal web request quietly resends what it loses, so use the packet loss test for that.

↗ Suggest an improvement

Pick a window, press Start monitoring, and leave the tab open. Once a second the monitor asks this site’s edge for a tiny reply and logs the round trip. A reply that takes longer than two seconds counts as a drop. When the window ends you get uptime, a verdict, and a timeline that shows exactly when the line went quiet. It keeps ticking while you play or work in another window, so run it at the time of day your connection usually acts up, and run it once more on a cable before you blame your provider.

How to use

  1. Pick a window. Five minutes tells you what the line is doing right now. If the problem comes and goes, choose 30 or 60 minutes and start it at the time of day the connection usually acts up.
  2. Press Start and walk away. Leave the tab open and go play or work in another window. The probe runs in a Web Worker, so it keeps ticking in the background. Closing the tab or putting the computer to sleep is what stops it.
  3. Read the ring, the verdict and the timeline. The ring is uptime. The verdict sums up the run. On the timeline a full red bar is a drop and an amber bar touching the top is a spike, so a run of red shows exactly when the line went quiet.
  4. Repeat on a cable, then share. If you were on Wi-Fi, plug in and run the same window again. If the drops vanish, the wireless link is the fault. Press Share to get a link that carries every number on the page.

Why test this

Your speed test says 300 Mbps and your game still kicks you to the menu twice a night. That is the gap this test covers. A speed test measures how much data your line moves in about ten seconds. It can't see a connection that works for nine minutes and vanishes for the tenth. Disconnects, a video call that freezes, a Discord voice that turns robotic for a moment: those come from a line that stops answering, and you only catch that by asking it over and over for a long time. This monitor asks once a second for 5, 15, 30 or 60 minutes and writes down every answer. A reply that takes longer than two seconds counts as a drop, and back to back drops become an outage with a length you can quote. The probe keeps running in a background tab, so start it, go play, and read the log when you come back. Run it during the hours your connection usually acts up. A clean run at noon proves nothing about the 9 pm problem. Two runs, one on Wi-Fi and one on a cable, tell you whether the trouble lives in your house or at your provider.

What the results mean

The ring shows uptime: the share of probes that got an answer in time. 100 percent means the line never went quiet. Under it sits the verdict. Stable is zero drops and almost no spikes. Spiky is zero drops but a ping that jumped far above its normal level at least two percent of the time, which is the stutter you feel on Wi-Fi. Brief drops means a few probes went unanswered for a second or two, with uptime still at 99.5 percent or better. Unstable means an outage of five seconds or more, or enough drops to pull uptime under that line. The timeline has 120 bars, each holding the worst ping in its slice of the run. A bar that reaches the top edge is a spike, drawn in amber. A full red bar is a drop, so a run of red is your outage and its position tells you when it happened. Below that, Average, Min and Max are your ping to the nearest Cloudflare edge, so a low number means a short trip, not a fast download. Jitter is how much the ping moved between one probe and the next; under 10 ms feels steady in a game. Drops is the raw count and Longest outage is the worst stretch in seconds. Those two are the numbers to quote to your provider.

FAQ

What counts as a drop in this test?
Every second the monitor sends one small request to this site's edge. If no reply comes back within two seconds, or the request fails outright, that second is a drop. Drops that follow each other are one outage, and its length runs from the first missed probe to the next answered one. A spike is different: the reply arrived, but it took more than three times your median for the run, and at least 100 ms.
How long should I run an internet stability test?
Five minutes is enough to see what the line is doing right now. A problem that comes and goes needs 30 or 60 minutes, started at the hour it usually bites, because evening congestion never shows up in a lunchtime run. If a long run stays clean, run it again the next day at the same hour before you clear your provider.
Why does my speed test look fine but my games still disconnect?
A speed test measures how much data moves in about ten seconds. A game needs a line that answers every single time for an hour, and a two second gap that a download would never notice is enough to kick you out of a match. That gap is what this test logs. A speed test can't see it, and a fast plan doesn't prevent it.
Is this a packet loss test?
No. A normal web request rides on TCP, which quietly resends anything that goes missing, so this monitor sees a lost packet only as extra delay or as silence. It measures delay and outages over time. To count packets that never arrive, use the packet loss test, which sends UDP through a relay where a lost packet stays lost.
Does it keep running if I switch tabs?
Yes. A browser slows a background tab's timers to about once a minute after a few minutes, which would ruin a per second log, so the probe runs in a Web Worker that the browser doesn't throttle. Two things still stop it: closing the tab and putting the computer to sleep. A sleep shows up as a gap in the timeline rather than a wall of red. The probe moves only a few kilobytes a second, so it won't slow down whatever you are doing.
Is it my Wi-Fi or my provider?
Run it twice. First on Wi-Fi from where you normally sit, then with a cable from the router, same window, same time of day. If the drops vanish on the cable, the wireless link is the problem: distance, a crowded channel, a neighbor's router on the same one. If the cabled run drops too, the fault sits at the router or beyond it, and beyond it is your provider's side to fix.
How do I prove to my ISP that my internet keeps dropping?
Run a 30 or 60 minute window on a cabled connection during the hours it fails, then press Share. The link carries the verdict, uptime, the timeline with every drop where it happened, the longest outage and your ping numbers, and support can open it without an account. Note the date and time next to it. The table under the result keeps both for your last 10 runs. Two or three links from different evenings beat one, since a single bad run gets waved off as a fluke.
What is a good internet stability test result?
Stable, with uptime at 100 percent and a level timeline. Your average ping depends on how far you sit from the nearest Cloudflare edge, so 8 ms and 30 ms are both fine. What matters is that the bars stay flat. Jitter under about 10 ms feels steady in a shooter. One drop in an hour is worth noting but rarely felt. Anything graded Unstable is a real fault worth chasing.
Does it keep a record of my past runs?
Yes. Each run's start time, length and drop count are saved in this browser, and the last 10 are listed under the new result. All window lengths share one list, so a short run sits next to a long one. Clear this site's data and the list is gone.

How we measure

Once a second, a Web Worker sends a tiny HEAD request to this site and times the reply. Cloudflare serves it from the data center nearest you. That worker keeps its timers running in a background tab, where the page's timers slow down to once a minute.

A probe with no answer within 2 seconds, or one that fails outright, counts as a drop. Back-to-back drops are one outage, measured from the first missed probe to the next answered one. Uptime is the share of probes that got an answer in time.

Ping figures come from the answered probes. Jitter averages how much each answered probe's time differs from the one before. A spike is an answered probe slower than 3 times the run's median and slower than 100 ms. Both must hold, so a line that idles at 8 ms isn't flagged at 30 ms.

Stable means no drops and spikes on fewer than 2% of probes. Spiky means no drops but spikes on 2% or more. Brief drops means the longest outage stayed under 5 seconds and uptime held at 99.5% or better. Anything else is Unstable.

What a browser cannot see

Each probe is a web request over TCP, and TCP resends whatever gets lost. Packet loss shows up here as a slower reply or, if it lasts, as a drop. For a count of missing packets, run the packet loss test.

Probes stop at the nearest Cloudflare data center. A drop means that trip failed. Trouble further on, between there and your game's server, never shows on this timeline.

Closing the tab or putting the computer to sleep stops the probe. Sleep leaves a gap in the timeline, not a run of drops.

A heavily loaded computer can be slow to handle a reply on its end, and the delay reads as a slower ping.

Sources

Was this tool useful?

Related reading

Related tests

Embed the internet stability test on your page

Helping readers with a connection that cuts out every evening? Put the stability test in your guide and it logs their round trip once a second, for 5 to 60 minutes. Two seconds without a reply counts as a drop, marked in red on the run's timeline.

Want the whole set on your pages? See every tool you can embed →