How to test a free node properly: four steps
The latency number in your client answers one small question. This is the full filter: latency, real throughput, packet loss and a peak-hour retest, with the cutoffs I use.
Most people test a node exactly one way: press the latency button, pick the smallest number.
Roughly half of what that selects will not work.
Here is the full filter. Fifteen minutes to go from a hundred candidates to the two or three worth keeping.
Why latency alone is not enough
That number measures one thing: how long an HTTP request to a test endpoint took to come back.
It tells you the node is alive and the round trip is short.
It tells you nothing about:
- Throughput — whether it can fill your connection
- Stability — whether it drops three times a minute
- Packet loss — whether video stalls and streamed AI output breaks
- Peak-hour behaviour — the only period most people care about
I have used plenty of nodes that answered in 60 ms and delivered 300 KB/s. The route is open; there is simply no capacity on it.
Step 1: bulk latency, cut most of them (2 minutes)
Every Clash-family client tests a whole group at once.
Discard immediately:
| Result | Why |
|---|---|
| Timeout | Dead |
| Over 800 ms | Usable but miserable |
| 0 ms | Fake — intercepted test endpoint |
| Wildly different across three runs | Unstable |
A hundred nodes typically leaves twenty or thirty.
Step 2: measure real throughput (about a minute each)
The step that matters, and the one most people skip.
Switch to the node, then:
speedtest-cli --simple
Ping: 78.221 ms
Download: 62.40 Mbit/s
Upload: 8.13 Mbit/s
Or open fast.com in a browser.
My cutoffs:
| Download | Verdict |
|---|---|
| Under 5 Mbps | Discard — even browsing stutters |
| 5–20 Mbps | Acceptable; browsing and 720p |
| 20–50 Mbps | Good; 1080p is comfortable |
| Over 50 Mbps | Keep it |
Check upload too. Below 2 Mbps up, file transfers, video calls and image uploads to AI tools all become painful. Free nodes are consistently worse on upload than download.
Step 3: stability (10 minutes, run it in the background)
Throughput is meaningless if it cannot hold.
ping -t 1.1.1.1 # Windows
ping 1.1.1.1 # macOS / Linux
Ten minutes, then read the summary.
| Metric | Standard |
|---|---|
| Packet loss | 0% is good; above 1% rules out streaming |
| Jitter | Max minus min under 30 ms |
Five percent loss is invisible while browsing. It destroys video calls, and it will break a streamed AI response mid-sentence — which is exactly the complaint behind "the internet works but ChatGPT keeps cutting out".
Step 4: retest at peak (the decisive one)
Run steps 1–3 during the day, then retest the finalists between 8 and 10 pm.
Not optional. From my own log:
| Time | Latency | Down | Experience |
|---|---|---|---|
| 14:20 | 78 ms | 62.4 Mbps | Excellent |
| 20:45 | 96 ms | 8.1 Mbps | 1080p buffers |
| 21:30 | 210 ms | 1.2 Mbps | Pages will not load |
| 09:10 next day | 82 ms | 55.7 Mbps | Recovered |
A 98% collapse at peak, on a node that measured beautifully six hours earlier.
You will use it in the evening. Judge it in the evening.
Use-specific tests
Passing the four steps means the node is basically sound. Whether it does your job is a separate question.
AI tools
Ask for 800 words and see whether it completes without breaking.
I have had nodes clear all four steps and fail this. Details: Using ChatGPT over a free VPN.
Streaming
Play actual 4K content. Ignore "unblock checker" pages — they test IP geolocation, not whether playback works.
Free nodes fail this essentially always; I have not had one succeed in six months.
Gaming
Jitter, not bandwidth. Latency bouncing between 80 and 90 ms is fine; 80 to 300 ms is unplayable.
Make it a routine
What I actually do:
- New subscription → step 1, keep about twenty
- Steps 2 and 3 on five of them → keep two or three
- Evening retest → pick a primary and a backup
- Repeat weekly (median free node lifespan: six days)
Fifteen minutes once you have done it a few times.
But notice the shape of that: it is a weekly chore. Fifty-two weeks at fifteen minutes is thirteen hours a year. That arithmetic is part of why I ended up paying — the full version is in Do free nodes actually save money?
Read next
- Free proxy nodes: where they come from
- Free VPN vs paid service: seven measurements
- Connected but nothing loads
- Is using free nodes safe?
Questions people keep asking
Is the latency figure in my client accurate?
It tells you the node is reachable and roughly how long a handshake takes. It says nothing about throughput, packet loss, or how the node behaves over time. Low-latency, high-loss nodes are extremely common.
Why is latency low but pages still slow?
Latency and bandwidth are different measurements. Low latency means the route is short; low bandwidth means there is no capacity left on it. A node shared by several hundred people can still answer in 80 ms while giving you a few hundred Kbps.
What does 0 ms mean?
It is fake. Usually the client's test endpoint got intercepted or resolved locally, so the request never actually left. Nodes showing 0 ms will not work when you try to use them. Discard on sight.
Do I really have to test in the evening?
If you use the connection in the evening, yes. Free nodes can differ by a factor of fifty between midday and 9 pm. I have measured the same node at 62 Mbps and 1.2 Mbps on the same day. A daytime-only test tells you nothing about your actual experience.