We use cookies to improve your experience on this website.
You can always change the settings in your browser if you want to.
February 10, 2020
Content Management Systems (CMSs) come in all shapes and forms, and it can be hard for businesses to know which one to choose. To help you navigate the CMS jungle, we will compare and evaluate a few of our favourite solutions. Get your mosquito repellent and binoculars out, because we are going to explore the deepest, darkest corners of content management tools.
Content Management Systems (CMSs) get a lot of attention nowadays. There are plenty of solutions on the market that allow us to create and manage digital content without the need for programming skills. CMSs come in all shapes and forms, each with its own set of available features, possible customisation and support options, integration and extension points, and scalability and maturity of the product and the ecosystem.
At NoA Ignite, we have been working with various CMS solutions for more than 15 years. During this time, we have worked with many different CMS platforms, including Episerver (currently Optimizely), Umbraco, Sitefinity, Sitecore, Contentful, and WordPress. All of them have their own strengths and situations where they shine the most. We do however enjoy certain products more than others, because of their maturity, reliability, high customisation options, and the fact that they cover a wide set of customer needs. These products range from relatively small but often highly specialised business cases to large-scale enterprise solutions handling millions of requests per day. These are the tools we recommend to our customers that are looking for a professional CMS solution.
In this article, we will dive deep into the functionality of these platforms: highlight their core features, show their strengths and weaknesses, and give you some hints on the situations where they are most useful. We hope that this summary will help you to find the optimal CMS for your needs.
Before we dive into the actual comparison, let’s take a look at the different types of CMS solutions available these days.
The most common CMSs are the traditional ones, which combine content and presentation. They consist of a back-office UI used by the editors to prepare and manage the website content, as well as a templating engine responsible for rendering the prepared content according to the available templates and displaying it to the end users.
Figure 1. Traditional CMSs
They have everything in one place and the editor can easily choose the required functionalities directly in the tool, edit the content there, and see the result in the same place immediately.
They are great for the most common use cases of building websites. Popular solutions such as WordPress, Joomla and Drupal work exactly like this. A few examples in the .NET world are Episerver (currently Optimizely), Umbraco, Sitefinity and Sitecore.
On the other hand, we have headless CMS platforms. They provide almost the same functionality to create and manage content as traditional CMSs, however they do not usually have any built-in templating or rendering engines, so displaying the content needs to be handled outside of the CMS. This is possible because the content definition, content management operations, and the content itself are made available through an API, so it can easily be consumed by other systems.
Headless CMSs
This approach is suitable when the CMS acts as a source of content for a bigger ecosystem. The content can be presented through a decoupled user interface (a single page application, a mobile app, an IoT device, a digital assistant etc.), consumed by another system or site, or a mix of both.
A headless solution does not only provide the flexibility of selecting the final front-end technology, it is also easier to scale. It is a pragmatic and rational choice for all scenarios without a traditional web UI – it simply does not make sense to invest resources into preparing templates for items that will never be displayed through the CMS.
Examples of headless CMS platforms are Contentful, Prismic and Ghost. It is also worth mentioning that there are some hybrid solutions available, where a traditional CMS can act as a source of content made available programmatically. An example is Episerver Delivery API (currently Optimizely Content Delivery API), which returns content created in a traditional CMS through an API.
We have built CMS-based solutions on most of the platforms mentioned above. We recommend a few of these more than others because of their stability, maturity, developer- and editor-friendliness, and the fact that they cover a wide range of usage scenarios. These platforms are Episerver (currently Optimizely) and Umbraco for traditional websites, and Contentful for headless solutions. Here is a short description of their characteristics and our recommendation about when to use them.
Photo by Philipp Katzenberger on Unsplash
Episerver (currently Optimizely) has been available since 2002. It’s an extremely mature and constantly evolving platform with a huge number of high-quality built-in features (listed in the next section of this article) to support editors and developers in their everyday work.
The CMS is only one part of the platform. The Episerver (currently Optimizely) ecosystem consists of the following products:
Such an ecosystem of products, developed by the same company, combined with professional support and a long-term roadmap, guarantees smooth integrations and convenient usage. In addition, the Episerver (currently Optimizely) platform is one of the most developer-friendly CMSs out there. From a code perspective, it introduces all CMS-related features in a graceful and non-intrusive way, making it possible to write clean and maintainable code with great flexibility.
Read more on Optimizely's website.
Umbraco is an open-source solution with strong community support. It consists of the core platform, which provides crucial CMS functionalities, and a wide set of extensions and plugins created by the community. It is intuitive and easy to use both for developers and editors. It gives full flexibility in terms of selecting the most suitable hosting option – it could be hosted on-premise, in a custom cloud or in the dedicated Umbraco cloud.
Read more on Umbarco’s website.
Contentful is a headless CMS used to create and manage content, accessed programmatically through the available API. Content definition and the actual content can be created and managed manually through the portal or programmatically through the provided RESTful API. This separation between the content model and the content itself gives huge flexibility in terms of the final front-end technology, and allows to focus on the actual model, not its presentation. In contrast to Episerver (currently Optimizely) and Umbraco, Contentful operates in a Saas model (without an option to host on-premise), where the final pricing plan selection is based on the required features and the actual size of the site.
Read more on Contentful’s website.
Below is a detailed comparison of Episerver (currently Optimizely), Umbraco and Contentful features. We hope it will help you to compare and select the best solution for your project.
Episerver (currently Optimizely) | Umbraco | Contentful | |
---|---|---|---|
Type | Traditional CMS | Traditional CMS | Headless CMS |
Features | |||
Custom content types |
![]() Managed fully from the code (and the admin UI if needed). In Episerver (currently Optimizely) everything is treated as content. There are 3 general content categories: pages, blocks (reusable modules to be embedded within pages) and media. It is possible to create custom content type in one of the categories above with properties of predefined or custom types. |
![]() Managed from the editorial UI, and the corresponding code is generated afterwards. An additional plugin is required to synchronise models between environments. Possible to create own content or media types. There is also support for blocks (named element types) that could be used in a similar way as Episerver (currently Optimizely) blocks. |
![]() Managed from the portal or through the API. Managed from the portal or through the API. Possible to create own content types with properties of predefined types, or JSON-based custom types. |
Content organisation |
Page content is organized in the tree hierarchy. Blocks and media are kept separately, grouped in folders. Blocks and media share the same folder structure. |
Content is always organized in the tree hierarchy, and can be displayed in the form of a tree or a list view (which could be viewed as a list or as a grid with customized columns). Media are kept separately, grouped in folders. |
Content is grouped by type, without any additional hierarchy. Media are also grouped by types. For both content and media, it is possible to create views with a subset of items that match the specified criteria. |
Content approval |
![]() Extended content approval available, possible to create an entire chain of approvers and customize the flow fully. |
![]() There is a dedicated plugin for setting an approval flow. |
![]() Available in Enterprise version only. It is possible to create and assign tasks that prevent content from being published if not marked as complete. |
User and role management |
![]() |
![]() |
![]() |
Content personalization |
![]() Advanced options available to personalise content through visitor groups (defined based on the selected personalisation criteria), recommendations (for content, products, emails and search results), with dedicated UI for viewing, filtering and analysing visitor profiles. |
![]() A dedicated plugin available to personalise content for different groups of visitors (also defined based on the personalisation criteria). |
![]() ![]() There is no built-in support available, however it is possible to use an existing Contentful app to integrate with Optimizely, which is a platform supporting experiments with content and its personalisation. |
Responsiveness support |
![]() Display resolution feature to quickly check how the content will look on different screen sizes. |
![]() Preview mode to check how the content looks in different screen sizes. |
No UI support available. |
On-page / inline editing |
![]() Very convenient and editor-friendly. Support for preview mode allows full navigation through the content. Content, forms, and survey creation with drag & drop. |
![]() Only properties view available. Preview mode available separately and without option to navigate through the content. |
No UI support available. |
Multilanguage support |
![]() |
![]() Pro language support finally available in Umbraco 8.0! |
![]() |
Built-in asset management |
![]() Versioned asset management available. |
![]() Versioned asset management available. |
![]() Versioned asset management available. |
Built-in search engine |
![]() Episerver Find (currently Optimizely Search & Navigation) built on Elasticsearch. |
![]() Examine built on Lucene. |
![]() Filter API to build relational queries. |
Integrations | |||
Dedicated e-commerce solution |
![]() Episerver Commerce (currently Optimizely Commerce) |
![]() |
![]() |
Available e-commerce integrations |
![]() Salesforce, Magento, Shopware, OXID |
![]() Salesforce, Magento, Shopware, OXID |
![]() Shopify, Commerce Layer Thanks to the API-first approach, integrations are fairly straightforward. |
Existing integrations |
Microsoft Dynamics, Salesforce, Sharepoint, inRiver PIM, Bynder DAM, and others. List available here: https://www.optimizely.com/apps/ |
Salesforce, SugarCRM, Struct PIM, QBank DAM, and others. |
Bynder DAM, Dropbox, and others. |
Other | |||
Hosting |
Episerver Digital Experience Cloud (currently Optimizely Digital Experience Platform) as a strongly preferred option. |
All options available: on-premise, own cloud subscription, Umbraco Cloud. |
In the Contentful cloud. No option to host on-premise. |
Cloud |
Platform as a Service solution called Episerver Digital Experience Cloud (DXC) (currently Optimizely Digital Experience Platform). |
Platform as a Service solution called Umbraco Cloud available. |
Software as a Service available in the subscription model only. |
Support |
Up to 24/7 based on customer agreements |
24/7 support in Umbraco Cloud Enterprise option.
24h response time in Umbraco Cloud Professional. |
Support during business hours for regular plans. |
Monitoring |
24/7 monitoring in Episerver DXC (currently Optimizely Digital Experience Platform). |
24/7 monitoring in Umbraco Cloud. |
24/7 monitoring available in enterprise plans. |
GDPR support |
![]() |
![]() |
![]() |
License cost |
Each license is calculated individually based on the total number of page views across all environments. |
Free if hosted on your own. |
3 price levels available: micro space for several dozen dollars, large space for several hundred dollars, and enterprise-grade spaces calculated individually. |
Summary | |||
Feature-rich |
![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() ![]() |
Editor-friendly |
![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() ![]() |
Developer-friendly |
![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() ![]() |
Support |
![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() ![]() |
Scalability |
![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() ![]() |
Cost |
![]() ![]() ![]() ![]() ![]() |
![]() |
![]() ![]() |
Things we like |
Feature-rich – a lot of handy features for editors and admins. |
Simple and intuitive to use. |
Great programmatic API and micro-services ready architecture. |
Things we don’t like |
Pricey. |
Models created though back-office and synchronized with the code. |
Managing big amount of content might get difficult. |
Great fit for… |
Traditional websites of medium or enterprise scale, with a requirement to be easily adapted to the growing needs. |
Traditional websites of small or medium size, or for personal use where basic usage scenarios apply. |
As a source of content to be consumed by other systems. |
That’s it! We hope that you found the above information useful and that it helps you to understand different CMSs better, and hopefully decide which CMS to use. If you have any questions or if you would like to consult with us on the topic of CMSs, you can reach us at business@makingwaves.pl or at the phone number: +48 664 769 486.
Editor: Anja Wedberg
Author
Paweł Strąg
Paweł is a software professional with over 14 years of experience in development, and over 6 years in Microsoft technologies. He is currently involved in business intelligence and big data projects.
Contact Paweł: pawel.strag@noaignite.com
More blog posts for you