Methodology

Checked 12 Sept 2026 Daily

Every price on this site carries a source link and the date it was last checked. This page explains how it got there and where the limits are.

Price rows
5,221
Providers
48
Refresh
Daily
Rate limit
1 req/s

Where the numbers come from

Prices come from first-party APIs wherever a provider publishes one, and from the provider's own public pricing page otherwise. We never take a price from a comparison site or a press release.

Live APIs: Porkbun (domains), Vultr and Linode (VPS and regions), AWS and Azure (cloud compute), RunPod, DataCrunch and Vast.ai (GPUs), and LiteLLM's open dataset for LLM API prices, overlaid with vendor pricing pages.

Parsed pages: Dynadot, Hover, IONOS and Gandi (domains), DigitalOcean, Scaleway and Contabo (VPS), Lambda, Hyperstack and CoreWeave (GPUs). Each has its own parser with a row-count guard, so a silent layout change fails loudly instead of publishing nonsense.

Hand-seeded, machine-checked: shared hosting, object storage, egress and Hetzner's cloud line-up. These are not machine-readable anywhere: the intro price, the term, the renewal rate and the mandatory add-ons live in different parts of a marketing page. We read them by hand, record the source URL, and every run re-checks that the price still appears on that page. A row the page no longer confirms is marked stale rather than presented as current.

Community data: Cloudflare Registrar publishes no price API, so we import a community-maintained JSON dump and label those rows community-dump.

Refresh cadence

Every source is re-fetched daily, at 04:00 UTC, by a GitHub Actions workflow. Each table shows the newest last_checked among its rows. Nothing on this site is live-quoted at page load; it is a static snapshot of the last successful run.

Currency

Prices are stored in their original currency and converted to USD using a daily snapshot from open.er-api.com. The rate date is shown next to any converted table. The current snapshot is dated 11 Sept 2026. Converted prices move when the exchange rate moves, even if the provider has not changed anything.

What “Best value” means

The Best value tag marks the cheapest row by the metric the table is sorted on by default, and nothing else. It is not an editorial recommendation, it is not influenced by whether a provider pays us, and it changes the moment the numbers do.

  • Domains: three-year cost, first year plus two renewals.
  • Hosting: total over 36 months, intro rate for its term, then the renewal rate, plus unavoidable add-ons.
  • VPS: monthly price, or price per GB of RAM where the table says so.
  • Cloud: hourly on-demand Linux rate multiplied by 730.
  • GPUs: price for one GPU-hour. Whole-node quotes are divided by their GPU count.
  • LLMs: blended cost per million tokens at a 3:1 input-to-output ratio.

When a source breaks

We never invent a price. If a source is unreachable the previous value is kept and marked stale, with the date it was last confirmed. If a value is missing entirely the row shows a dash and keeps its source link. A provider is never deleted from a table for being unavailable, only marked.

A guardrail sits in front of publication: if any single price moves by more than 50%, or a source returns fewer than half the rows it did last week, the new values are rejected, the previous ones are held, and an issue is opened with the diff. Marketplaces like Vast.ai genuinely move that much, so their rows trip the guardrail more often than a fixed-price host would.

How we collect

Requests identify themselves as PikklyBot/1.0 (+https://pikkly.dev/methodology), respect robots.txt, and are limited to one request per second per host. We only read pages that are public and logged out. If you run one of these sites and want us to stop, or to correct something, email [email protected] and we will act on it.

Known limits

  • A provider is listed only where Pikkly can actually price it. NameSilo, Spaceship, Name.com, Sav and UpCloud were removed in September 2026: their pricing is behind a bot-block, a required API key, or a Disallow: / robots rule, and listing a provider with no prices overstates what this site covers.
  • Namecheap blocks automated requests on its domain pricing, so only its hosting plans are priced here.
  • Hetzner renders its price table with JavaScript and its API needs a token, so those rows are hand-seeded and always show as unconfirmed.
  • Cloud compute prices cover general-purpose Linux on-demand shapes only. No spot, no reservations, no Windows licensing.
  • Egress tiers are simplified to the published public-internet rates; committed-use and CDN discounts are not modelled.
  • Prices exclude tax. EU providers quote excluding VAT.