Packet Loss Test

Check your connection for packet loss, latency and jitter in 20 seconds. Real UDP packets, a plain-English answer, and no ads. Works in Safari.

Test length

Sends 50 small UDP packets a second through Cloudflare and counts what comes back. Free, no sign-up, no ads. We don't store your IP address.

What is packet loss?

Everything you do online travels as small chunks of data called packets. Packet loss is the share of those packets that never arrive. A web page or a download quietly asks for the missing packets again, so loss there just makes things slower. Video calls, voice calls and online games can't wait for a resend, so a lost packet becomes a frozen face, a clipped word or a character that jumps across the screen.

This test also measures three things that matter just as much for calls and games:

  • Latency (or ping): how long a packet takes to get to Cloudflare's nearest location and back.
  • Jitter: how much that delay changes from one packet to the next. High jitter makes calls stutter even when nothing is lost.
  • Late packets: packets that arrived, but more than 150 ms behind the rest. A call app throws these away, so for calls they count as lost.

Read more in What is packet loss, and how much is too much?

What's a good result?

On a healthy home connection you should see 0% packet loss, latency under about 40 ms to Cloudflare, and jitter of a few milliseconds. These are the limits the test uses for a "Good" verdict:

UsePacket lossLatencyJitter
Video callsZoom, Teams, FaceTime, Meetunder 1%under 100 msunder 30 ms
Online gamingFortnite, CS2, Valorant, Call of Dutyunder 0.5%under 50 msunder 15 ms
Voice (VoIP)Wi-Fi calling, WhatsApp, Discord voiceunder 1%under 150 msunder 20 ms
Streaming videoNetflix, YouTube, Twitchunder 1%under 300 msunder 100 ms

Calls, voice and games also count late packets as lost, because they arrive too late to be used.

How this test works

Most "packet loss tests" run over TCP, which resends anything that goes missing, so they can never see loss. This one opens a WebRTC data channel set to unordered, with no retransmits, and relays it through Cloudflare's TURN service over UDP. Your browser sends 50 numbered packets a second to itself by way of the nearest Cloudflare location, and counts which ones come back.

Because the same browser sends and receives, both ends share one clock, so every packet's delay is measured exactly. The test also takes a quick latency reading over an ordinary TCP connection. If UDP delay spikes far above that baseline, something on your network is queueing traffic, which is often bufferbloat: a router holding too much data when the connection is busy.

What it covers, honestly: your device, your Wi-Fi, your router and your ISP's access network, which is where most home connection problems start. It doesn't test the route to a particular game server or call bridge, and it combines upload and download loss into one figure. The test engine is adapted from Cloudflare's open-source speedtest library.

What causes packet loss?

  • Wi-Fi. Weak signal, interference from neighbouring networks, microwaves and Bluetooth, or a device roaming between access points. The most common cause by far.
  • A busy connection. Backups, cloud sync, game downloads and 4K streams on other devices fill the line, and the router starts dropping packets.
  • The router. An overheating or overloaded router, old firmware, or one that needs a restart.
  • Cables and the line. A damaged Ethernet cable, a loose coax connector, or noise on a DSL line.
  • Your ISP. Congestion in the evening, a faulty node, or problems further upstream.

How to fix packet loss

  1. Test on a cable. Plug into the router with Ethernet and run the test again. If the loss disappears, the problem is your Wi-Fi.
  2. Fix the Wi-Fi. Move closer to the router, switch to the 5 GHz or 6 GHz band, change channel, or add a mesh node or access point.
  3. Quiet the network. Pause large downloads, uploads and backups on other devices and test again. If that helps, turn on your router's SQM or QoS feature to stop bufferbloat.
  4. Restart and update the router. Then check its cables and the line from the wall.
  5. Collect evidence for your ISP. If loss persists on a cable with nothing else running, share your result link with your ISP. Evidence over several days is much harder to dismiss than a single test.

The full walkthrough is in How to fix packet loss.

Is your internet stable, or just stable right now?

Connection problems rarely hold still for a 20-second test. To check whether your connection holds steady, run the internet stability test: it measures for 5 or 10 minutes and reports drop-outs, bursts of loss and lag spikes as they happen.

Even that is a snapshot. Loss that appears every evening at 8 pm, when a neighbour's backup starts, or every few hours when the router reboots only shows up if you happen to test at that moment. Catching those takes monitoring that runs for days, not minutes.

Monitor your connection 24/7 with PeakHour

PeakHour sits in your Mac menu bar and records packet loss, latency and bandwidth all day. Hop-by-hop traceroute shows whether a problem starts on your Wi-Fi, your router or your ISP, and the history gives you the evidence to prove it.

Get PeakHour for Mac

Frequently asked questions

What is a good packet loss percentage?

Under 1% is good, and a healthy wired connection usually shows 0%. Between 1% and 3% you will notice glitches on video calls and in games. Above 3% calls break up and games rubber-band. Streaming video copes better because it buffers, but sustained loss still slows it down.

How accurate is this packet loss test?

It sends real UDP packets with no retransmission, the same way calls and games send theirs, so a lost packet really was lost. Delay is measured on a single clock, so latency and jitter are exact to the millisecond. The limit is time: a 20-second test only sees problems that happen during those 20 seconds.

Does it test upload and download loss separately?

Not yet. Each packet travels from your browser to Cloudflare and back, so the result combines both directions. If you see loss, the "what to try" steps help narrow down where it starts.

Why is my result different from the ping in my game?

This test measures the path from your device to the nearest Cloudflare location, which covers your Wi-Fi, your router and your ISP. A game server may be hundreds or thousands of kilometres further away, so in-game ping is higher. Loss on your side of the connection shows up in both.

Does it work in Safari and on iPhone?

Yes. The test uses WebRTC, which Safari, Chrome, Edge and Firefox all support, on Mac, Windows, iPhone, iPad and Android. Keep the tab in front while it runs: browsers slow down background tabs, which would spoil the result.

The test says it could not open a UDP connection. What does that mean?

Something between you and the internet is blocking UDP traffic, usually a VPN, a corporate firewall or a strict router setting. Video calls and games rely on UDP, so this is worth fixing on its own.

Do you store my IP address?

No. Your IP address is used for a moment to stop abuse and is never stored. If you choose to share a result, we store only the numbers shown on the result card, under a random link.

How do I monitor packet loss all the time?

On a Mac, PeakHour watches your connection around the clock from the menu bar. It records packet loss and latency to every hop between you and the internet, so when the loss comes back you can see whether it started on your Wi-Fi, your router or your ISP.