Hosting basics
Free website hosting: real limits and when to pay
GitHub Pages, Cloudflare Pages, Netlify and Vercel compared: what the free plans allow, what they don't, and when paid hosting is the better choice.
By Mr. Ahmed · 20+ years in tech
Published · 8 min read
The short answer
- 01Free hosting works well for static sites: portfolios, documentation, landing pages and learning projects.
- 02GitHub Pages, Cloudflare Pages, Netlify and Vercel all have free plans, each with limits, and several restrict commercial use.
- 03Free static hosts can't run WordPress or PHP and don't include email on your domain.
- 04If the site earns money, needs a database or email, or someone relies on it, a low-cost paid plan is the safer choice.
What free hosting really is
The free plans people search for are mostly static hosting: you build a site into plain files (HTML, CSS, JavaScript) and the service serves them from a global network. That is fast, cheap to run and a good fit for a lot of projects. It isn't the same product as a traditional web host, which runs PHP and databases and gives you mailboxes.
Below are the limits of four popular free options, taken from each provider's own documentation on 27 October 2026. Limits change, so confirm in the linked docs before you rely on one.
The four free plans compared
These figures are quoted from the providers' documentation and pricing pages.
| Service | What the free plan gives you | Key limits | Commercial use |
|---|---|---|---|
| GitHub Pages | Static sites from a GitHub repository | 1 GB published site, 100 GB per month soft bandwidth limit, 10 builds per hour soft limit | Not for running a commercial business, e-commerce or paid SaaS |
| Cloudflare Pages | Static and front-end projects with Git deploys | 500 builds per month, 20,000 files per site, 25 MiB per file, 100 custom domains per project | Check Cloudflare's terms for your use |
| Netlify Free | Git deploys, previews, custom domains with SSL, functions | 300 credits per month: roughly 15 GB of bandwidth or about 20 production deploys | Check Netlify's terms for your use |
| Vercel Hobby | Git deploys, functions, custom domains | 100 GB data transfer and 1,000,000 function invocations per month (guideline) | Personal, non-commercial use only |
What free static hosting can't do
That design is also what limits it.
- Run WordPress or PHP. You need a traditional web host for those.
- Give you mailboxes on your domain. You'll need a separate service; see business email hosting.
- Guarantee human support. Free plans lean on documentation and community forums.
- Remove limits as you grow. Builds, bandwidth and credits are capped, and going over usually means upgrading.
- Protect a commercial site from a policy change. A free plan can be restricted or changed by the provider.
Which free option fits which project
Pick by what you're publishing, not by which brand you've heard of.
| Project | Good free fit | Watch out for |
|---|---|---|
| Personal portfolio or CV | GitHub Pages, Cloudflare Pages | Keep it non-commercial on GitHub Pages |
| Project documentation or a static blog | GitHub Pages, Cloudflare Pages, Netlify | Build limits if you publish very often |
| A Next.js or React app while learning | Vercel Hobby, Netlify Free, Cloudflare Pages | Hobby is for non-commercial use |
| A client's small business site | None of these; use paid hosting | Terms and support risk |
| A WordPress site | None of these; use WordPress or shared hosting | Free static hosts can't run it |
When it's time to pay
Move to paid hosting when the site starts earning money, needs a database or email, or you hit a limit twice. A paid shared plan costs only a few dollars a month on a long term, and you get backups, mailboxes and live support in the bargain.
- The site earns money through ads, affiliate links, services or sales.
- You need WordPress, PHP, a database or mailboxes on your domain.
- A client relies on the site and expects support.
- You keep hitting build, bandwidth or credit limits.
A middle path: static site on cheap shared hosting
You don't have to choose between free static hosting and a full server. A React or Vite build is just static files, and it runs happily on a shared plan. My React (Vite) on shared hosting guide shows how, including fixing the 404 on refresh.
If you're deciding between the two, read the types of website hosting and what cheap hosting really costs after year one. For a first blog, starting a blog on Hostinger and Website Builder vs WordPress cover the setup choices.
How I wrote this guide
SaveMores is an independent Hostinger referral site. If you buy through a link here we may earn a commission, at no extra cost to you. That's why a coupon button appears on this page, and it's why I also say where Hostinger is the wrong choice. The disclosure page and how we test explain the rest.
Limits and terms are quoted from GitHub, Cloudflare, Netlify and Vercel documentation on 27 October 2026. Where a provider's page didn't state something, such as Cloudflare Pages bandwidth, I left it out instead of guessing.
Questions people ask
Is free website hosting really free?
Yes for the hosting itself, within limits. You still pay for a custom domain, and email is separate. Usage above the free limits means upgrading.
What is the best free page hosting?
For a static site, GitHub Pages and Cloudflare Pages are the usual choices. For a framework app, Vercel Hobby and Netlify Free are popular, but Hobby is limited to non-commercial use.
Can I host a business website for free?
GitHub Pages isn't intended for commercial businesses and Vercel Hobby is non-commercial only. For a business site a low-cost paid plan avoids policy problems and adds support and email.
Can I use my own domain on free hosting?
Yes, all four support custom domains. You buy the domain separately from a registrar.
Can free hosting run WordPress?
No. Free static hosts don't run PHP or a database, so WordPress needs a traditional web host.
Independent site, not Hostinger. Buy through my links and Hostinger pays me a referral fee; your price is the same or lower. How that works.