Blog

Tutorials

How to Publish a Web Page or Website (6 Steps)

How to publish a web page or website: pick a host, upload your files or click Publish, connect a domain, turn on HTTPS and test. Free and paid options compared.

Writer

Nafis Amiri

Co-Founder of CatDoes

How to Publish a Web Page or Website (6 Steps) — minimalist illustration showing a web browser connected to a globe with an HTTPS symbol, representing website publishing on a white perspective-grid background.

To publish a web page, you put its files on a web server that's always online, so anyone with the link can open it in a browser. A whole website works the same way. You pick where it will live, upload the files or click Publish, point a domain name at it, and turn on HTTPS.

This guide shows how to publish a web page or a full website in six steps, whether you built it in a website builder, wrote the HTML yourself, or had AI build it. It also covers which free hosts are worth using, what publishing costs, and how to fix the problems that show up on launch day.

Short answer: choose where to host the page (a website builder, a free static host like GitHub Pages or Netlify, or a paid web host), upload your files or click Publish, connect a domain name, turn on HTTPS, and test the live page. It's all free on a subdomain. A custom domain costs about $10 to $15 a year.

  1. Choose how to publish, based on how you built the page

  2. Get a domain name, or use a free subdomain

  3. Choose where to host it

  4. Upload your files or click Publish

  5. Connect your domain and turn on HTTPS

  6. Test the live site and tell Google it exists

Table of Contents

  • What Does It Mean to Publish a Website?

  • 1. Choose How to Publish (Based on How You Built It)

  • 2. Get a Domain Name (or Use a Free Subdomain)

  • 3. Choose Where to Host It

  • 4. Upload Your Files (or Click Publish)

  • 5. Connect Your Domain and Turn On HTTPS

  • 6. Test the Live Site and Tell Google It Exists

  • How to Publish a Website for Free

  • How Much Does It Cost to Publish a Website?

  • How to Publish a Website With CatDoes

  • Why Isn't My Website Showing Up?

  • Common Questions About Publishing a Website

What Does It Mean to Publish a Website?

Publishing a website means moving its files from the computer where you made them to a web server: a computer that stays online and sends the pages to anyone who asks for them. Once the files are there, the site has an address, its URL, that works in any browser.

Three pieces make that work. Hosting is the server space that stores the files. A domain name is the address people type, like yourbrand.com. And you need a way to move the files onto the server, from an FTP program to a Publish button.

Web publishing is the same process for any content, from one HTML page to a blog with a thousand posts.

1. Choose How to Publish (Based on How You Built It)

Three ways to publish a web page: a website builder, a static host and a web app platform

The right method depends on what you have right now. A page made in a website builder already has hosting. A folder of HTML files needs somewhere to go. A React app needs a host that can build it first.

How you built it

Where to publish it

What you do

Cost to start

Website builder (Wix, Squarespace, Google Sites, Canva)

The builder itself

Click Publish, then connect a domain

$0 on Google Sites. Other builders vary by plan

WordPress

A web host with a one-click WordPress install

Install WordPress, then publish each page from the editor

Hosting plus a domain

HTML, CSS and JavaScript files

GitHub Pages, Netlify, Cloudflare Pages or any web host

Upload the folder, or push it to a Git repository

$0 on a free subdomain

React or Next.js app

Vercel, Netlify or Cloudflare Pages

Connect the Git repository. The host builds and deploys every change

$0 on free tiers

Built with AI

The AI builder's own hosting, or any host above

In CatDoes, ask the agent to deploy

$0 on the CatDoes Free plan, on a catdoes.app address

Still building? Our guide to making a website with AI covers the part before this one. If your site needs logins or saved data, see how to build a web app, which ends where this guide starts.

2. Get a Domain Name (or Use a Free Subdomain)

Registering a domain name and connecting it to web hosting

A domain name is the address people type to reach your site. You rent it by the year from a registrar such as Namecheap, Cloudflare or GoDaddy. Kinsta puts typical registration at $10 to $15 a year.

You don't need one to publish. Most free hosts give you a subdomain: username.github.io on GitHub Pages, yoursite.netlify.app on Netlify, yourapp.catdoes.app on CatDoes. That's fine for a portfolio, a test or a class project.

For a business, buy the domain. It's cheap, it's easier to remember, and it stays yours if you ever switch hosts. Pick something short that's easy to spell when you say it out loud.

3. Choose Where to Host It

Hosting is the server that stores your files and sends them to visitors. For a first site, the choice comes down to four types:

  • Builder hosting: included with Wix, Squarespace, Google Sites and AI builders. There's nothing to set up.

  • Static hosting (GitHub Pages, Netlify, Cloudflare Pages, Vercel): made for HTML files and front-end apps. All four have free plans.

  • Shared hosting: one server split between many sites, from about $3 to $5 a month according to Kinsta. It runs WordPress and PHP, and it's where most WordPress sites start.

  • VPS or cloud server: your own slice of a server. You get more control and more setup. Skip it for a first site unless you need a custom backend.

If your site is only pages, static hosting is the simplest choice and usually free. If it needs logins or a database, you also need a backend. A web app platform covers that, and so does an AI builder with a database built in.

4. Upload Your Files (or Click Publish)

Uploading website files with FTP, a Git push or a one-click WordPress install

This is the moment the site goes live. In a website builder, it's the Publish button at the top of the editor. Everywhere else, you move your files to the host.

Whatever the method, name your homepage index.html and keep it in the top folder. Web servers load that file first when someone visits your address. If it's missing or named something else, like home.html, visitors get an error instead of your page.

How to Publish a Web Page Free With GitHub Pages

GitHub Pages turns a GitHub repository into a live website. These steps are based on GitHub's quickstart:

  1. Create a free GitHub account.

  2. Create a new repository named username.github.io, using your own GitHub username.

  3. Upload index.html and the rest of your files to it with Add file, then Upload files.

  4. Open Settings, then Pages. Under Build and deployment, set Source to Deploy from a branch and pick your main branch.

  5. Visit https://username.github.io. GitHub says changes can take up to 10 minutes to appear.

On a free account the repository has to be public. A published site can be up to 1 GB, with a soft bandwidth limit of 100 GB a month. GitHub also doesn't allow Pages to be used to run an online business, an online store or a SaaS product (GitHub Pages limits).

If you'd rather watch, SuperSimpleDev's tutorial puts an HTML site online from start to finish:

Or Drag a Folder Into Netlify Drop

No GitHub account needed. Open Netlify Drop, drag your project folder onto the deploy zone, and Netlify gives you a live URL. If your project has a build step, drag the output folder instead, usually called dist, build or public. Unzip a zip file first. To update the site, drag the new folder in again.

Upload to a Web Host With FTP or the File Manager

On shared hosting, your files go into the folder the server publishes, usually called public_html or www. For a few files, use the file manager in your hosting dashboard.

For a whole site, use an FTP program like FileZilla. Connect with the host name, username and password from your hosting account, then drag files from your computer's side of the window to the server's side.

Install WordPress With One Click

Most hosts include an auto-installer, often called Softaculous, in the dashboard. Pick WordPress, choose your domain, set an admin username and password, and click Install. It creates the database and copies the files for you. From then on, you publish each page from the WordPress editor.

Deploy From Git (React, Next.js and Other Apps)

Connect your GitHub repository to Vercel, Netlify or Cloudflare Pages. The host builds the site and deploys it every time you push a change. If a change breaks something, you can roll back to an earlier deploy from the dashboard.

5. Connect Your Domain and Turn On HTTPS

Browser padlock showing a published website served over HTTPS

If you bought the domain and the hosting from the same company, this step is usually done for you. If not, you point the domain at the host from your registrar's DNS settings. There are two ways:

  • Change the nameservers. Replace the registrar's nameservers with the ones your host gives you. The host then manages all DNS records for the domain.

  • Add DNS records. Keep DNS at your registrar and add the records your host asks for, usually a CNAME record for www and an A record for the bare domain. CatDoes, for example, asks for a CNAME record pointing to catdoes.app.

DNS changes take time to spread. The CatDoes docs put it at a few minutes to a few hours, and create.net's help center warns it can take up to 72 hours.

Then turn on HTTPS. It encrypts the connection and removes the "Not Secure" label Chrome shows on plain HTTP pages. Most web hosts offer a free certificate from Let's Encrypt that you switch on in the dashboard. GitHub Pages, Netlify, Vercel, Cloudflare Pages and CatDoes set it up for you when you add a domain.

6. Test the Live Site and Tell Google It Exists

Testing a published website on a desktop, laptop, tablet and phone

Open the live URL in a private window, so you see what a first-time visitor sees instead of a copy your browser saved. Then check four things:

  • Links and buttons: click every one. A 404 means a file is missing or a link has a typo.

  • Forms: submit each one and confirm the message actually arrives.

  • Images and video: files that worked on your computer often break after the move, usually because of a wrong path or a capital letter in a file name.

  • Phones: open the site on an iPhone and an Android phone, not only on your laptop.

Last, tell Google the site exists. Add it to Google Search Console, submit your sitemap, and use the URL Inspection tool to request indexing for the homepage. Google says crawling can take anywhere from a few days to a few weeks.

How to Publish a Website for Free

You can publish a website for free on any of these hosts. Each one gives you a free subdomain, and most let you connect your own domain without paying. The catch is in the last column.

Free option

Best for

Free address

Your own domain on the free plan

The catch

GitHub Pages

HTML pages, portfolios, docs

username.github.io

Yes

Public repository on a free account, 1 GB per site, not for online businesses or stores

Netlify

A folder of files, front-end apps

yoursite.netlify.app

Yes, with SSL

300 credits a month. Each production deploy uses 15 and each GB of bandwidth uses 20 (Netlify pricing)

Cloudflare Pages

Static sites and front-end apps from Git

yoursite.pages.dev

Yes, up to 100 per project

500 builds a month and 20,000 files per site (Cloudflare Pages limits)

Vercel Hobby

Next.js and React apps

yoursite.vercel.app

Yes, up to 50 per project

Personal, non-commercial use only, 100 GB of data transfer a month (Vercel Hobby plan)

Google Sites

A simple site with no code

A sites.google.com address

Yes, after you verify you own it

You can only use the layouts the editor offers (publish a Google Site)

CatDoes Free

A site built from a description

yourapp.catdoes.app

No, custom domains start on Starter

15 one-time credits, one project and a "Made with CatDoes" badge

For a business site, read the terms before you pick: GitHub Pages and Vercel Hobby don't allow commercial use. If you'd rather have AI build the site too, we compared free AI website builders and what their free plans include.

How Much Does It Cost to Publish a Website?

Publishing a website costs anywhere from $0 to a few hundred dollars in the first year, before you pay anyone to design or build it. Here's where the money goes:

Item

Typical cost

When you need it

Free host on a subdomain

$0

Portfolios, tests, personal pages

Domain name

About $10 to $15 a year

Any site on its own address

Shared hosting

From about $3 to $5 a month

WordPress and PHP sites

SSL certificate

$0

Every site. Let's Encrypt and most hosts include it

Website builder plan with a custom domain

Varies by builder. On CatDoes, Starter is $50 a month

When you want the builder to host the site on your domain

The domain and hosting figures are Kinsta's estimates, and Kinsta puts a realistic first-year budget for a small business site at $100 to $300, assuming you don't hire a designer or developer.

How to Publish a Website With CatDoes

If you built your site with CatDoes, the AI app and website builder we make, publishing is a chat message. Here's the whole flow:

  1. Tell the agent "Deploy my app to the web."

  2. Pick a short slug. myapp becomes myapp.catdoes.app.

  3. CatDoes builds and deploys the site, then sends you the live link.

The live site doesn't change while you keep editing. When the next version is ready, ask the agent to deploy again. You can also change the slug later or take the site offline, both by asking in the chat.

To use your own domain, ask the agent for a custom domain. Then add a CNAME record pointing to catdoes.app at your domain provider, or an A record if it's a bare domain like yourbrand.com, and tell the agent when you're done. It checks the record and turns on HTTPS automatically.

Custom domains start on the Starter plan at $50 a month, which also removes the "Made with CatDoes" badge that Free and Core sites show. Each project can have 2 domains on Starter, 4 on Plus, 8 on Pro and 20 on Max or Team, counting the catdoes.app address.

Built your site somewhere else, like Lovable, Bolt or by hand? Import the GitHub repository into CatDoes, and the agent can keep working on it and deploy it the same way. If the site needs a database, logins or file storage, CatDoes Cloud is included on every plan.

Once the site is live, the same project can also become an iOS and Android app. Here's how to turn your website into an app.

Why Isn't My Website Showing Up?

Most launch-day problems come from one of three causes.

The Domain Shows an Old Page or Nothing at All

The DNS change hasn't reached your network yet. Wait, then check again in a private window, or on your phone with Wi-Fi turned off so it uses a different network.

The Homepage Shows a 404 Error

The server can't find index.html in the top folder. Check that the file exists, that it isn't inside a subfolder, and that the name is all lowercase, since many servers treat Index.html and index.html as different files. On GitHub Pages, also check that Settings, then Pages, points at the right branch.

The Browser Says "Not Secure"

Either HTTPS isn't on yet, or the page loads some images or scripts from http:// addresses, which browsers flag as mixed content. Turn on HTTPS in your host's dashboard, then change those addresses to https://. On WordPress, a plugin can rewrite them for you.

Common Questions About Publishing a Website

Where should I publish my website?

Publish it where you built it if you used a website builder, since hosting is included. For HTML files, use GitHub Pages, Netlify or Cloudflare Pages. For WordPress, use a web host with a one-click installer. For a React or Next.js app, use Vercel, Netlify or Cloudflare Pages.

Can ChatGPT create and publish a website?

ChatGPT can write the code for a web page. To put it online, save the code as index.html and publish the file with a host such as Netlify Drop or GitHub Pages. An AI website builder like CatDoes writes the code and deploys it to a live URL in the same chat.

How do I publish a web page on WordPress?

Open the page in the WordPress editor and click Publish at the top right. If the site itself isn't live yet, install WordPress on a web host first. Then check that "Discourage search engines from indexing this site" is unticked under Settings, then Reading.

Can you edit a website after you publish it?

Yes. Change the files and publish again: upload them over FTP, push to Git, drag the new folder into Netlify Drop, or click Publish in your builder. In CatDoes, keep editing in the chat and ask the agent to deploy again. Visitors see the new version once it's deployed.

How long does it take for a new website to show up on Google?

Usually a few days to a few weeks. Google says crawling can take anywhere from a few days to a few weeks. Submitting a sitemap in Google Search Console and requesting indexing for the homepage helps Google find the site, but it doesn't guarantee a date.

What is the difference between a domain and hosting?

A domain is your site's address, like yourbrand.com. Hosting is the server space where the site's files live. You need both for a site on its own address: the domain sends visitors to the host, and the host sends them the pages. Free hosts include a subdomain, so you can start with hosting alone.

Do I need to know how to code to publish a website?

No. Website builders like Wix, Squarespace and Google Sites publish with one button, and an AI builder like CatDoes builds the site from a description and deploys it when you ask. Even hand-written HTML doesn't need code to publish: GitHub Pages and Netlify Drop work by uploading or dragging files.

Want to skip the setup? Describe your site to CatDoes, and the agent builds it and publishes it to a live link. The Free plan includes 15 free credits, with no card needed.

Writer

Nafis Amiri

Co-Founder of CatDoes