How to choose a CMS

A CMS (aka Content Management System) is, at first glance, a fairly simple concept. As the name implies, a CMS is a system for managing content in a central location. The term CMS also tends to include the content that comes out the other end, usually in the form of a website. But beyond basic definitions and key functionality such as editing, drafts, embedded media and scheduling, there's a great deal of variety in how different CMSes work and what they can offer. This guide outlines key factors to consider before making your decision.

Step 1: Consider your requirements

Hopefully you'll already have an idea of why you need a CMS. All CMS frameworks allow you to write and edit content in a (hopefully!) user-friendly interface, giving you the flexibility to change and expand your site whenever you want. But before you dive into choosing a specific CMS, it's worth considering what features you'll need and what you will want to achieve. Here's some key things to consider:

  • How do you want content to be organised and displayed? If all you need is a few pages and a news/blog section then almost any CMS will do the job. For more complex needs, you'll need a CMS that gives you flexibility in how your content appears on the site and how the content is structured.
  • Who will use the CMS? If you want almost any member of staff to be able to submit content to your site then your CMS should be as user-friendly as possible. If it will only be used by a smaller group of users with specific training then you can choose a CMS that gives you more powerful features or greater control, even if it's at the expense of usability.
  • How do you want to manage image assets and other files? While most CMSes allow you to upload and embed images, PDFs, word documents etc., some do this better than others. If you want to edit images within the CMS, control how assets are displayed or retrieve previously-used assets from a central location then this should be a key requirement when deciding which CMS to go for.
  • Do you need to integrate with ecommerce? Many CMSes have ecommerce functionality built-in, or have plugins that enable you to integrate with the payment provider of your choice. If you want your customers to buy from you online then ecommerce functionality should be well-integrated and easy to use.

For more things to consider when choosing a CMS, check out Paul Boag's article for Smashing Magazine.

Step 2: Go open source, if you can

Open source software is software that is typically made freely available for others to build upon and use as they wish. There is normally no license or monthly rental fees to be paid which means that, given identical budgets, more time and money can be spent on customising the end product to your needs. In terms of CMSes, the main open source players include (but are by no means limited to!) WordPress, Joomla and Drupal. Our preferred CMS is Drupal, although sometimes we use open source frameworks like Symfony to build a custom CMS from scratch. With this in mind, here's why we think open source is the obvious choice:

  • Open source CMSes are typically built and maintained by a community of developers; some may be sponsored by larger companies, while others will be volunteers. This can give you a large pool of developers to call upon to build, improve or fix your site as needed. Proprietary CMSes, on the other hand, are typically developed by a single company with little outside contributions, so there will probably be less outside help available as a result.
  • Open source CMSes can be extended and customised with a wide range of modules (aka plugins, add-ons, extensions) in order to shape them to your needs. Wordpress is a blogging platform by default, but thanks to tens of thousands of (mostly free) available plugins you can extend it to add forums, ecommerce, webforms and much more. Likewise, Drupal allows you to choose from thousands of community-developed modules to build a site with the features you need. Proprietary CMSes often have optional modules as well, but there's likely to be far fewer of them on offer, and they probably won't be freely available.
  • Open source CMSes don't tie you to a specific provider. While proprietary CMSes are often maintained by a single company and/or a small reseller market, open source CMSes can be worked on by any agency or freelancer with the appropriate skills and experience. Numiko can (and does) work with Drupal sites that have been built by other suppliers, and while there might be some initial code rewriting needed it's certainly better than starting from scratch! If worst comes to worst, open source CMSes allow you to export your content in a useful format; this is not always the case with a proprietary CMS.

An open source CMS isn't the right solution for everyone, though. If you work in a niche industry and your needs are fairly predictable, you can save on upfront costs by choosing an off-the-shelf solution that you rent or lease from the provider. For a more detailed comparison between open source and proprietary CMSes, we recommend these great articles by Cypress North and NetXtra.

Step 3: Research your competitors

A great way to find out what CMS is best for you is to find out what other organisations in your industry are using. Ideally, you should speak informally with industry contacts to find out what CMS they chose, why they chose it and what it's like to use. Here's some key questions to ask:

  • How easy is the CMS to use? Is it easy for them to add and edit content? 
  • How flexible is the CMS? Does it allow them to do what they want, or are they held back by arbitrary limitations?
  • How much does it cost to maintain? All CMSes will require some level of regular maintenance such as updates and security fixes. With a proprietary CMS this may be part of the existing license fee, but for open source CMSes it will be an additional, sometimes hidden, cost.

Talking to your industry colleagues might not always be possible, so here's some alternative things to try:

  • Use tools like Guess, WhatCMS, AppSpector or Built With to find out what CMS is powering a specific site. None of these tools detect every CMS, so you might have to use more than one of them to get a clear answer.
  • Explore several competitor sites that are using the same CMS to look for common issues such as slow loading times or poor presentation of content. If you encounter them on more than one site it might be an indication that the CMS is the underlying culprit.
  • Look for blog posts or reviews from people in your industry to find out what they think of their CMSes. Some industries are more talkative than others, so your mileage may vary.

Of course, you shouldn't just choose a CMS based on what others in your industry are using; you might be able to gain a competitive edge by choosing a better alternative.

Step 4: Talk to the professionals

If you reach this stage you should have a good idea of what your requirements are and some potential CMSes to investigate further. It might, therefore, be a good time to start talking to some agencies or freelancers. Some will have preferred CMSes that they work with, while others will be more open-minded. Some things to keep in mind:

  • Make your requirements crystal clear. The more detail you give, the more accurate their recommendation will be.
  • Don't be afraid to approach agencies/freelancers that specialise in a specific CMS. Any web professional worth their salt will have the honesty to admit when they're not the right people to do the job.
  • It's not just about the CMS and its features; the implementation of a CMS is just as important in terms of the end result. If you can, ask to speak to existing clients about how their CMS was implemented and what it's like to use.
  • Speak to as many people as possible before you make a decision. As with any business decision, the more you know the better.

Additional Reading

I hope that this post has given you a good idea of how to go about choosing a CMS. Before you finish, here's a few more articles we recommend: