The Cheapest Way To Host A Website

In my post, I show you the cheapest way to host a website, step by step.

To start a blog, you need a domain name, hosting, and website builder.

The cheapest way to start a website is to buy a domain name from Cloudflare for $9. Sign up for Google Cloud hosting, free for the first 90-days. Finally, install WordPress to build your website. WordPress is free.

Let us start a WordPress website, step by step.

Cheapest Way To Host A Website

Step One – Buy A Domain Name

I buy my domain names from Namecheap and Cloudflare. A domain name is the name of your website.

For example, my domain name is This domain costs me about $10 a year. (Paid link) offers .com domain names for about $10 per year.


Cloudflare is a little cheaper at about $9 per year.


I recommend buying a .com domain name. A .com domain is the most common.

Check out my ‘How To Buy A Domain Name‘ post to learn how to purchase a domain name for your website.

Step Two – Open A Google Cloud Account

New customers to Google Cloud get a $300 credit for opening an account. This credit is available for 90-days. You can use it to pay for hosting your website.

Go to to start. Click on the ‘Get started for free’ link.

Google Cloud

To use Google Cloud, you must have a payment method set up. You can add a credit card or use Paypal.

Methods of payment

Step Three – Create A Project

Go to your Google Cloud console.

Go To Console

Here is my Google Cloud console.

Google Cloud console

Next, create a project.

New project

Give your project a name and select Create.

Project name

After a short wait, you return to the console. Click on the menu to view your projects.

Drop down menu

Select your project.

Step Four – Launch WordPress

Once you have your Google Cloud account, you can deploy WordPress. WordPress is free software used to create websites.

Google Cloud offers a free-tier option to host your website. You must configure the WordPress deployment as per Google’s free-tier criteria.

On the console, select the hamburger menu. Click on Marketplace. I have marketplace pinned on my menu. You will need to scroll down.

‘Marketplace’ is where you deploy WordPress. There are several versions of WordPress. I recommend Openlitespeed.

Type ‘Openlitespeed WordPress’ into search and hit enter.


Click on Openlitespeed-WordPress.

Launch WordPress

On this page, you get an overview and additional details. At the bottom, there is a cost breakdown of using this service. These costs don’t apply to the free-tier configuration.

To start, click on Launch.

Launch WordPress

Once deployed, it is time to configure.


Step Five – Configure And Deploy WordPress

This step is essential. I recommend checking the usage limits before you start this step. Google could update the page at any time.

The free tier-usage limits are at Scroll down the page to Compute Engine.

Compute Engine

As I write this post, free tier usage allows you one e2-micro VM instance in Oregon, Iowa, or South Carolina. You can also get a 30 GB-months standard persistent disk.

Usage limits

Once you have checked the latest information, it is time to configure your WordPress deployment.

First, give your deployment a name. You can only use small letters, no capitals.

Deployment name

Next, select the zone. You must choose one of the zones from the Google document.


I selected ‘us-central1-a’.

US central

Next, select the machine type. Again, you must choose a machine from the Google document.

Machine type

I selected ‘E2’ from the series menu.


Then e2-micro from the machine type menu.


I have an E2 series with an e2-micro machine type.

Machine type

Let us configure the boot disk.

The Google document says you can have 30 GB on a standard persistent disk.

Boot disk

The default is 10 GB. You can change this to 30.

Boot disk

Leave all the firewall options ticked.


Finally, deploy.


After a short wait, deployment is complete.

WordPress deployed

Step Six – Reserve A Static IP Address

You do not want your IP address to change. To keep the same IP address, reserve a static IP address.

From the menu, select VPC network.

VPC network

From the sub-menu, select External IP addresses.

External IP addresses

Select Reserve.


Create a name and then click on Reserve.

Reserve a static IP address

After a short wait, ‘Type’ changes to static.


Step Seven – Connect Your Domain Name

Now you have an IP address. You can connect your domain name to your WordPress website.

Connect Your Domain Name On Namecheap

Go to your Namecheap account. On your dashboard, select the ‘Manage’ link.


Next, click on Advanced DNS.

Advanced DNS

You need to add two new records.

Host records

To add a new record, click on the link.

Add new record

Copy your static IP address.

Static IP address

Select ‘A Record’. Under ‘host’, type @. Under ‘value’, paste your IP address.

A record

The second record is an A Record. Under host, type www. Under value, paste your IP address.

Once complete, save all changes.

Save changes

Connect Your Domain Name On Cloudflare

On your Cloudflare account dashboard, select your domain.

Select website

From the menu, select DNS.

Select DNS

You have to add to ‘A’ records.

Click on ‘Add Record’. Under ‘Type’, select ‘A’. Under ‘Name’, type ‘@’. Under ‘IPv4 address’, paste your IP address. Finally, select ‘Save’.

Create A record

Click on ‘Add Record’ again. Under ‘Type’, select ‘A’. Under ‘Name’, type ‘www’. Under ‘IPv4 address’, paste your IP address. Finally, select ‘Save’.

Create A record

Now your domain points to your IP address.

2 A records

Monitor Update Status

Record changes take up to 48 hours to update. To monitor progress, go to

Type your domain name in the search box, select ‘A’ from the menu, and click on ‘Search’.

Whats my dns

Once the update is complete, your static IP address shows on the right.

Updated IP address

You must wait for the records to update before moving on to the next step.

Step Eight – Install A Let’s Encrypt SSL Certificate

SSL certificates ensure your site is secure. Websites with valid SSL certificates get a green padlock in browser tabs.

Secure site

For a free SSL certificate, return to your WordPress deployment. Select the SSH link.

SSH links you to the server. A popup window appears.


At the bottom of this window, enter your root domain. That is your domain name without the www.

Root domain

Hit enter to start.

Then verify your domain.

You can install an SSL certificate if your domain name points to this IP address.

Issue SSL

Enter a valid email address.


Confirm your email address.

Confirm email address

Now your SSL certificate is installed for your site. To ensure all traffic goes through HTTPS, not HTTP, confirm you want to force a rewrite rule.


Finally, it is not necessary to update the system.


Step Nine – Install WordPress

Type your domain name into a browser tab. Select your preferred language from the menu.

Install WordPress

Next, complete the required information and then select Install WordPress.


Once installation is complete, log in using your chosen username and password.

Login Page

WordPress is ready for you to build your website.

WordPress dashboard

Step Ten – Create A Swap File

To ensure your website server runs efficiently. I recommend you create a swap file.

Return to your deployment page and click on SSH.


In the popup window, copy and paste the following text.

sudo fallocate -l 1G /swapfile

Then this text.

sudo chmod 600 /swapfile

Now this text.

sudo mkswap /swapfile

And this text.

sudo swapon /swapfile

Now this text.

free -m

Finally, this text.

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

To check your swap file was created successfully, type htop.


Can you see ‘Swp’ and ‘/1024M’? If you can, then you have created a swapfile. Now you can close the popup window and start working on your site.

Step Eleven – Check For Updates

When using Google Cloud, server updates are not applied automatically. I recommend you check for server updates at least once a month.

Go to your Google Cloud console, and click on the ‘Go to Compute Engine’ link.

Compute engine

Then click on SSH.


The first section informs you of available updates. I have 79 updates.

To start updating, paste ‘sudo apt update && sudo apt upgrade‘ at the bottom of the window.

Update command

Confirm you wish to continue with the updates.


There is a progress bar.

Update progress

Once the updates are complete, you return to this.

Updates complete

Updates are applied. You can close the window.

How To Monetize Your Website

After you get traffic to your website, I recommend joining the Amazon affiliate program. It is free to join. You can start promoting products straight away.


When I started blogging, website hosting was about $100 a year. Hosting companies only offer discounts to new customers. I constantly changed companies to avoid expensive renewal fees.

Now I use Google Cloud to host my website and pay next to nothing for hosting. There is no customer support on Google Cloud. You have to manage everything.

I have been with Google Cloud for six months and wouldn’t return to regular hosting. Setting up a website on Google Cloud is more complicated than standard hosting. But once set up, it is easy to manage.

Using Google Cloud is the cheapest way I have found to start a website. Do you know of another inexpensive way to create a website? Do other Cloud services offer a free tier option?

Did you find my post helpful? Let me know in the comments. I love reading comments from my readers.