One of my visitors recently asked me about the difference between a Content Management System ("CMS") and a site builder. Unfortunately, it's not as easy to answer this question as you think, since when people on the Internet use the term "site builder", they sometimes mean different things. Still others have asked me about the difference between using a blog and a web editor for a website. I will try to deal with all variations of this question in this article.
Incidentally, please note that this page only deals with this particular set of queries. I realise that if you're reading this article, you're probably thinking of starting a website. If so, after reading this answer, you should probably go on to How to Create Your Own Website: The Beginner's A-Z Guide which contains more practical information on how you can actually go about setting up that site.
When people create and update websites, they can do it in one of many ways.
One way is to do it the way I do for thesitewizard.com. I write the articles I want to publish on my computer using a type of program called an editor. I then save those articles as web pages, that is to say, I format the articles in a special way so that they can be displayed using a web browser (the program which you're using to read this article). When I'm done, I transfer the article to a special computer on the Internet run by a company called a "web host". Once I do that, the article is "live" on the Internet, and can be read by anyone visiting thesitewizard.com.
In other words, using this method, you run the editor (whether a visual web editor or a plain text editor) on your own computer and create the complete web page on that computer. Only when you're done is the page transferred to your website on the Internet.
Although most people call the programs I mentioned above "web editors", there are some who also refer to such software as "site builders". I suppose they think that since their editors can be used to build websites, they are "website builders". This is particularly so of programs that pattern themselves after desktop publishing software, such as NetObjects Fusion and Serif WebPlus.
So that I don't get you more confused, let me elaborate a bit, even though I'm going off the track here. In order to make things easier for people to use, web editors either behave the same way as word processors (ie, programs like Microsoft Word) or they act as though they are desktop publishing software (programs that people use to create brochures, newsletters, and other sorts of printed publications). For example, Dreamweaver and KompoZer work a bit like word processors, while NetObjects Fusion and Serif WebPlus work a bit like desktop publishing software. Don't be too worried about the distinction though. Both are just normal web editors that work on your computer and produce web pages. No matter which software you use, you still have to learn how to use it.
To get back to the topic, such "site builders" are really only web editors under another name. You run them on your computer, and when you finish designing your page, you use them to transfer your files to your actual website. The only reason I put this under a separate point is because of the confusing use of the term "site builder" by some people to refer to these web editors.
Some web hosts also provide a service which they sometimes advertise as a "site builder". To design your website, you typically have to use your web browser to log into the web host's site and design it directly on their site (using your browser and no other software).
(A web host is just a company that has computers that are permanently connected to the Internet. When you put your web pages on their computers, everybody on the Internet can view them. For example, thesitewizard.com's web pages are located on one such web host.)
The difference between using such an online site builder and a standalone web editor is that you don't run any program on your own computer at all. The pages are created directly on the web host's computer and are automatically placed on your site. Each web host has a different site builder, and they all work differently with different pre-made designs available for your use, which you can customise ("customize" if you use a different variant of English) to a greater or smaller extent.
If you are even considering using such an online site builder, please read the article "Is It Better to Use an Online Site Builder or a Standalone Web Editor?" before doing anything. Every now and then, I get an email from a visitor regretting his/her use of an online site builder for the reasons mentioned in that article.
Realising that some people like to design their website on their own computer before transferring it to the Internet, some web hosts have an "offline" version of their site builder. You typically have to download the software from their website and install it on your own computer. Using that program, you can design your site and only transfer it to the web host when you're done.
Such a site builder does not belong to the same class as the general purpose web editor that I mentioned earlier. It is tied to a specific web host, and suffers from the same problems I mentioned in my article on online site builders vs standalone web editors. Not only can you not use the site builder when you move to another web host, there's a chance that you also cannot transfer your web design to a new host as well, since the builder may create designs that use elements owned by your web host.
A content management system, usually abbreviated as "CMS", is basically just a piece of software that you install on your web host's computer. That is, instead of installing the program on your own computer, the way you do a web editor, you install it directly on your website. You then use your browser to log into your website and use it to add articles, photos, or whatever to your website.
I have discussed the pros and cons of using a CMS as opposed to a web editor elsewhere, so I will not repeat the points I have already mentioned there. If you're interested, please see that article.
In one sense, using a CMS has some superficial similarities to using your web host's online site builder, which is probably why the visitor asking me this question was confused. For example, when you use a CMS, you don't need to install any program on your own computer to create and update your website. You just connect to your site with your browser and modify it directly.
Having said that, there are substantial differences between a CMS and a web host's site builder. Firstly, with a CMS, you control the software, the visual design of your site, and the end product. You're not tied to your web host at all. If you ever have to change hosts, you can bring your entire site, lock, stock and barrel, over to the new web host, much the same way you can when using a standalone web editor. Secondly, a CMS is typically much more than a site builder. You can use it to create an online community (nowadays called a social networking site) with it, with visitors being able to create their own accounts, have their own member pages, and so on.
On the other hand, CMSes also have their own disadvantages over a web host's site builder. For example, they rarely have the huge range of web design templates that an online site builder has. ("Templates", in this context, are just pre-made web designs that you can use wholesale, or customise, for your site.) However, if you use a CMS platform that is very popular, you can probably find some free template somewhere on the Internet, possibly even directly on the CMS author's own website, that you can adapt. CMSes are also much harder to set up. You have to learn how to do things like transfer files from your computer to your web host's computer, set up a database, and configure the CMS for your site. Once you're through with the initial stages, however, it's probably easier, since you have much greater control over the CMS than an online site builder (since the latter is controlled by your web host). Many popular CMS programs even have add-on modules that extend the functionality of the CMS, so even if the basic CMS package doesn't have everything you want, you can often install one or more of these modules to provide the missing feature.
Anyway, if you're looking for CMS software, you can find many listed on thefreecountry.com's Free CMS Software page.
Blogging software are (for the most part) a subset of CMS software. That is, they are mostly like the CMS software I mentioned above, except that they have fewer features since they are designed primarily for people who just want to blog (write short articles). Nowadays, though, the feature set of some free blogging software have increased to such an extent that they should probably be considered as fully-fledged CMSes.
In other words, you typically have to install the software on your web host's computer the same way you do a CMS. All the other advantages and disadvantages of a CMS that I mentioned above apply here as well. Like I said, they're mostly the same thing.
Note that I'm talking about the blogging software here. I'm not talking about the web hosts that let you blog directly from their site, such as those mentioned on the Free Blogging Web Hosts page. That's an entirely different kettle of fish. Such blogging web hosts not only have the disadvantages of a free web host, they may also have the same issues that I mentioned in relation to the online site builders as well. And if you don't use your own domain name for your blog, there's also the problem I discussed in the article Is it Possible to Create a Website Without Buying a Domain Name? The High Price of "Free". Some of the blogging hosts also impose restrictions on what you can do with your blog.
Sometimes, the more you learn, the less you feel you know. I'm sure some of you, at this time, probably feel like giving up the idea of starting a website altogether. ("There are just too many things to decide. And so many unknowns!") Don't worry. Everybody feels that way when starting out in a completely new field. It gets easier as you go along. Really.
Anyway, although I will not presume to tell you which method you should use to create your website, let me suggest a few pointers that may help you narrow your choices, and hopefully make the decision more manageable.
The first question you have to ask yourself is whether you will be frequently adding new pages to your website. Note that I'm not talking about updating the information on an existing page, but adding completely new pages.
For example, if you want to write daily (or weekly or monthly or whatever interval) articles about things you encounter or experience, you are considered as someone who will be adding new pages to your site on a regular basis.
On the other hand, if your website is just a site for you to sell your goods, and you keep a fairly fixed inventory of things to sell, chances are that you won't be adding many new pages on a regular basis to your site. Even if you add a new item or two to your online shop, and thus a new page for that item as well, adding new pages is not the norm for your site. In such a case, I consider such a site as being fairly static in nature. That is, after the initial creation of your website, the site remains mostly the same with the rare addition of a new page.
People with sites that rarely have new pages may want to consider creating the entire thing in a web editor. Since the creation of your website is a one time affair, and adding new pages is so infrequent, in my opinion, using a CMS is a bit of an overkill. For such sites, a web editor allows you to get started with your site far easier than using a CMS, since it's easier to customise the appearance of your site with a web editor than with a CMS (which often requires you to have some technical knowledge). Using a web editor also lets you avoids the overhead of using a lot of resources on your web host which CMSes tend to do.
That is not to say that people who regularly add new pages to their site need to use a CMS or blogging software. For example, I still use a normal editor to create all the pages on thesitewizard.com, in spite of the fact that I add new pages to the site fairly regularly. All I'm saying is that if you have a site that rarely changes, you may want to consider just using a web editor. The converse is not true. The fact that your site changes frequently doesn't mean that you have to use a CMS. It's not an either-or situation.
If you're writing a blog, the easiest solution is to use a blogging program. While you can of course create all the pages of a blog manually with a web editor, you'll lose all the convenience and features blogging software typically provide. And they really provide a lot of useful features that make it easy for bloggers.
Although I have written a review comparing some software which I've used before for blogging, namely WordPress vs Drupal vs Expression Engine, at the time I write this article, I think WordPress is probably easiest to use for a blog. The other two are fine for CMSes, but for blogging alone, it's hard to beat WordPress. And the latter's free too. (Yeah, I know. It's not fair of me to compare specialised blogging software against general purpose CMS software in an article talking about blogging. But those were the software I actually used for my old blogs, so they were all I had to compare. And besides, a lot of people use those same software for blogging.)
If you travel a lot, and are not always able to bring your own computer, using a CMS or blogging software may make it easier for you to maintain your site while away. Since CMS and blogging software are installed on your website itself, you really don't need any special software on the computer you're using to add new pages or make changes to existing pages. All you need is a web browser, and you can log into your site from any computer.
Of course, whether it's really wise to log into your site while on someone else's computer is another issue altogether. As I'm sure you know, this presents security problems. But I guess not everyone has a choice.
Another thing to consider is that if you use a CMS or blogging software, you may not be able to completely control the appearance of your website. You can do it easily if you know how to code in HTML, CSS and PHP, but otherwise you will probably end up relying on pre-made designs made by others. (If you don't know what I mean by these terms, please see "What is HTML? What is CSS? What is PHP?".)
Note that these programs do not prevent you from using your own design; far from it. The problem for most newcomers is that to use your own custom-made design, you have to insert some PHP code into selected spots of your page in raw HTML mode. (If that last sentence made sense to you, it's quite possible that you will have no problem with this, and thus can dismiss this point.)
Having said that, not all CMS software present this hurdle. As I mentioned in WordPress Vs Drupal Vs Expression Engine, the commercial CMS software called Expression Engine does not require you to drop into raw HTML mode to insert PHP code. Even then, designing a custom appearance for any CMS is still much harder than just designing a website directly with a web editor for direct publication on the Internet.
If your website has multiple authors separately updating and contributing different pages, it may be easier to go with a CMS. Note that when I say multiple authors here, I mean that each person has access to the website and can add new pages to the site (or change existing pages) themselves from their own computers. In such a case, coordination can be a bit of a problem if each one uses their own web editor. It doesn't mean you won't face coordination problems with a CMS of course, but I think it makes things a bit easier.
If you want to create a website where visitors can sign up, log into their own account, and create their own web pages on your site, you probably have no choice but to use a CMS. A web editor alone, without the addition of any other software, will not allow a novice webmaster to create such sites. (This is not true of programmers though; if you are one, you can of course use a web editor to create a website with support for member pages. In effect, you'll be creating your own CMS, using the editor.)
I don't want you to go away with the impression that if you want a discussion forum on your website, that you need a CMS. You don't. You can still create the main site with a web editor, and then install specialised forum software into your site, so that your visitors can create their own account and post messages and discuss stuff.
Of course if your entire website is nothing but a discussion forum, then you don't even need a CMS or web editor. Just install the forum software.
I'm sure that some of you are looking for a method that makes website creation easier than the other. The bad news is that none of them are actually easier when you look at the entire website development process as a whole. The online site builder option seems easier at first glance, but it makes things difficult as you progress, not to mention that it causes grave problems in the long run (as I have discussed elsewhere already). The CMS option seems like it might be easy, but is generally quite hard for newcomers to get started since you have to dive into a lot of technical details at the very start. The web editor option seems difficult at first but it spreads the difficulty across time, and actually becomes easier as you go along.
I don't recommend that you choose any of the methods based on what you perceive as easy. As a newcomer, since everything is new to you, nothing is "easy" in that nothing can be accomplished without a bit of effort and learning. Having said that, after you learn how to do it, you will probably want to say to me, "Gee, Chris, I thought you implied it was hard". So let me preempt it by telling you that it's not actually hard: it just appears hard for the newcomer because everything is new. Think about it this way: it's like the situation faced by children just starting out in arithmetic, where many of them see division (things like "12 divided by 3") as hard. But once you know it, it's actually easy.
If you have not already read my discussion on The Pros and Cons of Using an Online Blog Software or a Content Management System (CMS), you might want to take a look at it as well, since it has some things may help your decision making.
Of course these things aren't really set in stone. You will want to factor in your own personal preferences and style of working as well, possibly giving priority to those even over the points I mentioned above. There are no fixed rules for such things. Everybody does as he/she sees fit. And you are not stuck with the choices you make now. You can always change your mind, and use something different (say) months down the road if you find you dislike the current way of doing things.
In the end, if you can't decide, just use a web editor. From my experience with teaching newcomers, a web editor provides the least steep learning curve, while giving them greater control over the visual appearance of their site (something most new webmasters rightly expect to have). Changing to another method after learning a web editor, in my opinion, is also easier. You gain a broad base of knowledge (and skills) when using a web editor that continues to be relevant even when using a CMS.
For those who are ready to get started, please proceed to How to Make / Create Your Own Website: The Beginner's A-Z Guide. The whole process is actually simpler than you think.
This article can be found at http://www.thesitewizard.com/gettingstarted/difference-cms-site-builder.shtml
Do you find this article useful? You can learn of new articles and scripts that are published on thesitewizard.com by subscribing to the RSS feed. Simply point your RSS feed reader or a browser that supports RSS feeds at http://www.thesitewizard.com/thesitewizard.xml. You can read more about how to subscribe to RSS site feeds from my RSS FAQ.
This article is copyrighted. Please do not reproduce this article in whole or part, in any form, without obtaining my written permission.
It will appear on your page as: