Skip to content
Networking About 8 min read

VPN speed test comparisons: tools, timing, and metrics

Test VPN speeds objectively with the right tools, timing, and metrics. Compare your own results instead of relying on advertised figures.

VPN Speed Tests: Decide What to Compare First

The key to comparing VPN speeds is to keep test conditions consistent and interpret results in light of how you use the connection. A high download speed does not guarantee stable video calls, and low latency to a server shown in the app does not mean a website will load quickly. Before testing, define your needs: downloading files, streaming video, working remotely, or real-time interaction.

A complete connection passes through your device, home network, ISP connection, proxy route, and the destination service. A speed test reflects how that specific path performed at that moment; it cannot prove the capability of any one segment on its own. Change the test server, network connection, or traffic rules, and the results may no longer be comparable.

How to assess results: Test your direct connection first, then the proxy route, and finally the apps you actually use. Consistent, repeatable performance is more useful than an occasional peak.

Understanding Throughput, Latency, Jitter, and Packet Loss

Speed test pages often put download speed front and center, but different tasks have different bottlenecks. Match each metric to the experience it affects before using it to compare options.

What each metric means and its limits—no universal pass/fail thresholds
Metric What it measures Most relevant for Common misinterpretation
Download throughput The amount of data received per unit of time File downloads, video buffering A peak from multiple concurrent tests does not equal the sustained speed of one file download
Upload throughput The amount of data sent per unit of time Cloud backups, sending video during calls Fast downloads do not mean uploads are fast too
Round-trip latency The time for a request to reach its destination and for the response to return Remote desktops, interactive tasks Only measures the round trip to the test destination
Jitter How much latency varies across repeated measurements Voice calls, live video, gaming Different tools may calculate it differently
Packet loss Packets that fail to arrive or receive a response, as defined by the tool Real-time traffic, connection troubleshooting A probe that gets no response does not always mean application traffic was lost
Latency under load Round-trip latency while the connection is busy uploading or downloading Joining a meeting while transferring files Low idle latency can still rise sharply under load

Bandwidth describes a link's capacity; speed tests usually measure throughput. Tools commonly show rates in Mbps, while download apps may use MB/s. These units differ, so don't compare the numbers directly. Also check whether a tool reports an average, an instantaneous reading, or a peak.

Jitter does not have one universal definition such as “highest latency minus lowest latency.” Some tools calculate changes between consecutive samples; others use different methods. Keep the tool and settings consistent when comparing routes, and don't combine jitter results from different tools in one ranking.

Speed Test Tools: Combine General Tests with Real-World Checks

Browser-based speed tests

Tools such as Speedtest and Fast.com can help you check throughput, but they use different servers and testing methods. If you can select a server manually, use the same one to compare routes. If the tool selects one automatically, record which server it chose. An automatically selected nearby server may not represent the route to your work sites.

Browser proxy extensions, system proxies, and tunnel modes route different portions of your traffic. Even if a speed test page loads, confirm that its test connection actually passes through the node you're evaluating. Check the client connection log, rule matches, and public IP address to avoid mistaking a direct connection for proxy speed.

System-Level Checks and Real-World Apps

Your system's ping command can help track changes in a destination's response time, but it mainly uses ICMP. Don't assume it follows the system proxy used by your browser. With system proxy mode enabled, ping may still connect directly. Some destinations also limit or ignore probe requests, so a timeout alone does not mean the route is unavailable.

Testing the apps you actually use matters too. During a download, check whether transfer speeds remain steady; on a call, watch for gaps in audio or video; while streaming, note whether playback buffers consistently. Browser developer tools can help distinguish DNS lookup, connection setup, and response wait time, though a single request's wait is also affected by how quickly the destination server responds.

A client's “latency test” may probe the node's entry point or request a specific URL through the node. Check the client documentation to understand which part of the route the result represents. Values from different clients are not necessarily comparable.

Test steps: keep conditions fixed, then switch routes

These steps work on computers and mobile devices. On a mobile device, also note whether you're using Wi-Fi or cellular data, and don't switch connection types during a test.

  1. Prepare your local setup. Pause cloud sync, system updates, and background downloads. Keep the device in the same place and use the same network connection throughout. If practical, use a wired connection on a computer to reduce fluctuations from wireless signal strength.
  2. Measure a direct-connection baseline. Without a proxy, use a fixed test destination accessible on your current network and record throughput and latency. If you can't reach it directly, note that there's no comparable baseline; don't record a failed test as zero speed.
  3. Record your client settings. Note the node name, protocol, proxy mode, rules, and test server. Wait until the connection is stable before testing, so brief interruptions while switching nodes don't skew the results.
  4. Repeat tests and keep the variation. Don't cherry-pick the best result. Save the raw results from each round and look at typical performance as well as unusual fluctuations. If possible, rotate the order in which you test nodes to reduce timing bias.
  5. Check real-world use. Use the same website, a comparable file, or the same video quality settings. Check whether speeds hold up and interactions stay responsive. One successful page load is not a substitute for testing the full experience.
  6. Change only the factor you're comparing. To compare protocols, keep the region, destination, and mode as consistent as possible. If you change the node, protocol, and rules at once, you're comparing configurations as a whole—not isolating the effect of the protocol.

If you need a remote speed test server, use an endpoint you're authorized to test. Don't send large volumes of traffic repeatedly to an unknown server. Browser-based tests can also use significant data, so avoid chasing peak results when your connection is metered.

When to Test and What to Record

Test at times when you commonly use the connection, and include a relatively quiet period for comparison. Evening peak hours are worth checking, but they don't fall at the same fixed time everywhere: local access networks, node locations, and destination services all have their own traffic patterns. Recording the actual date and time is more useful than simply writing “evening.”

When comparing routes, alternate between the options instead of testing one entirely during quiet hours and another entirely during busy periods. If a result looks unusual, first check whether someone is uploading files on your local network, then test again. For comparisons across different dates, note any changes in network conditions.

  • ✅ Record your network setup: device, connection type, local ISP, and any background tasks.
  • ✅ Record proxy settings: node, protocol, client mode, and whether the test traffic matched a proxy rule.
  • ✅ Record the test details: tool, server location, real-world task, and date and time.
  • ✅ Keep the raw results: download, upload, latency, fluctuations, and notes on stuttering or disconnections.
  • ❌ Don't rank results with unknown exit routes, different servers, or inconsistent units side by side.

When summarizing results, the median can describe typical performance; keep low readings and the range of variation too. For calls and remote desktops, include noticeable pauses in your conclusion rather than letting a flattering average speed hide them. With a limited sample, qualify your finding as applying “under the conditions and at the times tested” instead of presenting it as a long-term guarantee.

Unexpected Speed Results: Check the Route, Rules, and Destination

Speed tests are fast, but websites are slow

First check whether the issue affects every site or just one service. Speed tests may use multiple concurrent connections, while website performance depends on DNS lookup, connection setup, CDN server selection, and server response time. Traffic rules may also send the speed test through a proxy while the website connects directly, which can make the results seem contradictory.

Also check whether DNS is handled as expected. A DNS leak concerns lookup requests being sent to resolvers outside the expected path; it is not simply “slow DNS.” DNS can affect privacy and CDN server selection, but a slow-loading page alone does not prove a leak. Check the client's DNS settings, rules, and actual resolution path.

Low latency, but slow downloads

Low latency only means a short round trip to a particular destination; it doesn't prove that the route has enough throughput. The node's exit connection, destination-side limits, local access network, or device performance may be the bottleneck. First test another similar download destination and compare it with your direct baseline before changing multiple settings at once.

Can protocol or route names predict performance?

Shadowsocks, VMess, Trojan, VLESS, Hysteria2, and TUIC are different proxy protocols or solutions, with different transport methods, implementations, and operating conditions. You can't tell which will be faster just from the name. In particular, transports may respond differently to network restrictions and packet loss, so make sure the client and server settings are compatible when comparing them.

Direct connections, relay routes, and IEPL dedicated lines describe different aspects of a network setup, not the same performance metric. A relay adds a forwarding step but may improve routing; a direct route is more straightforward but is still affected by public internet peering. IEPL is a dedicated Ethernet connectivity service, and real-world access also depends on the onward exit and destination route. Names can explain the architecture, but only tests under consistent conditions can show how it performs.

Choose Based on How You Use the Connection

For downloads and cloud transfers, focus on sustained throughput and whether long transfers are interrupted. For video, check performance at your actual playback quality and watch for buffering. For calls and remote desktops, pay closer attention to jitter, signs of packet loss, and latency under load. Don't sacrifice the stability you need just to rank higher in a speed test.

After testing, keep the configuration that works for everyday use and retain alternatives with different performance characteristics. Recheck your key tasks when your network or client settings change. The number of available routes tells you how many options there are, not how fast they are. View X5VPN route details in the server list, and check traffic rules and billing in the plans and pricing page.

When contacting support, include the test date, node name, connection type, client mode, and what went wrong. These details are usually more helpful than simply saying “it's slow.” Submit the information you need through the support ticket portal. Before sharing screenshots, hide subscription links, passwords, and access tokens; never expose account credentials to explain an issue.

Get started free