How to Build a Website From Scratch – For Complete Beginners

Most of us use websites every day. If you’re reading this, you’re using a website right now. Facebook, Google, Yahoo, etc are all websites that started somewhere from scratch by someone who had the same idea as you do: “I want to make a website”. While most of us use websites everyday, there is a huge difference between using and creating a website. This guide will show you how easy it really is.

Note: This guide is for beginners. More advanced users may find this guide overly simplistic – in this case, you might benefit from reading the guide on How to setup a WordPress website on DigitalOcean.

How hard is it to build a website from scratch?

If you wake up tomorrow and say to yourself  “I want to make the next Facebook” then you will be sorely disappointed and bitter towards website development as a whole. It’s important to start small, be realistic, and most of all, be patient with the whole process.

There is usually a disconnect among people I talk to and I get a sense of them feeling uncomfortable with the idea of “making a website” because

A: They just don’t know where to start, or

B: They imagine the process to be incredibly technical/requires tons of coding/very expensive and time consuming.

While creating a website doesn’t require you know how to code, it does require you to learn new things, most of what will be taught during this guide. Hopefully this will clear up all those common misconceptions and show you that -yes- it is possible to create a fully functional, beautiful looking website even with no prior web development experience, by simply using the power of WordPress and a few handy tools that you’ll read more about below. I would estimate that it would take a complete beginner around 30 minutes and around $60 to create a simple website which they can easily update with a blog, a niche website to make money, or whatever you please.

So, let’s get right to it, what exactly do you need?

How to build a website from scratch – Step by step

  • You need a domain name, this is what your visitors will type into the search box or into Google to get to your site. My website domain name is “”, your website domain could be anything you want, as long as it isn’t taken by someone else. As a general rule of thumb, you should aim for a “.com” domain simply because they are the most standard and usually the one of the cheapest to register. In my case, I took advantage of the free domain from BlueHost when you create a new hosting account, but you can get a domain from any of these companies.
  • You need a hosting provider. These are the people who “host” your website so that people can visit it from anywhere in the world. Imagine a domain name being a door into a room, but without a doorknob, you aren’t going to be able to get anywhere. A hosting provider is the doorknob in this terrible analogy.
  • You need a platform to build your website with. In this situation, we will be using WordPress. Don’t worry if you’ve never even heard of WordPress before, just know that it’s easy to use, easy to update, and most of all easy to modify to your own tastes.

Important: If you are going to be building an E-Commerce website where you will be selling products, read this guide instead.

Alright. Let’s get started. And remember, above all else, be patient with the process. Try also not to set yourself up for distractions, because while you can always stop at any point while reading this and come back later, it will be much easier for you to setup everything in one full swoop, so you can worry more about the content of your website instead of the nitty gritty setup details.

Step 1: Choosing a domain name

This may be the most difficult part of the whole process. While you can go the approach that I took and just register “” and be done with it – the domain name is the part of the process that is permanent and sticks with the website forever, so choose something that is meaningful, try to keep it short, and be creative, because as you will probably find out shortly, there are many obscure names that have already been taken by someone else.

Read: What you should avoid when registering a new domain name

Find a domain name using

Head over to I use them to search for domain names because their interface is simple and easy to use. Type in the domain name you are looking for and it will show you if it’s available and also if the other domain name extensions (like .org, .net, etc) are also available. Keep in mind that you will not be buying a domain from Namecheap, you are simply browsing for one. Write down the name of the available domain name you want, we will refer back to it later.

Tip: Use .com whenever you can for your domain name. You want a .com domain name. I go into great detail about why this is important in this article, but for the time being, make sure that whatever your domain name is ends with .com.

Step 2: Choosing Web Hosting

When you host a website, you want to keep the following in mind:

  • What is the uptime of the hosting services in a yearly timespan? Anything below 95% uptime is a huge amount of time lost where visitors won’t be able to access your website.
  • Cost. It costs money to host a website, so plan accordingly when you go for the best hosting plans available. If you read on below there is a screenshot of typical plans offered by a hosting provider.

Why I recommend BlueHost as your website hosting provider

BlueHost is my recommended hosting provider because they give you a free domain name when you sign up even with their most basic plan. Their uptime has been 99.99% for the past year  – which is considered excellent in the industry. Even better, you can cancel at any time and they will give you a pro-rated discount for the time that you haven’t used within the first month. The best part about BlueHost is that they offer 24/7 support and service with any website hosting issues you encounter. You could, if you wanted to, call them every day for 365 days straight, and all that service support time would be included in the original price you paid. No hidden costs. You can sign up for Bluehost by clicking on the banner below.

* Disclaimer: This is important. If you do decide to take my recommendation and use BlueHost, I want you to know up front that I do make a commission off of every person I refer.  This really helps me out so I can write more articles like this. I don’t recommend BlueHost just because they give me a commission, I personally use BlueHost and enjoy them as my hosting provider. I think you will too. If I helped you at all, go ahead and click on the banner above! 

select website plan bluehost

What do each of the BlueHost Hosting Plan Options Mean?

  • Websites is the number of websites you can host on the web hosting plan.
  • Website Space is how much space (usually in GB) that you can store on the web host server. This includes all images/videos/files/etc. 100GB might be filled up quicker than you expect if you have tons of videos or large files being hosted on your website. Keep this number in mind.
  • Bandwidth is the amount of space that can be sent at one time. The cool thing with BlueHost is that it doesn’t matter if one hundred or one million people are on your website at once, BlueHost lets you service all of these people because you have unlimited bandwidth.
  • Included Domains is the number of domains that BlueHost gives you for free. 

This is why we didn’t buy the domain name from Namecheap
BlueHost will give you a free domain name upon signup and purchase of your hosting account.

Let’s not worry about the other options for now. We will go into depth about what they mean during the website setup.

For most businesses/individuals, the starter plan with BlueHost will be your best bet. If you need to have an advanced package you can always upgrade later.

Alright, we have decided on a domain name and hosting provider, so let’s put it all together.

If you decide not to use BlueHost, these instructions may not apply to you – skip to Step 4 instead.

BlueHost is a breeze to work with. You don’t know this yet, but it will be so easy to setup WordPress on your account once we have the next few steps finished. Once you click on the BlueHost link above and choose your hosting plan, you’ll be taken to this page. You want to choose the “create new domain” option, and type in the domain name you chose from Step 1.

this is where you enter your domain name that you chose

Once you type in the domain name you want and click next, it will take you to a page where you will enter your account information, package options, and billing info. The account information section is pretty standard, and just asks you for information to create a BlueHost account. Scrolling down the page, you’ll see the package options section – which has some extra options which we should talk about just so you know what they mean. There are a few options to choose here and I’ll explain each one. This is just my recommendation so if you really feel like it’s worth it to spend money for the extra hosting features, go for it.

This is what the options section looks like:

pricing options at bluehost

TLDR: Don’t select any package extras, they are not worth it.

You don’t need codeguard basic. There is a WordPress plugin which will do this for you, even automatically, for free. There is no reason to pay for this unless you are not willing to take 10 minutes each month and download a backup of your site to your computer or backup drive.

You don’t need a BlueHost SEO Tools Start. I don’t have experience using this option personally, but I wouldn’t recommend paying money for SEO until you have a fully built website with good content. SEO can come later, and should be the last thing on your mind during the initial setup stage. Let’s work on getting the site live first.

Once you’ve entered your billing info  – you’re ready to go. There is one last step to setting up your website.

Step 3: Putting it all together with WordPress

You have a domain. You have web hosting. You’re ready for WordPress. Log back in to Bluehost and it’ll say “Let’s create a website!”.

lets create a website options, bluehost

You can change these settings later, so don’t worry about getting it perfect if you’re not sure. Enter a name for your site and a tagline (think of it like a teaser tag – for example,’s tagline is “Everything Internet” – this is displayed in search engines). You can select the “Do you want a blog?” option if you want, but leave “Do you want an online store?” option unchecked, you can always create an online store for free using Shopify – my guide on how to do this is here: How To Create A Shopify Store in 30 Minutes or Less

The next page will ask you a few questions about your experience creating a website. Fill this out based on your experience, then click on the next button. You’ll be taken to a page where it will ask you to select a theme. Make sure that the theme is free, or skip this step entirely.We cover more on selecting a theme in Step 2 of this guide.

It’s going to setup WordPress for you, and then you’ll be taken to your Bluehost Control Panel – click on “Log in to WordPress” and you’ll be taken to the admin dashboard of your WordPress website.

click on the blue button that says login to wordpress to get started

Guess what? You’re done. You can now login to your website by going to the Bluehost Control Panel or by going to your website ( and then entering your login information. You can now edit your theme and make blog posts and pages. Congratulations! You’re a website owner!

Take me to step #2 – How to Choose The right theme for your WordPress website

If this post helped you at all, it would really mean a lot to me if you shared it with someone else who could also benefit. Thanks.