How to Create a Self-Hosted WordPress Blog With Your Own Domain Name

by Deepak Kanakaraju on December 14, 2014

I have been blogging for the past six years now (Since 2008). During this period, I have set up a lot of blogs. Some of them succeeded spectacularly, such as BikeAdvice.in and this blog DigitalDeepak.com. Some of them are performing moderately and continue to bring in passive income till today. Some of the blogs are for non-profit initiatives. Some of them died due to a failed revenue model, but they gave me experience.

Businessman Brainstorming About Blogging

A lot of people have asked me to publish a comprehensive guide to setup a self-hosted blog on a custom domain name. I have helped many people setup blogs. But surprisingly I never wrote an article about it, until now. Better late than never.

Here’s is a comprehensive guide to setting up your self-hosted WordPress blog on your own domain. I have tried to keep it short and simple. But if you find yourself stuck in some place, just leave a comment below, and I would be happy to help you.

Here’s what you will find in this article:

  • Decide between free vs. self hosted WordPress blog
  • The costs involved in running a self-hosted blog

Setting Up Your Self Hosted WordPress Blog

  1. Register a good domain name
  2. Get web hosting for your blog
  3. Install WordPress CMS on your host
  4. Choose a theme design for your blog
  5. Install essential plugins
  6. Install Google Analytics and configure Webmaster Tools

Free Vs. Self-Hosted WordPress Blog

A lot of people have this question. Why not go for a free blog provided by Google (Blogger.com) or WordPress? Why go through the hassle of setting up your self-hosted blog? There are plenty of reasons and benefits in a self-hosted blog. It is always a good idea to register your domain, get hosting space, install WordPress on it and customize it according to your needs.

Free blogs do not look professional. If you get a blog at blogger.com or wordpress.com, your blogging possibilities are limited, and you don’t own your domain and website. There are also some stories of people getting their accounts banned for no clear reason and their blogs disappeared into thin air.

Self hosted blogs are owned by you and no one can take it away. No one can ban your account. You can completely change the look, feel and functionality of your blog. You can make your blog a commercial blog. Many free blogging services do not allow internet users to use their platform for commercial purposes.

So don’t even think about going the free route. Always go for a self-hosted blog like mine. It costs a bit, but the benefits are priceless.

Cost of Running a Self Hosted Blog

Having a self hosted blog costs money. A lot of people wonder about how much it costs to start and maintain a self-hosted blog. Without going into the specifics, here is a rough estimate of how much it will cost.

  • Domain Name: $10 to $15 to register, $10 to $15 per year to renew.
  • Web Hosting: You can get one for as low as $5 a month. That would be around $60 a year. As your website traffic grows, you may have to pay a bit more. I pay around $50 a year for all my websites.
  • Content Management System (CMS): You have to install WordPress on your blog. WordPress is the best CMS available and it is open source! You will not get a better CMS even if you are ready to pay for it. You can download it for free from wordpress.org. However, if you want to upgrade specific functions on your website, there are free and premium plugins available.

Optional

You can invest a bit of money on logo and website design if you can invest and want to look more professional.

  • Logo: You can get logos designed for $5 on fiverr.com all the way up to $300 in 99designs.com. I paid around $50 for the Digital Deepak logo which appears on this website.
  • Theme Design: For theme design, you can check out studiopress.com where they have a lot of professional SEO optimized themes that you can buy and install on your blog. The cost ranges from $99 to $199. You can also get a custom design at 99designs.com.

Logo and theme design can also be done on a later date. But if you have money to invest, it is best to get the designs made upfront. Investing on the design makes your blog stand out of the crowd and also helps you become serious about it.

Now that you have a fair idea of how much it costs to run a blog. I am sure you will agree that the cost is not too much for the benefits that you get. I recommend that you read my post about the seven things you are losing because you are not blogging, you will get convinced that you should be blogging.

1. Domain Name

domain nameThis is the most important step when you are about to start a blog. Domain name is very important because it is directly linked to your branding, and you cannot change it on a later date. A domain name is just like a username for your website on the world wide web.

A catchy domain name helps people remember better and helps them when they want to access your website. I always prefer a .com domain name because that is the first extension launched and most of the people end up visiting the .com version by default. You can get a .net domain name as the next alternative. In certain cases, it is OK to go with a country specific extension like .in (for India) or .us (for USA).

One of the basic requirements for a domain name is that the name should be catchy and shouldn’t be confusing. If you tell your domain name to someone on the phone, they should be able to enter your domain name on the web browser without any further questions or confusion. Domain hacks like using z instead of s and numbers in the place of words are not recommended.

Also, if the domain name has similar words and rhymes, it becomes easy to remember. For example, the name CocaCola is designed to be rhyming. However, you also cannot have a completely irrelevant name. It has to be meaningful and also relevant.

My domain name DigitalDeepak.com is meaningful and has a bit of rhyme to it. You have to strike a balance between meaningful, relevant domain name and a catchy name.

Here are my favorite domain name registrars. I have also reviewed them in this post. These registrars have two-factor authentication (2FA) and help in preventing your names from getting hacked.

  • Name.com
  • NameCheap.com
  • Dynadot.com

Some of the other registrars I use include:

  • Godaddy.com
  • BigRock.com
  • Hover.com

There is a marginal pricing difference between these registrars. Some registrars give you huge discounts for the first year when you register. The renewals costs are more or less the same in almost all the registrars in the world.

If you want a good .com domain name, you will discover that the name has been already registered by someone else long back. If you are ready to invest in getting a good domain name, you can check out premium domain name destinations like sedo.com and buydomains.com. I have invested in many premium names for my projects, and you will always get back your investment over time with a good domain name.

2. Web Hosting

A domain name is like a phone number for your website that doesn’t change. People find you through your domain name. But it is not the same with web servers. You can host your site on any server. Here is a quick illustration of how the domain name system and web-servers work.

domain-hostingYou can instruct your domain name to point to any computer on the internet. Each web server has an IP address on the internet. Your can point your domain name to this IP address, and the website files will load from this server when an internet users type your domain name in the browser.

A web hosting server is the computer that stores your website files. You can even use your computer to host your website and point your domain name to your computer’s IP address. But then your computer should be ON and connected to the internet 24/7 which is not feasible! That’s why we go with a server on rent.

When you buy a web hosting server, they will send you something called name servers along with a welcome email. These name servers contain the IP address of your web server. You have to enter these name servers in your domain name settings so that your domain name knows where to point the users when they are looking to access your website.

The process is much more complex than what I have described above, but you need not worry about that. The exact process differs a little bit from company to company. If you contact the support department of your domain name registrar or your hosting company, they will help you connect your domain name and hosting.

At any point in time if you are changing your web servers, you just need to update your domain name with the new name servers so that it points to a new server. In this context, I also recommend that you read my article about premium DNS services like Amazon Route 53. I use a premium DNS for my website.

Here are some of the web hosting servers suitable for WordPress blogs that I recommend for beginners:

  • Hostgator.com
  • BlueHost.com
  • Namecheap.com (also a domain registrar)

When you get more than 1,000 visitors a day to your websites, you can go for VPS servers. For VPS servers I recommend:

  • WiredTree.com

If you get more than 3,000 visitors a day for your websites and if you need a top notch hosting company to host your WordPress blog, then I recommend managed WordPress hosting services such as:

  • WPEngine.com
  • Synthesis Hosting
  • Pagely

Managed WordPress hosts cost a bit more than traditional hosting, but they will keep your website secure and backed-up every day. Managed hosting services also help your website to load fast because their servers are optimized just for WordPress. Faster websites deliver better user experience and also helps in having good search engine rankings.

3. Installing WordPress

wpAfter you have bought your domain name and hosting, it is time to install WordPress. Some hosts come with a feature called Fantastico that will install WordPress for you in a few clicks. I always install WordPress manually because manual installation is more secure.

When you install WordPress on your hosting server, there are two main parts to it. First is the files and second is a database (MySQL database). You need not go through the trouble of understanding how they work. You just need to understand how to make them work for you 🙂

Most of the hosting companies provide you with an interface called cPanel. cPanel is a graphical user interface to operate your hosting account. Think of it as the operating system for your server. In the following steps I will show you how to install WordPress using cPanel. If your hosting company does not provide you cPanel, then the procedure would be similar. Here I will show you how to setup your database with cPanel.

Your cPanel username, password, and the login URL will be provided by your hosting company. When you login into your cPanel, you will be able to find something called MySQL database. Click on it and in the next page create a new database. You can give any name to it.

Screen Shot 2014-12-12 at 9.11.13 am

Next you have to create a new user for the database and then add the user to the database. The steps are quite easy and simple.

add user

When you are adding a user to the database, you have to enable all privileges to that user.

privileges

Now that your database and database user is ready, it is time to install WordPress and link a database to it.

Go to wordpress.org and download your copy of WordPress for free.

Unzip the WordPress file and rename the file Config-sample.php to config.php. Open the file in a text editor and enter the database name, database username and database password in the file.

There is something called WordPress salt values. These are random values that are available at https://api.wordpress.org/secret-key/1.1/salt/ just copy paste them into config.php file. You should also change the table prefix from wp_ to something random. This is for security.

Save the config.php file. Upload all the files into the public_html folder of your hosting. To upload files you just need to go to the file manager in cPanel. Once you click on the file manager, you will get the following screen.

file manager

Click on the upload button and upload the files in the WordPress folder which you just unzipped. Take care to upload the files and not the folder itself. If you upload the entire folder, then your WordPress blog would get installed inside that folder, like: yourdomain.com/wordpress/. You want your blog to show up at yourdomain.com. So just upload the files inside that folder. You can also zip it, upload it and unzip it inside cPanel file manager.

Now things are almost ready. You just need to go to visit your website by typing the domain name in a browser and follow some simple steps to install your WordPress blog. You will be creating your admin username and password in this step.

During the entire step, you would have created many usernames and passwords. Here are the things you should remember (or save it in a safe place):

  • Domain registrar username and password
  • Hosting account username & password (billing and cPanel)
  • MySQL username
  • MySQL user’s name and password
  • WordPress admin username and password.

I recommend that you use a password manager like KeePass or LastPass to save all your passwords in an organized manner. Do not just write it down in an in a notepad. Also do not save these details in an unencrypted text file in your computer.

If you tried to install WordPress in the first attempt, you might have failed. Nothing to worry! You can try it a few times, and you will get it right the second or third time. I will be creating video tutorials for installing WordPress, once they are ready I will embed them here. The video tutorials will walk you through the entire process step by step.

Until now we have discussed about how to get your domain name, web hosting and install WordPress in it. Things are not over yet. There are a few more things to tinker around before your blog becomes 100% ready to help you with your goals.

4. WordPress Themes

Once you install WordPress and login into your dashboard, you will find many different WordPress themes which you can install for free. I do not recommend sticking to the default WordPress theme because it will not set you apart from the other blogs on the internet.

themes

You can choose a free theme, or you can buy a premium WordPress theme. Some of the premium WordPress themes I recommend are

  • Thesis theme from DIY themes
  • Studio press themes by CopyBlogger media

Just search for premium WordPress theme on the internet and you will find so many themes that you will spend the next few days browsing for themes 🙂

I use thesis theme & framework for this blog DigitalDeepak.com

5. Plugins to Install and Configure

pluginOne of the best features of WordPress is that it comes with a host of different free and premium plugins to help you publish according to your requirements.

Here are free plugins you should install and activate:

  • Akismet: Helps you prevent spam comments on your blog. Free to use. You have to register for a WordPress.com account and get the API key.
  • All in One SEO Pack: Helps you optimize your blog and inside pages for the search engines. Some themes have SEO options built in.
  • Google XML Sitemaps: Helps you create sitemaps (a page will links to all the pages on your website). You can see mine here: http://digitaldeepak.com/sitemap.xml This helps search engines track new pages on your website.
  • WP Touch: A plugin that will make your website available for viewing in mobiles. One of the best plugins for WordPress.

I usually have only the essential plugins on my blogs. I will not install a plugin unless it is necessary. That is because I follow a minimalist approach.

Some blogs need more plugins. You will be able to find many plugins for the following enhancements:

  • Facebook Comments on Your Blog
  • A plugin that displays all social sharing buttons on your posts
  • Related posts plugin which will automatically display related posts below every post
  • Contact form plugin which you can embed on your about, contact or advertise page.

There are thousands of different plugins suited for your specific needs in the WordPress plugins repository.

6. Install Google Analytics and Configure Webmaster Tools

google analyticsSetting up Google Analytics and configuring Google Webmaster tools are a part of your blog setup. Without Google Analytics, you wouldn’t know who visits your websites. from where they come, how long they stay, what pages they visit, how quickly they leave your site and so on.

There are many other website analytics tools available but Google Analytics is what I recommend and what the industry recommends.

First, you have to create an account in Google Analytics. The steps are pretty simple and straight forward. Once your account is created you will get a code with a unique identifier like UA-XXXX. You have to include the code on every page on your website so that Google Analytics can collect data from your website.

And yeah, there is a WordPress plugin available for that too. It is called ‘Ultimate Google Analytics’. Some WordPress themes come with in-built functionality to include Google Analytics code and in such cases you need not install a plugin.

Google Webmaster Tools: Google Analytics helps you find out what happens on your website once people visit it. But Webmaster tools helps you find out what is happening outside of your website.

Mostly, webmaster tools has to do with the Google search engine. This is something you cannot ignore because Google has the largest share in the search engine market and you will get a lot of visitors from Google organic search.

In this blog, I have already published a complete guide to Google Webmaster Tools. After you read it, you will be able to create an account, verify your website, add a sitemap and start using all the features of webmaster tools.

Conclusion

I hope this blog post helps you setup your WordPress blog on your domain from scratch. Obviously, setting up a blog and publishing articles is not going to be enough to reap the benefits from blogging. Marketing your blog is very important.

That’s why, in the next blog post I will write extensively about marketing your blog. The marketing techniques that I will write about are the ones I use to market my own blogs and they are proven to work!

If you have any questions, leave a comment below. I look forward to seeing your blog.

deepak-handsig

#Blogger for Life

{ 42 comments… read them below or add one }

Andrew December 14, 2014 at 5:00 pm

Wow! An excellent, comprehensive and complete guide to setting up a wordpress blog on a custom domain! I fortunately learned how to do this long back.

Looking forward to your video tutorials. I will send them to my friends who are trying to get started with blogging.

Reply

Deepak December 14, 2014 at 5:01 pm

Thanks Andrew. I am glad you found it useful! I will publish the video tutorials soon!

Reply

Saumitra December 21, 2014 at 8:00 pm

Thanks. A most informative article

Reply

Karthik January 12, 2015 at 10:34 pm

Cool article dude.. it helped me with my job.. u know it 😉
btw, in the below lines, “You should also change the table prefix from wp_ to something random. This is for security.” add an example.

Reply

Shreeraj April 15, 2015 at 4:21 pm

Nice article. Wordpress is no. 1 CMS platform. Nowadays all hosting packages provides auto installer facility for wordpress, joomla, drupal etc. Beginner can install wordpress by login in cpanel of their hosting provider.

Reply

Dave May 14, 2015 at 6:43 am

Hi Deepak

Nice article. I currently have a portal with lots of content. I wish to transfer the domin and hosting to bluehose.

So when i transfer the domain to my new host. I will not be able to access the contact hosted by my old host. How do i get around this ?

rgds

Reply

Deepak Kanakaraju May 14, 2015 at 6:45 am

You can change your mx records and the mail will be routed accordingly. Did I answer your question?

Reply

Sandipon June 6, 2015 at 9:59 am

Could you elaborate on revenue generation methods for blogs? Like, is it possible to have a “donation” or “buy me” buttons for bloggers in India. I have read that the RBI doesnt allow Paypal (maybe others as well) to let Indian individuals have “donation” if its not a registered charity. So is there a recourse to it?

Reply

Deepak Kanakaraju June 6, 2015 at 2:34 pm

You can accept payments using buy buttons from Instamojo.com. It is a good alternative to paypal and supports Indian payments. Indian audience are not used to donations. It is better to sell ebooks or information products.

Reply

Sandipon June 7, 2015 at 8:28 am

Thank you for the insight, much appreciated!

Reply

Mattylynx June 11, 2015 at 7:16 pm

Cool site. I’ll try to upgrade mine too

Reply

Dheeraj June 16, 2015 at 8:54 pm

Thanks Deepak, wonderful lucid explanations.

Reply

Nirmal August 22, 2015 at 1:33 pm

Very nice article…. explained in a easy manner

Reply

wilbert October 16, 2015 at 1:34 pm

Superb! You have described outstandingly. As a reader I enjoyed reading it for the clarity you maintained throughout the article.

Reply

KRISHNA PRASAD November 2, 2015 at 12:23 pm

Hi Deepak

Thanks for posting very useful article. This helps me a lot. Can you plz post a video on this article for better understanding.

My question is that Is installing WordPress is that important. Without installing wp we cannot use it online.

Reply

David November 5, 2015 at 1:24 am

Thank.You Sir, for the info. They say knowledge is power. This is a great info for me to work at. My website coming SOON…
Thanks

Reply

manoj sharma November 7, 2015 at 7:34 pm

i want start work as blog so help me and guide me. i am waiting for your reply.

Reply

chava November 16, 2015 at 12:36 pm

Hi Deepak,

Thanks for the article. I started moving my static html website http://www.bachelorlife.in to wordpress now.

Reply

praveen January 14, 2016 at 3:32 pm

hi sir..
i post my same problem on facebook forum also ..
i sucessful book my domain from Godaddy then i go to hosting to HostGator.. where i face problem in payment section .. i have debit card and netbanking . they want credit card ..
whenever i fill my card number detail then error show that invalid card detail…so please help me from where i get the hosting.. i want to create my blog on WP..

Reply

Shyam February 29, 2016 at 8:33 pm

Why not opening a paypal account and linking your bank details to it ?

Reply

Devyani Rao January 20, 2016 at 4:48 pm

Hi Deepak,
I want to congratulate you on your successful blogs. Its so simple to understand through your blogs & at the same time they are very informative.
Looking forward to read more stuff from your sites.

Reply

Kumar February 14, 2016 at 4:10 pm

Wow Its very simplified complicated information i loved it Thanks Mr:Deepak any body can understand and its a DIY guide . And i know you personally and we met thrice in different conferences i am from Bangalore .

Reply

Neeraj Sharma February 14, 2016 at 8:05 pm

Really very good article. This will certainly help me in learning of Digital Marketing Concept.

Regards,

Neeraj Sharma

Reply

Shubham Thakur February 24, 2016 at 3:51 pm

Will help me to create my desired website 🙂

Reply

Amrita Sheth February 25, 2016 at 4:49 pm

Hello Deepak Sir,

I am completely new to Blogging and am not able to understand why I should have a website booked. Kindly guide me.

Regards,
Amrita Sheth

Reply

Sara Khan February 27, 2016 at 2:35 pm

Thanks for the post…

Reply

Shyam February 28, 2016 at 12:03 pm

Hi,

Now things are almost ready. You just need to go to visit your website by typing the domain name in a browser and follow some simple steps to install your WordPress blog. You will be creating your admin username and password in this step.

I dont get the step, what to do ?.
I typed my web address, it says Welcome to scienceweb4u.com
This Web page is parked FREE, courtesy of GoDaddy.com.

Please reply.

Thanks

Shyam

Reply

Deepak Kanakaraju February 28, 2016 at 9:08 pm

Have you configured the name servers correctly?

Reply

Shyam February 29, 2016 at 8:31 pm

Hi,

I have added the nameservers. NS8383.HOSTGATOR.COM
NS8384.HOSTGATOR.COM. When I type the web site, it shows
“Error establishing a database connection”. Can you help ?.

Thanks

Shyam

Reply

Ahmad April 11, 2016 at 1:27 pm

Really very good article. This will certainly help me in learning of Digital Marketing Concept.

Reply

prabhakar April 30, 2016 at 1:21 pm

Hi sir, This good for me knowing a new thing about digital marketing , Thanking you.

Reply

Nishant May 10, 2016 at 4:25 pm

Hi Deepak,
very well written and informative piece. I am first timer – have already bought a domain from Bigdaddy and was looking at next steps to setup my website. One query (may be idiotic) – how do you pay for the services as they list their fee in USD? Do you use a credit card everytime? How does a debit card user do it then?

Reply

sagar June 22, 2016 at 1:39 pm

Nishant, You’ll see option for US/India both when you proceed. You can also pay through any other payment options. I just paid through netbanking in INR.

thanks,
Sagar

Reply

srinivasulu brchandramouli June 15, 2016 at 3:55 pm

Very thankful for giving guidance in a simple and informative way. It prompts me to run a website soon. I am getting ready for that. Expecting more help from you.

Reply

Vikas June 26, 2016 at 9:47 pm

Hi Deepak,

I am getting this error “Sorry, I need a wp-config-sample.php file to work from. Please re-upload this file to your WordPress installation”. As you suggested I changed the name of Config-sample.php to config.php. Also, I changed the table default from wp_ to something else in the config.php file. I am using Wordpress4.5.3. Could you please help?

Reply

Jesi July 8, 2016 at 11:16 am

I got a clear idea about selfhosted blog after reading this post. Excellent information. Thank You.

Reply

Sumit Deshmukh August 16, 2016 at 12:02 pm

Hello All,

I decided to host a website so i registered a domain and go for the web hosting form HostGator. But When i purchase 1 month WordPress web hosting they converted my purchase into Linux web hosting. So i wont to change that to WordPress.

Please suggest me a solution what i do now ?

Reply

Deep Web August 22, 2016 at 12:44 am

I am newbie and just as you said I am blogging through blogspot but now I feel that I should migrate to wordpress but I have got one confusion here, should I start with wordpress.com(wordpress hosted) or wordpress.org(self hosted).
I would also include that I am from non technical background, so what would you suggest?

Reply

Inforisticblog October 22, 2016 at 5:09 am

I am currently on the blogger platform with my own domain name. The limitations are much indeed especially if you do not have any knowledge of Html and css.

However, I’m glad to find this article, it will be very useful for me when I decide to give wordpress a try.

Reply

kaish November 11, 2016 at 5:16 pm

Hi Deepak,
I am very new to this concept and I don’t know much about the web hosting and all this . I want to become a good digital marketing expert but I am bit confused over this hosting and WordPress . so, help me understand more on this .
Thanks

Reply

Chinthaka November 28, 2016 at 9:53 pm

Hi,
Thanks Mr.Deepak for the lesson. It helped me a lot to develop mine.
Cheers!

Reply

Vikas Vihan November 29, 2016 at 3:40 pm

Thanks sir, it gives me confidence to embark upon my journey to learn digital Marketing.

Thanks a ton

Reply

Leave a Comment

Previous post:

Next post: