Home › Guides › Host a website for free

How to host a website for free: step by step

You've made a website and want other people to see it. In this guide you put it online for free, with your own address and a secure HTTPS connection. It takes about ten minutes.

By Waseem Idoe · Updated 25 October 2026

What do you need?

Step 1: get your website ready

Put all your website's files in one folder. The home page has to be called index.html (lowercase) and sit in the main folder, not in a subfolder. That's the page visitors see when they open your address.

my-website/
├── index.html
├── about.html
├── style.css
└── images/
    └── logo.png

Use relative paths in your HTML, like images/logo.png, not paths on your own computer like C:\Users\.... Those don't work online.

Working with React, Vue, Vite or Astro? Then you don't need to build anything yourself. Hand over the project folder with package.json: the platform runs npm run build and puts the dist, build or out folder online.

Step 2: create a free account

Go to zeno-innovations.com/dashboard and sign up. You can use your email address or sign up in one click with GitHub, Google or Discord. The free Hobby plan is active straight away.

Step 3: create a new project

In the dashboard, click New project and choose Website. Give your project a name, for example my-portfolio. That name becomes your address: https://my-portfolio.zeno-innovations.com. So pick something short and recognisable, in lowercase with hyphens instead of spaces.

Step 4: add your code

You have three options. Pick whichever suits you best:

A. Upload (the easiest)

Drag your files, your whole folder or a .zip file into the upload box. Folders like node_modules and .git are skipped automatically.

B. Connect GitHub (handy if you change things often)

If your code is on GitHub, connect the repository. Want every git push to go live automatically? Copy the Deploy hook URL from your project's settings and paste it into GitHub under Settings → Webhooks, with content type application/json.

C. The terminal (for developers)

Install the Zeno CLI, type zeno login and then, in your website's folder, zeno --prod. That's all.

npm install -g https://zeno-innovations.com/dashboard/zeno-cli.tgz
zeno login
cd my-website
zeno --prod

Step 5: deploy and check

Click Deploy. You'll see the build steps scroll by live. After a few seconds your website is online at https://your-name.zeno-innovations.com. Open the address on your computer and on your phone, and click through all the pages to check that images and links work.

Updating your website

Changed something? Upload the new version, push to GitHub or type zeno --prod again. Your old version stays online until the new one is ready, so your site is never unreachable. Every version gets its own preview link, and if something goes wrong anyway, you bring back the previous version with one click.

Common mistakes

What's next?

In the dashboard you can see how many visitors your site gets, from which countries and on which devices, without cookies. Want more, like a server, an API or a Discord bot? Then upgrade to Pro. And if you'd rather have someone build the website for you, have a look at website development.

Frequently asked questions

Is it really free?

Yes. With the Hobby plan you put websites online for free, with HTTPS, analytics, logs, a firewall and previews. Free sites show a small “Powered by” badge.

Do I need to buy a domain name?

No. Every website gets a free address on zeno-innovations.com, like your-name.zeno-innovations.com.

Can I host a WordPress site?

Zeno hosting is made for static websites and for apps in Node.js or Python. WordPress (PHP) isn't supported. A site you made with HTML, CSS and JavaScript or with a framework like React or Astro does work.

How long until my site is online?

Usually a few seconds after uploading. Projects with a build step take a little longer, depending on their size.