Every now and then I’m in a meeting where to my surprise, our prospective client is looking for a website built specifically with a Headless CMS solution. Very few reasons why are valid. Most of the time I get a sense that they’re using it as a buzzword of some sort, the way people throw around “Artificial Intelligence” “Machine Learning” “Bitcoin” and feel like they need to adapt it to their business “just because."
With this post, I hope to share some insights into what a Traditional vs Headless CMS solution is and how we go about determining the best type of solution for our clients.
What is a traditional CMS?
This is the solution most of us have heard of before. An architecture which tightly links the front end to the back end within a single system.
Within a traditional CMS, users can manage their contents through various tools and editors, which is then saved to the database / back end of the website. The CMS then displays the necessary information which is delivered to the front-end of the system.
A few examples of traditional CMS include WordPress, Joomla, and Drupal to name a few.
Pros of a traditional CMS
- Fast and simple to get setup and going
- Customize the front end easily
- Ideal for websites and well adopted platforms such as WordPress and Drupal.
Cons of a traditional CMS
- Limited delivery channel – meaning you can only have a website. Not a Web app, a smartwatch app etc.
- Limited framework – meaning you do not have the flexibility to choose whichever front-end framework or the language your developers will like to use.
- Limited content types / API integrations based on the CMS being used.
What is a Headless CMS?
So now that we have an understanding of a traditional CMS, we can get a basic idea that a CMS consists of 2 parts. A back end (all the assets and contents that becomes the database for your website) and a front end (the part which takes the database and renders it to the end-user).
A headless solution basically takes away the front-end part of the CMS; making it fully front end agnostic. This means instead of an actual website – you’re left with a raw content-only data source.
What does this mean?
It means that developers have the flexibility to create various channels (websites and web apps) to display all the content that is served by the headless CMS on it’s own system.
An example of a headless CMS can be Magnolia, Contentful, Contentstack, and even WordPress (utilizing WP Rest API).
Pros of a headless CMS
- Rapid content delivery across various content channels (whichever the CMS endpoint API is being rendered in).
- Complete control over how and where your content appears.
- Flexibility for developers to use any front-end framework of choice.
Cons of a headless CMS
- Not easy to preview the changes within the content channels
- Reliant on additional technology to display the data (The head)
- Difficult to control the look and feel of the front-end without a developer
Now that we have a good idea of what a traditional CMS is vs a headless CMS, let’s dive deeper into how we go about determining which solution is best suitable for our clients based on their specific needs and requirements.
How do we determine the best solution for our clients?
It really boils down to the type of technologies and channels the client is looking to serve their content. Some questions we ask include:
- Do they want to have a content-based website?
- Do they have an existing application or a product?
- Do they have a mobile application?
- Is managing content across multiple networks of applications and systems key for the content managers?
- Do they have developers in-house?
To wrap this up
Headless CMS is a no-brainer if a client is looking to deliver content across various channels with a fully customized and flexible content-based CMS. It also allows our developers to build the front-end with technologies such as ReactJS and VueJS.
If a client is looking to create a standalone website that offers a platform to serve content that’s customizable in not only the content, but the look and feel, then Traditional CMS is the way to go to avoid overcomplicating things.
Lately, we’ve been exploring Decoupled CMS, and in my opinion – I think it’ll take over both traditional and headless CMS.
But that’s for another day!