Free Web Hosting for HTML: 4 Options Compared (2026)

Free web hosting for HTML sites: GitHub Pages, Netlify, Cloudflare Pages and Vercel compared on limits and commercial-use rules, plus deploy steps.

Short answer: For a plain HTML site, the easiest free options are GitHub Pages, Netlify, Cloudflare Pages and Vercel. If you just want a folder of files online today, Netlify Drop is the fastest because you drag the folder into your browser. If you already use Git, GitHub Pages or Cloudflare Pages is a good fit. Check the commercial-use rules before you put a business on any of them.

All four serve static files only (HTML, CSS, JavaScript, images). None runs PHP or a database. If you need either, see what web hosting actually is and what paid hosting costs.

Free HTML hosting compared (checked November 2026)

Every figure below comes from the vendor's own pricing or docs pages, read on November 7, 2026. Vendors change these often, so confirm before you depend on a number.

HostCostKey limitsCommercial useEasiest deploy
GitHub PagesFreePublished site up to 1 GB; soft limit of 100 GB bandwidth per month; soft limit of 10 builds per hourNot allowed as a free host for an online business or e-commerce sitePush to a repository
Netlify Free$0 (checked November 2026)300-credit limit; a production deploy costs 15 credits, bandwidth costs 20 credits per GBNot restricted on the pricing pageDrag a folder to Netlify Drop
Cloudflare Pages FreeFree500 builds per month; 20,000 files per site; 25 MiB per file; 100 projects per accountNot stated on the limits pageDrag and drop in the dashboard, or Wrangler
Vercel Hobby$0/mo (checked November 2026)100 GB Fast Data Transfer per month; 100 deployments per day; 50 domains per projectRestricted to non-commercial, personal useVercel CLI, or Vercel Drop

A few notes on reading the table:

  • Netlify moved to a credit model. By the pricing page's own rates, 300 credits works out to roughly 20 production deploys or 15 GB of bandwidth if you spent them all on one thing. That arithmetic is ours, not Netlify's, and real usage mixes both.
  • Cloudflare Pages publishes build, file and project limits on its docs page. We could not confirm a bandwidth figure there, so check Cloudflare's plan page if traffic matters to you.
  • GitHub Pages says its bandwidth and build limits are *soft* limits. It also rate-limits with HTTP 429 responses.

Which one should you pick?

  • Never used Git, need a page live now: Netlify Drop. No terminal needed.
  • Portfolio, docs or a project page, and you already have a GitHub account: GitHub Pages. Your site lives next to its source.
  • Many small sites: Cloudflare Pages allows up to 100 projects per account on Free.
  • A business site, a store or anything taking money: read the terms first. GitHub Pages and Vercel Hobby both rule this out. Netlify's and Cloudflare's pricing and limits pages don't, but read their terms of service before you rely on that.

How to put an HTML site online: step by step

Start with a folder containing an index.html. The home page must have that exact filename, or most hosts will show a 404 at your root URL. If you are still writing the HTML, our guide on making a website with HTML covers the basics.

Option 1: Netlify Drop (no Git)

  1. Log in at app.netlify.com (Netlify's docs say Drop can also publish without a login, but a login lets you manage the site later).
  2. Go to app.netlify.com/drop.
  3. Drag your site folder onto the Drop zone.
  4. Open the Preview URL ending in netlify.app.
  5. Select Customize under the Preview URL to change the name.

Netlify's docs say deploys under 50 MB work best, and individual files over 10 MB may cause a stuck deploy. For bigger projects, use the Netlify CLI. To update the site later, drag the new folder onto the deploy dropzone on the site's Deploys page.

Option 2: GitHub Pages

  1. Create a new repository named username.github.io, replacing username with your GitHub username.
  2. Add your HTML files to the repository (the upload option in the web interface works, or push with Git).
  3. Open the repository's Settings, then Pages in the sidebar.
  4. Under Build and deployment, set Source to Deploy from a branch.
  5. Pick the branch to publish from.
  6. Visit username.github.io. GitHub says changes can take up to 10 minutes to publish after you push.

Two limits to remember: you get one user or organization site per account, and deployments time out after 10 minutes.

Option 3: Cloudflare Pages direct upload

  1. In the Cloudflare dashboard, open Workers & Pages.
  2. Select Create application, then Get started, then Drag and drop your files.
  3. Enter a project name and drag in your assets.
  4. Select Deploy site.

Cloudflare's docs list a drag-and-drop cap of 1,000 files per upload (25 MiB each), while the Wrangler command line allows 20,000. They also warn that if you choose Direct Upload you cannot switch that project to Git integration later. If you want automatic deploys from a repository, connect Git from the start.

Option 4: Vercel

Vercel's pricing page says a static site folder can be dragged onto Vercel Drop, and that vercel deploy --temporary deploys a project without sign-up. Temporary deployments expire unless you claim them to a free Hobby account. Its limits page also notes that hosting static files such as an index.html is not classed as a build. Remember the Hobby plan is for personal, non-commercial use.

Pre-launch checklist

Copy this before you share the link:

  • [ ] The home page is named index.html and sits at the top of the folder
  • [ ] Links and image paths are relative (images/logo.png, not C:\Users\...)
  • [ ] File names match case exactly; Logo.PNG and logo.png are different files on most hosts
  • [ ] No single file is larger than your host's cap (25 MiB on Cloudflare Pages, for example)
  • [ ] Open the live URL on your phone, not just your laptop
  • [ ] You read the host's terms for commercial use if the site promotes a business
  • [ ] You know how you would move off the host later (see moving a site between hosts)

Common problems

404 at the root URL. The file is probably not named index.html, or it sits inside a nested folder. Drag the folder that contains the file, not its parent.

Styles or images missing. Usually an absolute path or a case mismatch. Check the browser's network panel for the failing request.

Old version showing. Wait for the deploy to finish, then hard-refresh. On GitHub Pages, publishing can take up to 10 minutes.

Contact form does nothing. A static host cannot process a form on its own. Use a form-handling service, or the host's built-in form feature if it has one.

When free static hosting stops being enough

Free tiers fit a portfolio, a landing page, documentation or a hobby project. You will outgrow them if you need a store, user accounts, server-side code or editing by non-technical teammates. At that point you are comparing paid hosting and site builders; our breakdown of free website hosting options covers the wider field, including builders that bundle hosting.

If you would rather not write HTML at all, We.Inc's free plan lets you publish up to three sites from ready-made templates; the AI builder that drafts a site from a prompt starts on the Starter plan at $20 a month. You can sign up here.

FAQ

Can I host an HTML website for free permanently?

Yes. GitHub Pages, Netlify, Cloudflare Pages and Vercel all have free tiers with no time limit for static sites. Mind the commercial-use rules and, on Netlify, the monthly credit allowance.

Do I need Git to put an HTML file online?

No. Netlify Drop and Cloudflare's drag-and-drop upload both take a plain folder. GitHub Pages is the one that expects a repository.

Can I use a custom domain?

Netlify lists custom domains with SSL on Free, Cloudflare Pages allows 100 per project, and Vercel Hobby lists 50 per project. You still pay a registrar for the domain.

Is free hosting OK for a business or store?

Check the terms first. GitHub says Pages is not for running an online business or e-commerce site, and Vercel Hobby is limited to personal, non-commercial use.

Can it run PHP or WordPress?

No. These are static hosts. PHP and databases need traditional hosting.

Frequently asked questions

Do I need to know Git to put an HTML file online?

No. Netlify Drop lets you drag a folder of files into the browser, and Cloudflare Pages has a drag-and-drop upload option in its dashboard. Vercel's pricing page also mentions a Vercel Drop for static site folders. GitHub Pages is the one that expects a repository, though you can add files through the GitHub web interface.

Can I use my own domain on free HTML hosting?

Netlify lists custom domains with SSL on its Free plan. Cloudflare Pages allows up to 100 custom domains per project on Free, and Vercel's Hobby docs list 50 domains per project. GitHub Pages also supports custom domains; its docs cover the DNS setup. You still pay a registrar for the domain itself.

Is free hosting fine for a business website that takes payments?

Be careful. GitHub's documentation says Pages is not allowed as a free web-hosting service to run an online business or e-commerce site, and Vercel's Hobby plan is limited to non-commercial, personal use. A portfolio or brochure page is a gray area you should read the terms for. A store or SaaS belongs on a paid plan.

Can free static hosting run PHP, WordPress or a database?

No. These hosts serve static files: HTML, CSS, JavaScript, images. Anything that needs PHP or a database needs traditional hosting. If your goal is a contact form on a static site, use a third-party form service or the host's own form feature.

More in Blog

Related guides and tools

Start building

How we research, test and update this page: our editorial policy. We.Inc is our own product.

Product

Who It's For

Features

Resources

Company

View Sitemap