The Hosts I Actually Pay For in 2026

This is not a ranking. There is no score out of five anywhere on this page, no “winner”, and no table of hosts I have never signed up for dressed up as a test. What you get instead is the list of companies that actually take money off me, what runs on each one, what their published price is today, and what that price becomes when the introductory term ends.

Every price below was read on the provider’s own pricing page on 20 September 2026, from a connection in Spain. That last detail matters more than it should: one of those pages redirected me to its European site and served euros. I have said so wherever it happened rather than converting anything in my head.

What is actually on my bill

ProviderProductWhat I run on itPublished entry pricePublished renewal
HostingerShared web hostingThree sites: this blog and a second blog, both WordPress, plus my agency site, which is static HTMLPremium from $2.99/mo on a 48-month term$10.99/mo
HostingerVPS KVM 1A small Node and Express app I wrote, behind Caddy$6.49/mo on a 24-month prepaid term$11.99/mo
CloudflarePages, Free planA static marketing site on its own domain$0$0
NetlifyFree planThrowaway demos and previews$0 (300 credits a month)$0
DonDominioDomain registrationDomains only, no hostingNot quoted hereNot quoted here
Entry and renewal figures are the list prices published on Hostinger’s shared hosting page and VPS page, checked 20 September 2026. They are not what I pay: I bought on different terms and at different moments, and my invoices would tell you less than the list prices do.

The registrar row is deliberately blank on price. I use DonDominio for domains and nothing else, and I have not re-checked its renewal pricing for this page, so I am not going to type a number I would be remembering rather than reading. That job belongs in the piece on the three registrars I use and where the renewal price hides.

Why there are no start dates and no star ratings

You would normally expect a “hosting since 2019” column here. I have not put one in, because I would be guessing, and the only source I trust for when each account opened is the invoices.

The stars are gone for a blunter reason. An earlier version of this page carried a section called “How we tested” that described thirty days of uptime monitoring from multiple locations, and a table of average response times with ratings next to them. That test never happened. I have deleted it. I would rather this page be short and true than long and convincing, and if you read a round-up claiming a thirty-day benchmark without a single raw file behind it, ask the same question of that one.

Hostinger shared: three sites, and one thing I had wrong

Three sites sit on the shared plan: the two WordPress blogs and my agency site, which is plain static HTML served through the host’s CDN. The stack the blogs admit to is LiteSpeed with PHP 8.3.33, which you can read off the response headers yourself, and the panel is hPanel rather than cPanel.

The thing I had wrong: I assumed the blogs were served from a page cache, because the server is LiteSpeed. When I checked the response headers on 20 September, neither blog returned any page-cache header at all, and forcing the origin with a cache-busting query string did not make a single request slower. Every visit was being built by PHP.

That is not Hostinger failing to do something it promised. Page caching on WordPress is a plugin decision and nobody had made it, including me. But it is why I no longer trust an assumption about my own hosting that I have not put a curl -I behind. The full account, including the parts of hPanel I use every week, is in my Hostinger review covering three sites and a VPS on one account.

The VPS, and why it is a separate line on the bill

The KVM 1 is one vCPU, 4 GB of RAM, 50 GB of NVMe and 4 TB of transfer, at $6.49 a month on a 24-month prepaid term, renewing at $11.99, which at renewal is within about a dollar of the shared plan. The difference between the two lines is not the amount.

On the shared plan, certificates, PHP versions and updates happen without me. On the VPS I installed Node, put Caddy in front of it and wrote a systemd unit so the thing survives a reboot. Everything that goes wrong there is mine, certificates included. I have written up what that costs in attention in the piece on what a KVM 1 VPS actually asks of you.

The two that cost nothing

One static marketing site of mine runs on Cloudflare Pages on the Free plan, with its own domain and a certificate issued by Google Trust Services that I have never touched. Cloudflare does not charge for static traffic at all; the limits on the free tier are about builds and files, starting with 500 builds a month, per the Pages limits page, checked 20 September 2026. A brochure site never gets near them.

Netlify I keep for demos and previews, on the free plan. It now bills in credits rather than in gigabytes and build minutes, which is worth knowing if you are reading older comparisons (netlify.com/pricing, checked 20 September 2026). Both platforms, and where free stops working, are in the post on free hosting that is actually worth using.

The numbers I measured, and what they do not prove

On 20 September 2026 I hit the homepage of each of my five sites five times with curl, roughly two seconds apart, from home fibre in Valencia, Spain, and recorded the median time to first byte along with the fastest and slowest of the five. Below is the run without a cache-buster, which is what a visitor would get.

SiteWhere it runsMedian TTFBSlowest / fastest of 5Homepage HTML
This blogHostinger shared, WordPress0.455 s0.379 – 0.895 s100,574 B (26,886 B Brotli)
My second blogHostinger shared, WordPress0.568 s0.534 – 1.500 s99,141 B (26,324 B Brotli)
My agency siteHostinger shared, served by its CDN0.294 s0.243 – 0.703 s56,325 B (2,482 B Brotli)
My Node appHostinger VPS KVM 1, Caddy and Express0.304 s0.248 – 0.354 s1,531 B (699 B gzip)
A static site of mineCloudflare Pages, Free0.275 s0.243 – 0.352 s13,736 B (4,104 B Brotli)
Five requests per site, medians, 20 September 2026, from Valencia, Spain. The last column is why you must not read this as a league table: a 1.5 KB Express response and a 100 KB WordPress page are not the same job.

What this does not show, stated plainly so nobody quotes it back at me out of context:

  • Five requests in a minute is not a benchmark. It is a sample large enough to spot something obviously broken and nothing more.
  • It measures a route, not a provider. Spain to the server, over my ISP, through whatever peering happened that evening. Most of this site’s readers are in the United States and would see different numbers.
  • It is the homepage HTML only. No CSS, no JavaScript, no images, so it is not page speed and it is certainly not Core Web Vitals.
  • The spread is the interesting part. My second blog ranged from 0.534 s to 1.500 s across five consecutive requests, nearly a factor of three. Any single number you see quoted for a shared host, mine included, is hiding that.
  • HTTP/2 I confirmed separately with an ALPN check, because the curl build on this machine has no nghttp2 and only negotiates HTTP/1.1. HTTP/3 I did not test at all; four of the five sites advertise it in alt-svc, which is not the same as having used it.
  • None of these sites carries meaningful traffic, so there is no “under load” here. There is nothing to load them with.

The hosts I have not paid for

I have never bought hosting from any of the five below, so there is no review of them on this site and there is not going to be one until that changes. What I can do is read their pricing pages carefully, which is a job most round-ups skip, and tell you what the page does not say.

ProviderPublished entry pricePublished ongoing priceWhat the page leaves out
SiteGround, StartUp€2.99/mo, 12 months prepaid, ex-VAT€15.99/mositeground.com redirected me to the European site from Spain, so these are euro prices. If you are in the US, check from a US connection.
Bluehost, Starter$3.99/mo on a 36-month term$9.99/moThe page advertises a “99.99% Uptime SLA”. That is Bluehost’s claim about itself, not a measurement, and what counts as downtime is not defined on the price table.
WP Engine, 1 site$336/year, about $28/mo$35/mo billed monthly25,000 visits and 10 GB are published. The Core and Enterprise plans have no public price at all.
Kinsta, Single 20GB$350/year, about $30/mo$35/mo billed monthlyThe plan names refer to CDN allowance, not traffic. No monthly visit limit is published, so do not let anyone tell you what it is.
IONOS, Essential$4/mo for the first year$8/moI look after one domain at IONOS for a family project, but I have never used their hosting. Their promotional tiers move every few weeks, so treat any quoted price as perishable.
All figures read from each provider’s own pricing page on 20 September 2026. Currencies are as served to me in Spain.

Referral link

Hostinger is the only provider on this page I have a commercial relationship with, through its referral programme: Hostinger referral link. Using it gives you 20% off and pays me a 20% commission, at no extra cost to you. It changes nothing about what is written above: the prices and the measurements are the same ones I would publish without it. How this site is funded is on the affiliate disclosure page.

What I would buy today

Three situations, because “best host” is not a question that has one answer.

  • A first WordPress site. Cheap shared hosting, and I would budget the renewal price rather than the headline. A plan that starts at $2.99 and renews at $10.99 is a $10.99 plan with a discount attached, and you are paying four years up front for the discount. What a full year of hosting, domains and email genuinely adds up to is in the breakdown of what I pay for hosting, domains and email.
  • A static brochure site. Cloudflare Pages on the free plan, with your own domain. I have one running there and it has cost me nothing at all, and it was the least eventful thing I set up all year.
  • An application you wrote yourself. The smallest VPS you can get, on the understanding that you have just hired yourself as a sysadmin for the life of the project.

I redo the prices on this page whenever something on my own bill changes, and re-read every pricing page linked here at the same time. If you find a figure that has gone stale before I do, the contact page works.