Creating digital products is great – the possibilities of modern web offer nearly unlimited power to connect with customers. But for me as a specialist working in the industry both as a copywriter and software developer it was always tough to manage digital content in a proper way. There are many solutions available on the market, but the facts are indisputable – Content Management Systems were always the black sheep of the digital products family. Mostly because they were connecting two worlds – content creation (editors with no programming skills) and website code. But now a new cool kid has appeared: the headless CMS.
It seems like this term is self-explanatory. It’s a piece of software that allows you to create, manage, remove, and modify all of your website’s content. It allows you to add multiple editors so that they can work as a team, can create drafts and previews of new content and, what’s probably most important, all of that is done without even touching the code of the website. In other words, a CMS is a solution that allows non-technical people to change the look and content of a page without needing to learn programming skills.
You probably are familiar with some of the most popular solutions available on the market – Wordpress, Joomla, Drupal. These are classic CMSs in which you create your content, manage the pages visible on your website, and handle plugins that allow you to – for example – integrate social media with your page. The versatility of these platforms is for sure one of their biggest advantages – you can start from a simple blog, but you can end up with a complex e-commerce solution with payments, coupons, client’s accounts etc.
There’s also a chance that you had contact with some custom CMS solutions, developed for a specific need. Very often it’s a smarter solution, because despite the longer development time (because you need to create that CMS first), it will be lighter, easier to manage, and it will better suit your product.
Well, these older CMS solutions have some major drawbacks – and let’s be honest, it’s natural that a tool that has been around for about 15 years may become a little rusty. First of all, when you’re dealing with solutions like Wordpress (it’s the most popular one, so we’ll stick to this example), you need to manage plugins. Doesn’t seem like a big deal, right? It probably isn't if you install two or three of them. But big commercial projects based on Wordpress have dozens of plugins that require maintenance, setup etc. It might give you some overhead, so choose wisely.
On the other hand – Wordpress isn’t the sharpest tool in the shed in terms of performance. Of course it enables you to install some plugins to manage asset loading and optimize some features, but still – it’s not even close to what modern static site generators give you.
And from the developer perspective, such ready-to-use CMS solutions have some major issues with scalability. You can only create pages, but you can’t create reusable components or layouts. It all comes down to creating new page, adding some content, and publishing it on your website. But nowadays we use smartphones, smartwatches, LED screens, IOT devices to promote our brands, so why would we use a CMS for our website only? There’s a better way.
There’s that new cool kid called Headless CMS – but many people wonder what it is. And why on earth is it headless?! Well, it turns out that the presentation layer (all of the visual aspects related to the webpage) is described as a „head” in this metaphor. Something that was always tightly bound with the CMS, but was important only for the final user, not for the editor. This new headless approach tries to detach the frontend (how it looks and works) from the content, so that the CMS will serve pure content with no visual rules attached to it.
In this scenario it is the responsibility of a frontend developer to create an adaptable, modular frontend for the website, so it will adjust to the content it receives from the CMS. Thanks to that, the whole architecture is much easier to scale, because there are no single-purpose plugins or pages – there are many pieces of content that can be served in many different ways that fit the current needs. That’s why a headless CMS allows you to not only serve content on the website, but also to other devices, without fear of breaking something because of compatibility issues.
Creating content in a headless CMS is a breeze compared to older solutions. You should know that developers working on the frontend part of your product will prepare a scaffold for all the content you’ll create in the future. Therefore, you only have to choose the content type you want to add, without needing to adjust some complicated settings. It’s even easier than adding content of Wordpress or Joomla, because you can add special validation to fields that prevents you from breaking something. Also – you can copy, reuse, and create relations between objects, so that you can easily create a more advanced structure.
It turns out that headless CMSs are really versatile. You can create blogs, product pages, landing pages, complex company websites with many subpages or even an e-commerce website! Actually, there’s nothing stopping you, since a headless CMS is simply a repository for your content – it doesn’t impose anything. Also – it doesn’t matter if your frontend is written in React, Vue, Angular or any other technology, because it only consumes the data provided by CMS. There’s no other connection between them, which makes this solution frontend-agnostic.
Many global brands are already using this solution for their products – Nike, Spotify, Heineken, The British Museum. Seems like great company, right?
Right now we have two options – SaaS solutions and self-hosted open source software. As far as SaaS (Software As A Service) solutions are concerned, we can pick from many competing platforms that offer a variety of options and pricing plans from 49$ to 5000$ a month. The price depends on the scale of the project, the number of translations in the project, and many development improvements that allow you to deliver products faster and manage them in a more effective manner. The most popular SaaS headless CMS are Contentful, GraphCMS, and Prismic.io. On the other hand, we have free, open-source self-hosted solutions that give us 100% power over the code of the CMS, so you can customize some features if you really need it. But on the other hand it might be perceived as a disadvantage, because you can’t count on any customer/technical support and you need to take care of hosting.
Web development is a complex topic and very often there’s no universal solution to all of the problems. You should always choose the right tool for the job – and if you struggle with the decision you can always ask for help.
A headless CMS, like every other solution, has its drawbacks and one of the main cons is that you always need a developer’s help. Since a headless CMS only serves pure content, you’ll need to create a frontend that understands that content and knows how to adapt so that everything will be displayed correctly. This is the most important part that distinguishes it from CMSes like Wordpress, which you could set up yourself (but not necessarily develop, because it still requires coding skills).
Also, a headless CMS gives you more freedom when it comes to creating the structure of the content, which is also its biggest advantage. But if your development team has no experience with it, then it’s easy to make mistakes and bad decisions which will cause trouble when the project scales. So make sure you always choose a good, experienced team to create your headless CMS solution.
It definitely is, and it will shape the emerging trends in following years. Centralization of the content displayed on many devices and throughout many platforms allows brands to manage them in a smarter and faster way. It was always a struggle to handle multiple sources of content and a headless CMS seems to be the answer.
There are many ways the headless CMS trend might go in the future, but I guess that in 2-3 years we will see more specialized platforms based on this paradigm. For now, every headless CMS service is comparable – whether it’s a paid solution like Contentful or GraphCMS, or a free self-hosted one like Directus or Strapi.io. Some of them offer more fancy and modern options like a GraphQL API, but in general they are very similar. In my opinion, in the future we can expect headless CMS platforms that specialize in e-commerce, blogs, maybe some of them will offer some CRM integrations. But of course it’s always hard to predict the future.
So why not consider “decapitating” your CMS today?