Every list of free HTML hosts assumes you'll sign up. If you won't, the field narrows to a handful — and each one charges you for it in a different currency. Which hosts genuinely need no account, what you give up, and when signing up is the cheaper trade.
Every "best free HTML hosting" list quietly assumes one thing: that you will sign up. Take that assumption away and the field collapses to a handful of options — and each survivor charges you for the privilege in a different currency.
"Free HTML hosting without registration" gets typed by three different people who want three different things.
"I don't want to sign up." You have a file, you need a URL, and you are not interested in confirming an email address to get one. This is the literal reading, and it is usually about friction rather than principle.
"They shouldn't have to sign up." Your recipient is a client, a recruiter, a parent — someone who will bounce off a login wall. You do not mind having an account; you mind them needing one. Almost every host on earth clears this bar, which is why it is rarely the real question.
"I don't want this tied to me at all." No email, no identity, nothing to log back into. This is the strictest reading and the one with real consequences, because it also means nothing to log back into when you need to fix something.
Sorting yourself into one of those three decides the answer. The middle one is nearly free. The first costs you a little. The third costs you the page.
A host that never asked who you are has no way to know the page is still yours. There is no row in a database with your name on it, no dashboard to open, no session to prove anything with. So the host has exactly three moves available, and every account-free product picks one:
That is the whole design space. When you read a host's fine print and find a number you did not expect, this is where it came from — not from stinginess.
| Host | Sign-up to publish? | How long it lives | Default posture | Best fit |
|---|---|---|---|---|
| Cloudflare Drop | No — none at all | 60 minutes, then claim it to keep it | Public, indexed | A folder you need live in the next minute |
| miinideck /try | No | 7 days, or keep it by signing up in the same browser | Private — noindex, unguessable URL | One file that should not be findable in search |
| GitHub Pages | Yes, plus a repo | Indefinitely | Public, indexed, source readable | A page you never want to think about again |
| Cloudflare Pages | Yes | Indefinitely | Public, indexed | Scale, and a free custom domain |
| Netlify Drop | Yes | Indefinitely | Public, indexed | Dragging a folder without touching git |
| Vercel | Yes | Indefinitely | Public, indexed | A page that is really a framework app |
| Tiiny.host | Yes | Tied to logging in periodically | Public, indexed | The simplest public single page |
| Static.app | Yes | Indefinitely | Public, indexed | A small site from a ZIP, no build step |
Cloudflare Drop's wording was checked against cloudflare.com/drop on 4 September 2026; the rest against each vendor's own pages on 2 September 2026 (Tiiny.host, Static.app) and 10 August 2026 (GitHub Pages, Netlify, Cloudflare Pages, Vercel). Everyone sets their own limits and changes them without telling us — check the vendor's site for what is current. The full free-hosting survey keeps the caps and prices in one dated table so they are not scattered across pages going stale at different speeds.
Cloudflare Drop is the one to reach for. Its own page says no account is required to start: you drop a folder of static files, it distributes them across Cloudflare's network, and you get a live URL back. The catch is written just as plainly — the deployment is live for 60 minutes, and claiming it within that window is what makes it permanent. Read that as designed rather than stingy: an unclaimed page belongs to nobody, and sixty minutes is Cloudflare being generous about how long it will hold something nobody has signed for. If you want the same shape but with a page that stays, how Cloudflare Drop compares with a private link walks the trade.
If the page should not be findable, the account-free options thin out fast. A public host's URL is fair game for search engines — that is the point of public hosting — so skipping the account does nothing for privacy. Whether a shared link gets indexed goes through the mechanics of that. miinideck's /try is the anonymous slot on the private side: one file up to 3 MB, a link that carries a no-index tag behind an unguessable URL, and 7 days on the clock. No email, nothing to log into.
Be clear-eyed about what an anonymous upload cannot do, because it is the same structural gap as everywhere else. There is no account, so there is nowhere to hang a password or an expiry setting — those belong to a free account, not to the anonymous path. And an unguessable URL is a key rather than a wall: it keeps the page out of search results and out of reach of anyone guessing, but the person you send it to can forward it. Whether an unguessable link is actually secure is the honest version of that argument, including where it stops holding.
If you uploaded without an account and now want to keep the page, you don't have to upload it again. When you upload anonymously, the browser you used keeps a signed note that the page is yours. Sign up or sign in from that same browser before the link's 7 days are up, open your dashboard, and the page moves into your account — the link you already sent stays the same. On the free plan it also takes your one always-on slot if that slot is still open, so it stops expiring. Two things break the note: a different device or browser, and clearing your cookies. There is no other way to prove an anonymous page was yours, so in those cases re-uploading is the route.
It is worth naming the case against this whole article.
An account buys three things that account-free hosting structurally cannot offer, and you usually want at least one of them:
So: showing a colleague something during a call, or checking that a build renders on someone else's phone? Skip the sign-up, use Cloudflare Drop or /try, and get on with it. Sending a deliverable that a client will keep in their inbox for a month? Sign up somewhere. And for a permanent, free, public page specifically, the best free deal on the internet is still GitHub Pages — it costs you a git repo and a public source tree, and it will outlive most of the hosts on this page. That one is not us, and it should not be.
Where a free account on a private-link host earns its place is a narrower job: you want the page to keep working, to stay off search, and to be replaceable behind the same URL, for something you are handing to specific people. The free tier gives you unlimited links, a 10 MB per-file cap, free password protection, and links that self-destruct after 7 days by default — with one always-on permanent link you pick. If you were moving off a host that has closed, where to move a page off PageDrop is the migration-shaped version of this same decision.
The question was never really "which host skips the sign-up." It was how long does this link need to live — and once you answer that, the shortlist writes itself.
Twelve ways to put a single HTML file online for free — GitHub Pages, Netlify, Cloudflare, Vercel, Tiiny, Neocities, Static.app, EdgeOne, host-html, Linkyhost, Wasmer, and a private-link option — with an honest table of which fits which job, public or private.
When the page is a folder rather than one file, the hosting question changes and so do the ways it breaks. Which free hosts take a ZIP, what happens to your folder structure once they unpack it, and the four failure modes that account for almost every broken zipped site.
Sending a client a finished page? A Drive link hands them a file in a filing cabinet to download or preview flattened. A private link hands them the thing itself, already open. The three places the two diverge: rendering, control, and who the link assumes the reader is.
miinideck turns a single HTML file into an unguessable link with optional password and expiry. Default-private, never indexed.