I HATE to be lost in a conversation! I especially hate to be lost when it involves my money.

Several years ago my wife and I bought our first house. (We rented far too long) We had a great real estate agent, and a great mortgage broker, but I swear, half the time they spoke a foreign language.

And then, throw on top all that legalese spread across pages and pages that required my signature. Ugh… Color me confused.

I knew this stuff was important. I knew this was stuff I needed to know. I knew this was stuff I probably SHOULD have known. But I didn’t.

Now I had two great agents, so I felt comfortable asking. But no matter how nice they were, there were some answers I just DID NOT understand. I mean, what they said sounded right and I trusted them. So, I smiled. Nodded. And signed where I was supposed to.

It was just like French class back in high school all over again except this involved my life savings.

I’m sure you can relate.

It’s uncomfortable not knowing the things you feel like you ought to know.

I come across this often with my clients. What’s the difference between a hosting provider and a domain provider?

“I just bought everything from GoDaddy. It was one bill. It’s the same thing, right?”

I understand. You’re not alone!

That’s why this article exists. It’s for you.

So what’s the difference, and why do you need both?

A domain registrar is a company where you purchase your domain name. http://YourCompanyName.com

The hosting provider is the company that “hosts” your website. This is all the coded files, images, etc… that make up your website.

When you purchase a hosting account, you are purchasing (renting) space on a physical server (or network of servers). This is where all your website files live.

Clear enough?

Yeah, you’re probably feeling like I did when I asked my mortgage broker how my escrow was going to work with my taxes and insurance and what it all meant for tax season. Still kinda not getting it.

(For clarification, I get it now, I was just new and overwhelmed during the process. I’m guessing you can probably relate.)

The best way to understand the difference between a domain provider and a hosting provider is to understand the basics of how the internet works.

How does your computer display files from a web server just by typing in a URL address?

The first thing you should know is, the internet uses numbers, not letters, to communicate locations.

It’s a lot like how your telephone works. Your address book is filled with names, but those names are attached to numbers. When you call your spouse, the telephone network has no idea who “wife” or “husband” is, but they do know 719-456-9876.

That’s how the internet works.

Your hosting account, where your files live, is given an IP address. Something like 9878.1234.5847.1234

Just like a phone number, if you type in that number (if that were your hosting account address), then you would see your website.

But NO ONE would EVER remember your IP address. That’s why we have domain names.

Imagine a phonebook, or your personal contact list inside your phone. Erase all the names and just leave the numbers. All those numbers are still good, and they’ll get you to where you want to go, but could you do it? Could you remember all those numbers without the names? Maybe a few, but how about ordering a pizza for dinner?

And that’s the point of buying a domain.

Your domain provider has a “setting” called DNS. That little setting is where the magic happens. This is where you tell your domain provider that your domain is connected to your hosting IP address.

Yourcompanyname.com = 1234.1234.1234.5678

Once that “setting” is… well… set, then your domain provider pushes that information out to another technical “place” that the internet relies on to operate, to a Top Level Domain (TLD) provider.

See, when you type in a URL address or click on a link, your computer actually has no clue where that domain name originated (GoDaddy, Network Solutions, Brian’s Bait Shop And Domain Services). And it equally doesn’t have a clue where that string of letters should point to so it can get the files you’re wanting.

Your computer goes through a multi-step process to connect a domain name to an IP address:

Step 1: You type a website URL or you click on a link to get to a website.

Step 2: Your computer searches its local cache to see if it has a record of that URL address. If you’ve been to this web address before, then your computer knows the IP address and pings that server to get the website files.

Step 3: If your computer does not know, then a request is sent out to your local ISP (internet service provider – the place you most likely purchased your internet access from) to make the same request. If anyone on that ISP has visited the same URL address, then your ISP has all the necessary information.

Step 3a: Your ISP send the information back to your computer, your computer then pings the hosting server and you get the files.

Step 4: If your ISP does not have this information, then your request is sent out to one of many places, DNS services like (DYN) and potentially sent even higher to TLD themselves.

Step 5: Your request eventually finds the connection information that is needed, and it sends it back down the chain until it gets back to your computer.

(note: every step along the chain has its own cache, so the next time this request is made by another user, then their request can be resolved with that steps cache instead of having to go further up the chain.)

Step 6: Your computer has the IP address needed that for the domain name you’re trying to access, and it pings the server to send the files you’re requesting.

It’s a complicated process that is even more technical than how I’ve explained it. What is truly amazing, this all happens in milliseconds, what appears to be instant.

And that’s why you need both.

You need a domain name purchased from a domain provider, they’re the ones that let the internet know how to find your website files.

You need website hosting from a hosting provider. They’re the ones that give you the server space to put your website files.

So, how’d I do? Are you still confused? If so, then it’s not your fault, its mine. Please leave a comment so I can make this explanation even better.

This is not an article intended for web developers. It is intended for anyone who wants the simplest and clearest explanation on what the difference is between a domain provider and a hosting provider – and why you need both to get your website up and running.

If you would like a more in-depth and technical answer, there is this fantastic DNS explanation written for all of us laymen.