Skip to content

VPN speed test comparison: How to run your own tests without being misled by advertised numbers

Choose the right speed test, timing and metrics. A consistent, hands-on comparison is more reliable than numbers on a marketing page.

A useful VPN speed test isn’t about finding the biggest download number. It’s about finding the route that works best for your needs. Test your local connection first, then keep the device, test target and client settings consistent before checking performance in the apps you actually use. This helps separate differences caused by your internet connection, VPN route and destination site.

Start by defining what you want to test

Slow page loads, video buffering, sluggish downloads and choppy calls don’t necessarily share the same bottleneck. Loading a webpage involves DNS lookups, connection setup and multiple resource requests. Large downloads depend more on sustained throughput, while voice and video calls are more sensitive to latency fluctuations and packet loss. A bandwidth leaderboard may point you to a route that downloads quickly but performs poorly for interactive tasks.

Before testing, write down a specific task: open a site you use regularly, play the same video, or download the same public file. Note where a failure occurs—for example, whether the domain fails to resolve, the connection takes too long, or the transfer stalls. A specific target makes results easier to interpret and gives support staff information they can verify.

A useful rule of thumb

Rule out local network problems before comparing VPN routes. Check whether the task works reliably before focusing on peak bandwidth. A speed test only measures the path to its test server; it doesn’t represent speeds to every website.

Choosing tools: measure bandwidth, latency and packet loss separately

Browser-based speed tests are useful for checking upload, download and latency, but their automatically selected test server may change with your exit location. When comparing routes, manually select the same server if possible and note its name. Some tools show both idle and loaded latency; loaded latency can reveal slower responses when a download saturates the connection.

Choose metrics based on what you’re troubleshooting
Metric Recommended tool or test What it tells you Key limitations
Download and upload throughput Speed test with a fixed server How well the route sustains data transfers Concurrent connections and test server conditions affect results
Round-trip latency Client connection test, ping How long a request takes to travel to the destination and back Different tools may use different probing methods
Latency variation and packet loss Continuous probes, observation during a real call Whether responses are consistent and transfers are interrupted Probe packets may be throttled or filtered
Page load process Browser network panel Time spent on DNS resolution, connection setup, first byte and resource loading Caching and website server conditions can skew comparisons
Real-world app performance A consistent video, file or meeting scenario Whether it meets your everyday needs Apps may adjust video quality or choose different content servers

Check the units. Speed tests often show Mbps, while download apps may show MB/s. These measure bits and bytes respectively, so the numbers aren’t directly comparable. Always record the unit alongside the value. Protocol overhead, server limits and disk write speeds can also make an actual file download differ from a speed test result.

Keep your device and local network consistent

Test your local connection first with the VPN disconnected. Choose a destination you can normally access and check that pages load and transfers work as expected. This checks your internet connection; it’s not a way to calculate VPN overhead by comparing results for different destinations. If your local connection is already slow, check your Wi-Fi signal, router load and ISP connection first.

Your device can also be a bottleneck. Encryption, virtual network interfaces and high-throughput transfers use CPU resources. Power-saving mode, temperature and Wi-Fi drivers can affect results too. If speeds stop increasing past a certain point, check CPU usage and retest on another device before assuming the route is throttled.

A consistent testing process: Compare routes during adjacent time windows

Use the times when you normally access international websites as your main testing window, then retest during a quieter period. Don’t draw conclusions from an off-peak test alone, and don’t directly compare one route’s early-morning performance with another’s evening results. Testing at different times can reveal congestion patterns, but it doesn’t prove on its own that one route is better.

  1. Record the baseline conditions. Note the device, connection type, client version, proxy mode and test target. Make sure nothing is transferring data in the background.
  2. Connect to a candidate route. Check which node the client shows as connected, then use the connection log to verify that test traffic is going through it. Temporarily disable automatic switching so you don’t end up testing a different route.
  3. Run the same test. Use the same server and test mode. Record download, upload, latency and any failures—not just a screenshot of the best score.
  4. Repeat and alternate the order. After testing one route, switch to another and then return to the first. This helps reduce bias from network changes over time. Record occasional peaks separately from sustained performance.
  5. Check a real-world task. Open the same website or play the same video, and note loading, buffering and connection drops. Record whether the task succeeds, too.

Your log can be simple: time, route name, test server, proxy mode, download and upload speeds with units, latency and anything unusual. After repeated tests, compare the median and range rather than picking the best run. Don’t discard failed tests—they may reveal everyday reliability issues.

Check that routing, DNS and client settings aren’t changing the path

In rule mode, a speed test site may use a direct connection while your target app uses the VPN—or the other way around. If a test is fast but a website is slow, check the client’s connection log for the matching rule, outbound node and destination domain. If needed, temporarily route the test target through the candidate route, then restore your usual rules afterward.

A system proxy usually affects only apps that follow the proxy settings. TUN mode captures more traffic through a virtual network interface, but its actual coverage still depends on routing, exclusions and platform implementation. System proxy behavior differs across Windows, macOS and Linux, and from network extension behavior on mobile platforms. A connection icon doesn’t mean every app is using the same route.

DNS translates domain names into IP addresses. A failed lookup can make a website unreachable, while a different resolved address may send requests to another content delivery server. Encrypted DNS in your browser, the system resolver and the client’s DNS policy may all be active at once. Keep these settings consistent when comparing routes, and, if needed, record the resolved address and timing details from the browser’s network panel.

A DNS leak means DNS requests leave the expected protected route; seeing the name of a local resolver isn’t enough to confirm one. Check the client mode, DNS rules and actual request route together. DNS leak test pages can offer clues, but their results alone can’t establish whether all network traffic is protected—and a leak test is not a bandwidth test.

Protocols and route types aren’t speed rankings

Shadowsocks, VMess, Trojan and VLESS are different proxy protocol families. Actual performance also depends on the specific configuration, client implementation and server resources. Hysteria2 and TUIC are based on QUIC and rely on how the UDP path performs; results may vary if your network restricts UDP. A protocol’s name alone can’t tell you which route will be faster on your network.

When comparing routes, keep the protocol and transport settings fixed and change only the route if possible. If a node’s protocol, transport method or exit location also changes, describe the result as a comparison of those complete configurations—not as proof that one protocol is faster. Don’t weaken security settings or import configurations from unknown sources just to run a speed test.

An IEPL circuit refers to a dedicated Ethernet transport resource; it doesn’t guarantee fixed bandwidth across the entire path. A relayed route typically connects to an entry point, which then forwards traffic to another node. A direct route usually connects from your local network to a remote node. The entry point’s distance, cross-border segment, exit load and destination website can all be bottlenecks, so labels such as “dedicated,” “relayed” or “direct” don’t rank routes by speed.

Turn your results into a practical choice

For video, focus on sustained transfer speeds and buffering, not just a burst at the start. For meetings and other interactive tasks, pay more attention to latency variation, dropped connections and responsiveness under load. If you upload work files, check upload performance separately; a good download result doesn’t guarantee good uploads. Choose based on the tasks you actually do, not the highest spot on a chart.

If every route is slow, check your local connection and device first. If only one website is slow, check its status, DNS and routing rules. If the same test target slows down across multiple routes at certain times, record the time and path details and test again. If an intermediate hop doesn’t respond to a route probe, that alone doesn’t prove packet loss; consider the later hops and destination as well.

When contacting support, include the client version, node name, proxy mode, test time, speed test server and redacted screenshots. Remove usernames, subscription links, tokens and credentials from any full configuration you share. See the troubleshooting guide for connection and subscription checks. To confirm route types, visit the routes page.

Reviewing the results

A route suited to regular use should deliver consistently similar performance across the apps and times you use most. Keep conditions consistent, log failures, verify the traffic path and finish with a real-world task for a meaningful VPN speed comparison.

VPNHL · Find a route that fits how you use the internet

Create an account with a username and password—no email address required. VPNHL follows an anonymous, no-logs privacy policy and supports unlimited devices. Start by defining what you need, then review billing options and route information.

First Month Free