You have a deliverable. An email template, a banner set, a report, a prototype. It is one HTML file and it looks perfect on your machine.
Getting it in front of the client is where freelancers lose an hour and some credibility.
Why the obvious options fail
Emailing the file. HTML attachments are a classic phishing vector, so Gmail and Outlook warn on them, preview them as a wall of code, or strip them outright. Your client sees a scary banner instead of your work.
A cloud drive link. Google Drive, Dropbox, and OneDrive render .html as source code, not as a page. You will get a reply asking what all the angle brackets are.
A staging server. Works, if you have one and the client is willing to wait for you to configure it. Most one-off deliverables do not justify the setup.
A free public host. Fast, and the reason so many guides recommend it. But it puts your client's unreleased work on a public URL on someone else's domain, indefinitely, with nothing but obscurity protecting it. If it gets indexed or forwarded, that is on you.
None of them collect feedback. Even when the link works, the client replies in email with "the header is too big" and you spend three messages working out which header.
What "private" should actually mean
Most tools that call a link private mean it is unguessable. That is not the same as protected. The file still sits readable on a server, and anyone who ends up with the URL is in.
Commentable encrypts your HTML in your browser before it ever leaves your device. The decryption key is stored in the part of the link after the #, which browsers never transmit to any server. We host the page and we still cannot read it.
On top of that you can set a password and an expiry date.
How to send it
- Open commentable and paste your HTML, or upload the file.
- Choose an expiry, and a password if the work warrants one.
- Copy the link and send it however you already talk to the client.
That is the whole process. No account required to start, no credit card, no deploy step.
What the client does
They click. The page opens, live and interactive, on any device.
There is no login screen. No app. No "create a free account to view this document." For a client who is not technical, this is the difference between feedback today and feedback whenever they get around to it.
Then, instead of writing you an email, they click the thing they want changed and type. The comment pins to that exact element. You get an unambiguous list of changes anchored to the page itself.
When you send the fix, you update the same link rather than sending a new one. The client's bookmark still works. Their old comments stay attached to the version they were made on, so there is a record of what was asked for and when.
How this compares
| Email attachment | Google Drive | Free public host | Commentable | |
|---|---|---|---|---|
| Renders as a page | No | No | Yes | Yes |
| Private | Yes | Yes | No | Yes |
| Encrypted before upload | No | No | No | Yes |
| Client needs an account | No | Often | No | No |
| Feedback pinned on the page | No | No | No | Yes |
| Update without a new link | No | Yes | Varies | Yes |
| Password and expiry | No | Limited | Rarely | Yes |
Pricing
Free links are fully branded and stay live for 30 days, which covers most review cycles. Pro at $7.99/mo or $72/yr makes them permanent, serves them from your own domain, and removes the badge. See pricing.
For agencies, the custom domain is usually the reason to upgrade: the client sees your domain in the URL bar, not ours.
Sharing a PDF instead? Same flow, same pinned comments, page by page: PDF sharing. And if the file came out of an AI chat, here is how to share an HTML file from Claude.