In 2020, it’s never been easier to build your own website from scratch. Right now, you might have little more than an idea rolling around in your head, but if you follow this guide, in just a couple of hours or so, you could be the owner of a simple fully-functioning website.
Sounds good, right?!
From this article, you’ll learn about the things you need to do the job yourself. We’ll look at domain names, hosting and the software you need to create your website.
By the way, we’re using software called WordPress. It’s a content management system (CMS) used for blogging. But it’s way more versatile and often used for building websites too.
In fact, WordPress powers more than 30% of all websites and blogs you see online. Including some major brands.
You don’t need any technical knowledge to install WordPress (which is typically the scariest part of the process). Most web hosting companies offer a push-button solution that does the work for you.
Here’s a screenshot from inside my hosting account.
Clicking the marked icon starts the WordPress installation process. From here you follow the on-screen instructions. You’ll need to provide a username, password and maybe a few other details but nothing too complicated.
(If you’re prompted to use the username ‘admin’, change it to prevent hackers targeting your site. Use your real name and definitely choose a difficult password.)
That’s all you have to do to with most hosting companies.
Looks simple, right? That’s because it is. And if you get stuck, your hosting company is there to help you.
How to set up a WordPress website – the essential basics: domain name and hosting
To create a website, whether you’re using WordPress or another software, you’re going to need two things: a domain name and some web hosting.
What is a domain name?
The term ‘domain name’ refers to the web address people type into their browser to view your website. In our case, it’s ‘gobuildawebsite.com’.
The .com part is called the top-level domain (or TLD). Another term you might see is generic top-level domain (gTLD). If you want to attract traffic to your website from across the globe, ideally you need to use a gTLD such as .com, .net or .org.
One alternative type of domain is a ccTLD. Which stands for country code top-level domain. For example, websites in the UK end with .co.uk or .uk, in France it’s .fr, Germany is .de and Australia is .com.au, all use a ccTLD.
The domain extension is specific to each country.
Another option you might want to consider is a different kind of gTLD – one that describes your business or type of website. A few examples include .casino, .coach, .furniture, .lawyer etc. You could even go for .blue, .black or .red. There are hundreds to choose from!
Domain names using these extensions are generally more expensive than the ones we’re used to seeing and using, but domain registrars and hosting companies sometimes off them at sales prices. When you buy a domain at a discounted rate, make sure you know the renewal price so there are no no nasty surprises ahead.
What’s the difference between a domain name and a URL?
URL stands for Uniform Resource Locator.
In non-techie terms, it’s the specific address of a webpage or other digital media item on the internet. For example, the URL for this page is https://gobuildawebsite.com/wordpress-website/.
It’s made up of https:// / the domain name / and the gTLD.
Only one webpage can exist at this exact address.
Who chooses the URL?
In most cases, you, the website publisher makes the final decision on the URL you want to use. In WordPress, the URL is called a permalink and the final part is called the slug. You define the structure of the permalink and you can alter the slug, as I’ve done on this post, to make it more memorable.
By default, WordPress uses the full title you give your article to create the permalink (unless you change it). So, this post’s original URL (or permalink) was: https://gobuildawebsite.com/how-to-build-a-self-hosted-wordpress-website-in-2020/.
A bit of a mouthful, right? Using the shorter version makes it easier to share and for people to remember.
Where do you buy a domain name?
A lot of web hosting companies let you have a free domain for the first year when you sign up for their services. It’s the easiest and quickest way to get a website online for complete beginners.
When the free period ends, you can renew your domain for another year (or more if you like) for around $10-$15. Which isn’t a great deal to pay out, especially if your website’s making money.
However, the best way to manage domain names and hosting is to buy them separately and connect them through the Namservers settings in a system called DNS (Domain Name System). It’s sound confusing and technical but it’s easy enough to setup.
Here are the Nameservers correctly set up inside a Namecheap account for a website hosted in the UK by Guru. Your hosting company will provide you with the nameservers. All you have to do is change them at the domain registrar.
I’ve bought lots of domains over the years and found Namecheap to be the best all-rounder. First-time purchases and renewals are cheap and their system’s easy to use. They have good online support via a chat facility too.
How much does a domain name cost?
Prices for domain names vary from one company to another. On a good day, you can pick up a domain through a special offer or by using a discount code for as little as $1. On average, a .com domain costs between $10-$20 per year and country-specific domains cost a little less.
What is web hosting?
The term ‘web hosting’ refers to the location on the internet of all the stuff you need to run a website – think software, images, files and you’re in the right place.
What’s the best hosting for a brand new website?
There are a few different types of hosting available to you. The cheapest and most popular for new websites is ‘shared hosting‘.
This is the cheapest available and means your site shares server space with other websites. It’s perfectly fine for beginners and sites with low traffic. If your site gets popular, you may find a few issues start showing up because your site uses too much bandwidth and server resources. When this happens (which is a good thing, right?), it’s time to review and upgrade your hosting with your current provider or move to a new one.
Of course, a sudden spike in traffic from somewhere that’s mentioned one of your articles will die down within 24 hours, so don’t rush out to upgrade your hosting. Only do that when you see a steady increase in traffic that looks like it isn’t going away.
Once again, upgrading might sound difficult and technical but it’s often as simple as clicking an ‘Upgrade Hosting’ button inside your account to take you to the next level. Moving your website to another host is quite technical but a lot of companies offer a free migration when you move to them.
How much does web hosting cost?
For the sake of this article, let’s stick with shared hosting and its nearest equivalent, cloud hosting. This site is hosted with Cloudways. The cost is $10 per month and the server hosts three websites. So, that’s $120 for a year for three websites ($40 each).
To host the same websites on a company like Bluehost, using the Plus Package because that one lets you host unlimited sites, the cost is $95.40 (plus taxes) for the first year because of the special discount to new customers, then $155.80 for the second year onwards.
So, there isn’t a massive difference in price. And the cost at Cloudways could increase if one of the sites takes off. The biggest differences are a free domain name from Bluehost and the payment schedule.
Bluehost requires you to pay for 12 months in advance to get this price, while Cloudways accepts monthly payments.
For help choosing a hosting company for your WordPress website, check out our recommendations: WordPress Website Hosting.
My recommended web hosting company
I recommend Cloudways. Their prices start at $10 per month, which sounds like a lot compared to some of the other hosting companies charging $2.95 a month. But what you have to remember is that the advertised price is usually only available when you buy three years in advance, or during an introductory period. Cloudways prices stay the same from the start of the contract. What’s more, you can try the service free for 7 days.
Once you’ve bought a domain name and hosting and installed WordPress. It’s time to start making your website look the part.
Okay, so you might be thinking ‘what is a theme?’.
In WordPress terms, a ‘theme’ is a series of custom files and templates that create the look of your website. There are thousands of free themes available from within your WordPress site, but if you’re wanting something a bit special, you could buy a ‘premium theme’ from one of the many WordPress premium theme shops.
Let’s stick with a free theme for now. You can always look at the premium options later.
(Changing themes on a WordPress website is fairly easy but when you do it, you might have to make a few adjustments to make your site look good again.)
WordPress comes packaged with three default themes. Upon installation, the latest theme, Twenty Twenty activates.
For some people, one of the default themes is good enough.
If it isn’t good enough for you, take a look around the theme directory for a better one. To access the themes, click on Appearance > Themes in the main menu on the left.
On the Themes page, look for the Add New button and click it.
On the next page you’ll see a whole load of free WordPress themes.
Now it’s time to start clicking the thumbnails to find a theme you like. You land on the ‘Featured’ themes page by default, but you can change the filter options to help you find one you prefer. There are thousands to choose from!
Once you find a theme you like, click on the Install button, which changes to Activate so you can activate it, then Customize, so you can, yep, customize it.
The Customizer area lets you make changes to your website and setup the elements you need. Here’s how the Customizer looks in a typical installation (this one’s from a theme called Storefront). It’s likely to change from theme to theme so expect variations.
If you’re building a website for your business, a premium theme could be a better option than a free one.
They usually contain more features, offer 24/7 support and they’re designed by professional designers and coded by professional coders.
This gives you a great looking website for a fraction of the cost of hiring a professional web designer.
If you go down the premium route, expect to pay $40 – $150 to get started (you may also need to buy a framework, like the one I mostly use: Genesis).
Before we start adding content, let’s make a few changes to other parts of your website.
The permalink is the web address assigned to every post and page you publish (the URL).
The default WordPress permalink doesn’t prevent the indexing or ranking of pages. It’s just a bit, well, ugly and uninformative.
This is what it looks like: http://yourdomain.com/?p=123
The structure of the URL gives away no information about the content of the page. You can’t tell if it’s about baking or scuba diving.
It’s not a complete disaster.
In the search results, Google shows the title tag and either the meta description or some content from the page. So people will have an idea what your page is about.
Changing the permalink structure is simple and provides a much-improved user experience.
If not correctly managed, changing the permalink structure on an established site can result in a loss of traffic. To prevent this, all URLs should be configured to redirect users to the new URLs. This is usually done using 301 or 302 redirects.
Please research the topic before changing the permalink structure on an established site.
If your site is brand new, you can go ahead and change the permalink structure. Yay!
How to change WordPress permalinks:
- Log in as an Administrator
- From the menu on the left-hand side of the screen, click on Settings then Permalinks
- Check the radio button next to your preferred format (as you click through the various options, the information in the Custom Structure text box changes)
- When you’re happy, click on Save Changes
The example above uses the postname (post title) for the permalink. The example below uses the category/postname format for the permalink.
Have you ever seen the ‘Hello world!’ post on a brand new WordPress site?
Just in case you haven’t, this is what it looks like:
It’s the default post and should be moved to the trash straight away. There are several ways to delete it. Perhaps the easiest is to (make sure you’re logged in) view the post in a browser and click on the Edit link, which takes you to the editing area, then click on the Move to Trash button in the right sidebar.
So to the default comment. Navigate to the Comments section in the left menu, move your mouse over the comment so the link options appear, then click on Trash to delete the comment.
And finally, get rid of the default sample page using the same method for deleting the sample post: View the page in a browser, click on Edit then click on the Move to Trash button.
Install Some WordPress Plugins
A plugin is an additional script that adds functionality to the base WordPress files. It can be as small as one file or as large as you like, depending upon the job it’s doing.
Plugins are essential for every WordPress site. In the next section, we’ll be looking at some plugins every website needs.
Once you discover the world of plugins it’s easy to go crazy and install more than you need. I’d advise against that in the early days because they can have a massive (negative) impact on how your site performs for visitors. Especially if they’re not coded well and you’re using shared hosting.
Once again, there are tons of free plugins available from inside WordPress and there are plenty of premium plugins available elsewhere.
Imagine losing your site after you’ve spent the whole weekend adding great content, uploading images and making it look amazing.
You’d be devastated, right?
Imagine losing a week’s, a month’s or even a whole year’s worth of work because you failed to create a backup.
Boy, that would tough. It would be hard to start again if that happened.
Luckily, there are services and plugins to help you avoid this terrible situation.
I’ve used the free plugins to create backups but, in my experience, if you’re not very technical, they are a nightmare to use when something goes wrong with your site.
Last time I used one of the free backup plugins they typically had two options for managing the database backup file: 1) emailing it to a nominated address or 2) storing it on the server.
Which is fine. At least you know where it is.
But how do you get it back into WordPress? That was tough and quite technical.
A push-button solution is better. One that guides you through the setup, backup and restore process in easy-to-understand steps.
One of the services I recommend for beginners is ManageWP.
The basic plan is free, but you only get monthly updates. For daily updates, the price is about $2 a month.
It’s ideal for anyone who doesn’t want to get involved with the technical stuff and wants to sleep easy at night knowing their website is in good hands.
Before installing a backup plugin, check with your hosting company as they may provide a backup as part of the service. Be sure to ask about the restore process too as they may charge for that.
Alternative WordPress backup plugins and services
WordPress has no built-in SEO settings, so you must install a dedicated plugin.
At least two do an excellent job.
The first is All-In-One SEO, which dominated the space for a very long time.
Then there’s WordPress SEO, which is currently more popular than any similar plugin.
Which should you choose?
WordPress SEO, in my opinion, is the best plugin of the two.
It has more features and gives you more control over settings on a site-wide and page-by-page basis, but it is quite hard to setup if you don’t understand the terminology.
Google Analytics is the industry standard for tracking website visitors. Of course it shows you how many people visit your site, but it gives you a whole load of other information too.
Here are a few examples:
- How long people stay on your site
- How many pages they visit
- Which pages they land on
- Which pages they leave by
- The devices people use including desktops/laptops/mobile devices
- Their geographic location
- If you use AdSense on your site, you can link Analytics to AdSense to see which pages generate revenue
- Track conversions
- The number of people active on your site in real-time
There are two stages to adding Google Analytics to your site. First, if you don’t already have one, you must create a Google account.
If you already have a Google account, click on Sign in.
If you don’t have a Google account, click on Create an account.
Whichever of the two links you click on, you see this page:
Enter your Google login information or click on Create an account. If you are creating an account, complete the online form, which currently looks like this:
Once you have created your account, or if you already have one, log into Google.
You will see a page like the one below, to create your Google Analytics account, click on Sign up.
On the next screen you enter information about your site and your location. Complete each section of the form, and untick any of the sharing boxes you disagree with, then click on Get Tracking ID to get your code.
You will see a screen asking to you agree to the terms of service. If you are not in the United States, change the country option to match your own, then click on I Accept.
Now, copy the tracking code (highlighted red on this screenshot) by clicking in the box on your browser. Use Ctrl + C or whichever shortcut you prefer, to copy and paste (Ctrl + V) it into your website.
Once you have the tracking code you must place it in your site. Google recommends placing the code in the header section, which sounds scarier than it is.
Some themes have special areas for Analytics and other scripts.
Check yours, if you don’t see one, try using a dedicated plugin like Insert Headers and Footers, which you can download here – or through your site.
When you have the plugin installed and activated, navigate to the options page: Settings > Insert Headers and Footers and place the tracking code in the area under Scripts in Header.
If it’s correctly set up, it will look like this:
Hit save and you’re done.
It can take up to 24 hours for Google to start showing data, so don’t worry if you don’t see anything straight away.
You need a contact form so people can get in touch with you.
There are a few options to choose from.
My favourite is Contact Form 7 because it’s simple and easy to use.
The default form is good enough to get started. And it’s fairly easy to create your own forms by adding extra fields.
To create a contact page:
- Create a new page
- Copy the shortcode created by Contact Form 7
- Paste it into your new page
- Write a few words encouraging people to contact you and when they should expect to hear from you
- Hit publish
You now have a contact page.
The default form looks like this.
The styling comes from the Twenty Fourteen theme (one of the default themes). So, it will look different on your site if you use a different theme.
You are best using pages (not posts) to create these for reasons explained here.
What goes into these documents depends upon the nature of your site and your geographic location. There are plenty of sites offering legal documentation so a quick search should give you something.
In some cases you may have to see a lawyer to have documents drawn up specifically for your site. Before doing that, visit SEQ Legal, which offers a ton of documents you may be able to use.
Finally, now you’ve set up your blog, do you want the search engines to read it straight away or do you want to add some content first?
It’s your choice.
The default installation of WordPress allows search engines to reach and index your posts and pages. You can block search engines reading your content until the site is ready, here’s how to do it:
Navigate to Settings > Privacy > and click Ask search engines not to index this site.
A word of caution – don’t forget to change this when you’re ready for search engines to index your content!
I hope this page helps you understand the process for starting a WordPress website? As you can see from each of the steps I’ve described, the process is reasonably straight forward. And it’s probably one of the easiest and cheapest ways to setup a personal or business website.
If you have a question about any part of the process, please feel free to ask it in the comments section or get in touch through the contact page.
*Please note, this article contains affiliate links, which means, if you buy after clicking one of our links, we earn a commission from the sale.