TLDR: The professional way to send a website to a client is one live link to the working site, not a file. Publish the site so it is properly hosted, password-protect it if it is a preview, and share the URL. The client clicks and reviews the real, interactive site on any device. For revisions, republish to the same link so they always see the latest, with nothing to download and no version confusion.
You finished a website for a client. The build was the hard part, and now the last step is handing it over. That last step is where a lot of good projects stumble, because a strong site delivered badly still feels amateur. This guide covers how to send a website to a client cleanly, so the handoff matches the quality of the work.
The short answer is to send a link, not a file. But the details, how to gate a preview, how to handle revisions, how to make it look like it is theirs, are what separate a smooth sign-off from a frustrating one.
Why the ZIP handoff hurts you
The reflex is to zip the project folder and email it. From the client’s side, that is not a delivery, it is a chore with several ways to fail. Their mail system may quarantine the ZIP. If it arrives, they have to download it, unzip it, and find the right file to open, which many clients simply will not do. When they do open it, the site often looks broken, because the CSS, scripts, images, and fonts are referenced by relative paths that do not resolve from a loose folder on their machine. This is the same trap covered in why you should stop emailing ZIP files.
As any agency owner will tell you, clients judge the whole project by the moment they open it. A broken first click erases a month of good work.
The professional handoff, step by step
A clean delivery is a short, repeatable routine. Here it is as a checklist you can open up.
1 Package the site
2 Publish it to a link
3 Gate the preview
4 Send one link and iterate
Gate the preview without building a login
Most client work is not ready for the open web when you first show it. You want exactly one client to see it, and nobody else. Building a login system for that is absurd. A password-protected page is the right tool: one link plus one password, given only to your client. They open the working preview, and everyone else hits a gate. When the project launches, you flip the same page to public. The full walkthrough lives in how to password-protect a web page you share.
Revisions without version chaos
Client work means rounds of changes, and rounds of changes are where file-based delivery falls apart. Each revision spawns a new file, and soon nobody knows which one is current. A canonical link solves it: you republish the updated site to the same URL, and your client sees the latest version at the exact link you already sent. Read more in update a shared page without changing the link.
Here is what changes when you deliver a link instead of a file:
- No download, unzip, or hunting for the right file on the client’s end.
- Nothing gets blocked by their mail provider.
- The site is never broken on arrival, because paths resolve on a real host.
- Revisions stay at one URL, so review rounds do not pile up versioned files.
- It works on their phone, so they can approve from anywhere.
How the delivery methods compare
| Method | Client effort | Looks professional | Handles revisions | Preview privacy |
|---|---|---|---|---|
| Email a ZIP | High | No | Poorly | None |
| Attach an HTML file | Medium | No | Poorly | None |
| Full staging deploy | Low | Yes | Yes | Manual setup |
| Publish as a live link | Low | Yes | Yes, same URL | Password in one click |
The bottom row gives you the polish of a real staging environment with none of the setup. For a freelancer or small studio, that is the whole point.
How VisiblePage fits
VisiblePage is built for exactly this handoff. Paste the finished HTML or drop the site’s ZIP, and you get a live link immediately, with every interaction working because you are sharing the real site, not a screenshot. Set it to password-protected so only your client can open the preview, then flip it public at launch. When revisions come in, republish to the same page and the client always sees the latest at the link you already sent. For the final touch, add a custom domain so the site loads on the client’s own web address. It is the professional end to sharing your AI work or any site you build.
Try it now: Send your next client site as a live link with VisiblePage and hand it over cleanly.
Frequently asked questions
What is the best way to send a website to a client?
Send one live link to the working site, not a file. Publish the site so it is properly hosted, then share the URL. The client clicks and sees the real, interactive site on any device with nothing to download. With VisiblePage you paste the HTML or drop a ZIP, get a link in seconds, and can password-protect it so only your client can open the preview.
Should I send a client a ZIP of the website?
It is best avoided. ZIPs get blocked by mail systems, arrive broken when relative paths do not resolve, and put the work of unzipping and opening files on your client. A live link removes all of that and looks far more professional. Send the URL instead.
How do I keep a client preview private?
Publish the site as a password-protected page and share the link plus one password with your client. Only they can open it, you never build a login system, and you can flip it public at launch. It is the clean way to keep an unfinished site out of public view.
How do I handle client revisions after I send the site?
Update the same page and republish. Because the link is canonical, your client always sees the latest version at the URL you already sent, so review rounds do not create a pile of versioned files. No resending, no confusion over which copy is current.
Can I put the client’s site on their own domain?
Yes. Once the site is published, you can add a custom domain so it loads on the client’s own web address with HTTPS handled automatically. It is a paid feature and a strong finishing touch for a professional handoff.
The short version
The handoff is part of the work. Do not undo a great build with a broken ZIP. Package the site, publish it to a live link, gate the preview with a password if you need to, and send one URL. Revisions go to the same link, and launch is a single switch to public or a custom domain.
Ready? Deliver your next site as a live link with VisiblePage — your first page is free.