Methodology

This page explains how every number on the site is produced. If a figure cannot be reproduced by following what is written here, that is our mistake: tell us and we will fix it.

Where the data comes from

Prices and specifications are collected from each provider’s public pages and stored with their source URL and check date. We do not reproduce third-party tables: we aggregate and derive.

Normalisation before comparing

The catalogue spans 17 currencies and several billing models. Comparing raw prices means nothing, so every comparative metric is first converted to US dollars and to monthly cost. Usage-based and one-off plans are excluded from those comparisons rather than given a made-up figure.

Exchange rates are indicative and refreshed periodically. They exist to rank and compare, not to budget: always check the currency the provider actually bills in.

Per-category percentiles

“Cheaper than 78% of its category” is computed against every active plan in that same category that has the metric. Plans without the figure are excluded: including them would shift the whole ranking. Each block states how many plans it compared against.

Performance: two layers, always declared

When we show performance, we state what it rests on:

  • Real measurement — median of third-party published results for that same plan. Only published with at least 3 accepted results.
  • Model score — public known score for the exact CPU model the provider declares. It does not measure that particular server.
  • No data — we show nothing. A plan without a performance block is one we lack sufficient information about.

Node-to-node spread

Where there are enough measurements we publish how much performance varies between different servers on the same plan. High spread suggests the provider packs more virtual machines per physical host than the advertised performance would support. It is an indication, not an accusation: heterogeneous hardware across data centres produces it too.

Thresholds we apply

  • Minimum 3 accepted results before publishing a measured performance. A single measurement does not represent a plan.
  • Maximum age of 24 months. Beyond that the hardware has rotated and the number no longer describes what is sold today.
  • Extreme outliers discarded using Tukey’s rule with a factor of 3. This is deliberately permissive: trimming normal spread would erase the very signal we want to show.

How a result is assigned to a plan

A published result rarely names the plan; it says things like “4 GB VPS in Helsinki”. We infer it from the provider, virtual cores, memory and CPU model. If more than one plan fits, or none does, we do not guess: the result stays unassigned and goes to manual review. A figure placed on the wrong plan corrupts the average of two plans at once.

What we do NOT measure

Being explicit here matters more than appearing comprehensive:

  • We do not run our own benchmarks yet. All performance shown comes from third parties, aggregated and attributed.
  • We do not measure availability or uptime. Any uptime promise you see is the provider’s, not something we verified.
  • We do not assess support quality. There is no honest way to quantify it from the outside.
  • We do not cover all plans equally. Performance coverage is far greater for popular providers than small ones, and that skews any comparison between them.

How the site is funded

Some links to providers are affiliate links and may earn us a commission at no extra cost to you. They do not influence ranking order, which is computed from the metrics described above. Affiliate links are marked wherever they appear.

If you find an error

Prices change and data breaks. If something looks wrong, tell us and we will correct it, noting the date of the correction. — Contact.