Private HTML hosting: the 2026 reference.
A private HTML host serves a static page from an unguessable URL by default. Stacktree extends the category with password and email-domain gates, end-to-end encryption, replace-in-place URLs for agent loops, and an MCP tool call that lets AI agents publish directly.
No card. 3 free pages, each live for 7 days. Client work that must outlive the week is Solo, $19
What your client sees
Brand & marketing audit
open exampleFindings, perception map, score dial — one navigable page.
Live page →Performance report
open exampleThe monthly numbers, sent as a link that updates in place.
Live page →Passcode-gated review
passcode: demoType what your client would type and see the styled gate.
Live page →What is private HTML hosting in 2026?
Private HTML hosting is a category of static-site hosts where the URL is not publicly discoverable by default. The simplest form is an unguessable URL, where the link itself is the credential. Stronger forms layer a shared password, an email-domain gate, IP allow-lists, or end-to-end encryption. The category has become central in 2026 because AI agents emit a lot of one-off HTML containing real data, and public-by-default hosting is no longer a safe baseline for that output.
The four layers of "private"
- Unguessable URL. The link contains enough entropy that nobody finds it by guessing. Sufficient for low-sensitivity sharing where the link can be passed in Slack or email.
- Shared password. A second factor on top of the unguessable URL. Useful when the link might be forwarded.
- Email-domain gate. Viewers prove they own an email at
@yourco.comvia a magic link before the page renders. Stronger because the gate survives forwarding. - End-to-end encryption. The content is encrypted in the browser; the server only sees ciphertext. The key lives in the URL fragment, which never leaves the client. Anyone with the URL can decrypt; nobody without it can.
Why agent output is the catalyst
"Reading text is now running code." Agent-emitted HTML often embeds API responses, prompt context, customer rows, internal IDs. The category of work doesn't fit a public-by-default model. It fits the same shape as a Notion page or a Linear ticket, but as renderable HTML the agent generates on demand.
The common case: sharing an artifact an agent produced
The query that brings most people here is concrete. An agent (Claude Code, Cursor, Codex, Claude.ai) just produced something you want to send to one person: a research report, a status dashboard, a code-review summary, a generated landing page, a one-off internal tool. You do not want it on a public URL that anyone can find, and you do not want to add the recipient to a company workspace or pay for an extra seat just so they can open a file.
Private HTML hosting solves exactly that gap. The agent publishes the HTML to an unguessable URL, and you send the link. The recipient opens it with no account. If the contents are more sensitive, you add a shared password or an email-domain gate so only people at @theirco.com can render the page. The artifact lives on a private link instead of a public site or a walled team tool. When the recipient is a client rather than a teammate, the same flow is how you share finished work with a client: one private link, a gate on top if the contents warrant it.
What to look for in a private HTML host
- Unguessable URL on every plan, free included. If "private" is a paid bolt-on, the default contract is wrong.
- Programmable. An API or MCP server so agents can publish without driving a browser.
- Replace-in-place. Agents iterate; the URL has to survive revisions.
- Custom domain. So the link feels like part of your stack, not an external service.
- CSP defaults. Agent-generated HTML is executable; the host should ship a sensible Content-Security-Policy out of the box.
- Opt-out of AI training.
X-Robots-Tag: noai, noimageaion every response.
Where Stacktree sits in the category
Stacktree is the MCP-native option. Other private-hosting services exist (Tiiny Host on paid plans, GitHub Pages with Enterprise Cloud, display.dev with workspace SSO), but they're shaped for human upload flows or org-wide team deploys. Stacktree is shaped for the agent loop: one tool call to publish, one to replace, three layers of gating, and a first publish that doesn't require an account at all. For a tool-by-tool roundup of the whole category, see the best private HTML hosting comparison.
How to host private HTML: the options compared
| Criterion | Codex Sites / Artifacts / Pages / public hosts | Stacktree |
|---|---|---|
| Private by default | GitHub Pages and Netlify/Vercel serve a public URL by default. Codex Sites and Claude Artifacts are private, but only inside one org. | Yes, the unguessable URL is private by default, no org needed. |
| View with no account or seat | Codex Sites needs an OpenAI workspace seat; Claude Artifacts publishing needs a Claude org seat. | Yes, the link is the credential, the viewer needs no account. |
| Share with anyone via a link | Public hosts share with anyone, but the page is fully public and indexable. Walled options block external viewers entirely. | Yes, anyone with the unguessable link, and it stays out of search. |
| Shared password gate | Not offered by GitHub Pages or generic public hosts. | Yes, an optional shared password per link. |
| Email-domain gate | GitHub Pages only on Enterprise. Codex Sites and Artifacts only gate to their own org. | Yes, a magic-link email-domain gate on any link. |
| Your own custom domain | Public hosts support it. Codex Sites and Artifacts do not document one. | Yes, from Solo at $19/mo via Cloudflare for SaaS. |
| Publish from any AI agent | Codex Sites is Codex-only; Artifacts is Claude-only; public hosts need a Git push or CLI. | Yes, MCP-native from Claude Code, Cursor, Codex, and Claude.ai. |
| Free tier | Codex Sites is Business/Enterprise only; Artifacts publishing needs Team/Enterprise; Pages is free but public. | A 3-page trial plus an anonymous first publish for 24 hours. |
| Self-host / own the stack | All are vendor-hosted. Export is not documented for Codex Sites or Artifacts. | Yes, source-available on your own Cloudflare (Workers, R2, D1). |
| Built for one-off agent artifacts | Public hosts are project-shaped; walled options are org-tool-shaped. | Yes, one MCP call publishes or replaces a single HTML file. |
Which plan does this handoff need?
Filing work under a client is free on every plan. What a paid plan buys is time on the clock and an address of your own.
- Free $0
One handoff this week
3 pages, each live for 7 days, passcodes included. If one comes down before you meant it to, it is restorable from the dashboard for 48 hours.
Start free - Solo $19 a month
A link the client keeps (paid-media dashboard, monthly report, proposal)
25 pages that never expire, your own domain, one client space, passcodes and company-email gates, and no Stacktree footer.
Start with Solo - Studio $79 a month
Several clients, each with their own address
Unlimited pages, 10 client spaces and 10 domains, so every client gets a permanent address, one passcode, and engagement detail on what they read.
Start with Studio
Frequent questions
What is private HTML hosting? +
Why does it matter in 2026? +
What is the difference between unlisted and private? +
How does private HTML hosting interact with AI search crawlers? +
X-Robots-Tag: noai, noimageai on every site so that even if a URL leaks, AI training crawlers know to skip it. The marketing site itself is intentionally indexable.Is end-to-end encryption available? +
e2e: true on upload, the browser encrypts with AES-GCM before sending. The decryption key lives in the URL fragment (which the server never sees), so Stacktree only stores ciphertext.How does private HTML hosting compare to GitHub Pages, Vercel, or Netlify? +
How do I privately share an HTML report or dashboard my AI agent generated? +
Can someone view a private HTML page without signing in or having a seat? +
Is private HTML hosting free? +
Related guides
- Claude Code wants to publish an artifact The permission prompt says the tool uploads the file to claude.ai.
- Best private HTML hosting 7 tools compared, with an honest take on where each wins.
- Private GitHub Pages What it costs on Enterprise Cloud, and the alternative.
- Share finished work with a client A private link a client opens in any browser, no login.
- Tiiny Host alternative Compared head-to-head.
- Display.dev alternative Workspace SSO vs per-link gates.
- Agent-loop hosting Replace-in-place as a first-class verb.
- The design pass One click brings a plain page to Stacktree’s design standard before anyone opens it.
- ShareDuo alternative ShareDuo hosts a Claude artifact on a noindex public link with password, expiry, and versioning.
- Host an HTML dashboard your agent built Save the dashboard as one self-contained HTML file and publish it to a private, unguessable URL: drag and drop.
Sources and further reading
- MDN: Content-Security-Policy ↗ Why CSP defaults matter for executable agent-emitted HTML.
- X-Robots-Tag (Google Search Central) ↗ The header Stacktree applies to opt every site out of AI training corpora.
- AES-GCM (NIST SP 800-38D) ↗ The cipher mode used for Stacktree's end-to-end encryption option.
- OWASP: HTML upload guidance ↗ Defensive baseline for hosting user-generated HTML.
Try private-by-default HTML hosting.
Unguessable URL on every plan, MCP-native. No card to publish your first page.
Sign up free →