HomeMethodology

Our Testing Methodology

Full transparency on how we collect, measure, and report VPN speed data. No black boxes.

Testing Infrastructure

Our speed tests run on a dedicated server with a direct, high-speed internet connection. This ensures the bottleneck in each test is the VPN connection itself, not our own infrastructure.

ComponentDetails
Test Server LocationDedicated VPS with high-bandwidth connectivity
Speed Test ToolOokla Speedtest CLI (official command-line client)
VPN ProtocolWireGuard (via official Surfshark configs)
VPN ClientWireGuard for Windows (native kernel implementation)
Test FrequencyContinuous — all servers tested in rotation, 24/7
Servers Tested142 Surfshark server locations across multiple countries

How Each Test Works

Every speed test follows the same automated sequence to ensure consistency and fairness:

  1. VPN Connection: Our system connects to a Surfshark WireGuard server using the official configuration file. We verify the tunnel is active and that traffic is routed through the VPN by confirming IP connectivity and DNS resolution.
  2. Speed Test Execution: We run the Ookla Speedtest CLI, which selects the optimal test server and measures download throughput, upload throughput, ping latency, and jitter.
  3. Result Recording: The raw results (download Mbps, upload Mbps, ping ms, jitter ms, test server used, and pass/fail status) are logged to our database with a UTC timestamp.
  4. VPN Disconnection: The WireGuard tunnel is torn down cleanly before the next server is tested.
  5. Repeat: The system moves to the next server in the rotation and repeats. A full round through all servers takes several hours, then starts again immediately.

What We Measure

Download Speed (Mbps)

The rate at which data can be pulled through the VPN tunnel, measured in megabits per second. This is the most important metric for streaming, browsing, and downloading files.

Upload Speed (Mbps)

The rate at which data can be pushed through the VPN tunnel. Important for video calls, uploading files, and torrenting (seeding).

Ping / Latency (ms)

The round-trip time for a data packet to travel to the test server and back, measured in milliseconds. Critical for gaming, video calls, and any real-time application. Lower is better.

Jitter (ms)

The variation in ping over time. High jitter means an inconsistent connection, which causes stuttering in video calls and lag spikes in gaming. Lower is better.

Connection Reliability (%)

The percentage of test attempts that complete successfully. A test can fail if the VPN tunnel doesn't establish, if the speedtest times out, or if invalid results are returned. We report this metric transparently.

Note on reliability: Our connection reliability metric reflects automated test conditions, which are stricter than typical user experience. A server marked at 70% reliability doesn't mean it fails 30% of the time for regular users — it means 30% of our automated tests (which include edge cases like rapid connect/disconnect cycles and strict timeout thresholds) didn't complete. Real-world user reliability is typically higher.

How We Handle Failures

Not every test succeeds. We classify failures into several categories:

Failed tests are recorded in our database and count against the server's reliability metric. We do not exclude failures to make numbers look better. However, speed averages (download, upload, ping) are calculated only from successful tests to avoid skewing the numbers with zeros.

Data Integrity

Limitations

We believe in being upfront about what our data can and cannot tell you:

Open Questions? Get in Touch

If you have questions about our methodology or want to suggest improvements, we'd love to hear from you. Transparency and accuracy are our top priorities.

View Live Speed Tests →
Surfshark VPN — From £1.79/mo — 86% off + 3 months free
Claim Deal →