What is a CMS?

CMS stands for Content Management System and is software that is used to create and modify content on a website. Typically, a CMS serves more than one user in a joint collaborative environment, where each user can have access to all or some of the essential functions to create, read, update and delete (CRUD) content.

A CMS will in most cases work as a web content management system (also called WCM or WCMS), which means it is designed to manage content on websites. This means you can control all your web based content from this system. That includes text, graphics, video and audio, which you control through your CMS and publish to your website.




What is the difference between a CMS and a WCM?

CMS (Content Management System) and WCM (Web Content Management) are often used interchangeably and today they are almost the same thing. The difference between a CMS and a WCM is the fact that a WCM is a type of CMS that only handles web content. The core functionality is the same - they are used to create and manage your content - but a WCM is specifically used for managing and creating content for the web. This is typically content for websites, but can also be content for apps, IoT devices and so on.

A CMS in itself does not necessarily have to be a WCM, since it can also be used to manage content that is not for the web. A WCM on the other hand is always a CMS.

Today you will have a hard time finding a CMS that does not also work as a WCM, so the difference between the two has blurred in recent years and is mostly a matter of which label the creators choose to use.


Features of a CMS

A web CMS has two major components: a content management application (CMA) and a content delivery application (CDA). The division of these two components is the main feature of a CMS and the reason it is so popular worldwide for creating websites. 


Content management application

The content management application is the frontend user interface of a CMS’ backend/backoffice. This is the interface where a user can login and create, edit, update or publish content without having to do any coding or programming. This effectively separates the codebase of the website or application from the content management, so content can be updated without the need of a developer.

content management application


Content delivery application

The content delivery application is the “true” backend of the CMS, which enables the content to actually be updated on the website. The CDA contains all the code and logic needed to transform the content provided in the CMA into what eventually becomes visible on a website to the end user.

This is typically done through the use of various document types such as templates and stylesheets.

content delivery application


Besides those two main features, there are several other underlying features that makes a CMS great for creating and maintaining websites. Some of the most important features are:


Integration to other systems

A CMS is not always the only source of data or content on a website. A key feature of a CMS is its extensibility, which makes it possible to build or add anything to it through the use of APIs or other features that lets you integrate with other systems. Not all content management systems allow you to integrate with third party tools. Proprietary CMS' often limit integrations to be able to protect and manage the source code, while open source CMS' will typically allow you the freedom to integrate with any tool you want to. Learn more about the different types of CMS' in a later section.



Not all CMS' have a built-in e-commerce feature, but most will instead allow you to add the feature through integrations, extensions or packages. This lets you update your regular content in the same system as your product data. 


Data analytics

With a CMS it is often made easy for you to add data analytics tools to your website, so you can track how your website is performing. Data analytics will often be integrated into the CMS itself, but can also be through external integrations to data analytics tools such as Google Analytics.


User control and governance

Not all users should have the same permissions. That's why a key feature of a CMS is user control, that allows you to add different permission levels for users, so you can divide it into admins, editors and other roles you need for your website. In most cases you'll have the option to define custom user roles as well, so you can tailor user access to fit your needs for security and governance. It is important to have proper user control, so you don't run into security issues or users changing things they shouldn't. A good rule-of-thumb is to only give admin access to users that have deep knowledge of your content management system and its code.


Multilingual support

The web is truly global - and with a CMS that supports a multilingual site you will have a better time updating all of your content in one system. The level of multilingual support varies, but is a key to maintaining and updating sites that are available in more than one language. A key part of this feature is the ability to control your language variants within the same installation and to make management of variants easy to handle.


SEO features

CMS' are built with SEO in mind, so you don't have to worry about not being able to optimize your website for the most popular search engines. SEO features vary greatly, but the most common features are the ability to update meta tags, create sitemaps and set up schema markup. While the most basic features for SEO are often built-in to the CMS, you'll often be able to find external plugins and extensions for more advanced features.

What CMS is used by a website?

What CMS is used by a website?

Have you come across a nice website and would like to know which CMS is used? Then there are ways to find out.

A lot of websites use various content management systems that have distinct signs, that allows you to recognize the system without having access to the backend itself. It's not every website you can do this for though, as some can be hard to detect or simply because the website is built in a home-made system or without any CMS at all.


If you want to check which CMS is being used by a website we give you the 3 most common ways of checking.

Online tools

One of the easiest ways to identify which content management system a website uses is to use an online tool. This method doesn't require you to download or install anything and most out there are free to use. These tools work by having a list of unique traits for various CMS' and then running through any URL you give it to see if it can recognize any of these traits. If it fails it does not mean that a website doesn't use a CMS. It simply means that the tool couldn't recognize it.

Some of the most popular tools out there are Whatcms.org and BuiltWith.com.


Browser extensions

If you want faster and easier access to identifying which CMS is used on a website while you're browsing, then you can use a browser extension. These will give you information right away when you are visiting a website. Often this information is accompanied by other information about the website such as which cookies are placed, fonts used on the website and any other software recognized.

One such Chrome Extension is Wappalyzer.


Manually check the source code

The last way to figure out which CMS is used is to manually look at the source code of the website. While it does not always show you directly in the code, you can often find references to it when looking at image paths, plugins/extensions being loaded or other hints in the code.

If you want to use this method, you would have to know exactly what to look for and should only be used if you cannot use any of the 2 methods above.

Pros and cons of a CMS

Deciding to go with a CMS over coding it from scratch has its advantages and disadvantages. And even though it ultimately depends on what you wish to accomplish, we have made our list of pros and cons below.

A friendly disclaimer: while we tried our best not to be, we’re obviously a bit biased in this part.


Pros and cons of a CMS

Pros of using a Content Management System

You can get started faster

One of the advantages of choosing a CMS is how fast you can get started with a new project - whether that is a website or something else. When working with a CMS a lot of the needed features and functionality are already developed, which enables you to get started much faster than when building a website from scratch.

Most web content management systems will also include various starter kits, templates or skins that help you get started within minutes or hours instead of days or weeks.


You can separate content and code

As explained earlier in this article, the division of the two components of a CMS, also enables you to keep the content and the code separate from each other. So a user wishing to make changes to the content on your website does not need deep knowledge of HTML, CSS or other coding languages.

That means that even non-tech users can create amazing new pages on your website - without fiddling with the code.


Changing and updating is faster

Due to the separation mentioned in the last advantage, it is also faster to change and update content, design or code on your website.

Content editors will not have to involve a developer whenever they have to change a picture on the website. This makes for a smoother and faster experience for content editors.

For developers it is also faster to make changes, since a lot of functionality is built into the CMS.


You will have version control

Version control (also known as revision control or source control) enables a user to see previous versions of a piece of content and to rollback changes if needed.

This is especially useful when working with teams consisting of multiple users collaborating on a project. Version control will keep previous versions of content available for rollback and will also include information such as which changes were made and which user made them.


You can control and limit user access

Working in a CMS often includes several users or teams. The knowledge, skills or purpose of these users might not be the same though. Limiting user access in a CMS is a very useful feature as it allows you to control who can access which parts of the website and which actions they are allowed to do.

Typically this will be divided to admins and users, but can in most cases be divided even further. This will enable you to limit access, so a user can access what they need to fulfill their role. This also helps minimizing accidental errors.


Support, help and resources available

Since content management systems are very popular around the world, you will also find a lot of support, help and resources available. The amount - and quality - of these resources depends on the amount of users for the CMS, but the most popular systems have a lot of resources readily available online. At the same time it makes getting help from developers or designers easier as they will most likely have experience working in your system.

If you are using a proprietary CMS you might also be able to get official support or help from the company developing the system.



Cons of using a Content Management System

Limited functionality and flexibility

The most popular content management systems out there are built to fit as many people as possible. This means that most basic functionality that most need to create a website is included. But if you have specific needs or requirements for your website, it might not be possible in a CMS.

This can especially be an issue with proprietary CMS’ where the flexibility in what you can change or alter is limited. This is somewhat solved by Open Source CMS’, where you have the ability to rewrite the codebase.

If your needs are very specific and your chosen CMS does not have a fitting solution to those needs, it might require a lot of modifications and rewriting for you to get what you need. In those situations it might be more beneficial to not use a CMS and instead make it from scratch.


Potentially higher security risk

By using a Content Management System you might be more liable to attacks from hackers. The most popular CMS' are used by thousands of people worldwide, so if malicious hackers find a security flaw they can exploit that on many people using the system. For that reason the more users a platform has, the more hackers there are trying to break it.

If you choose an open source CMS, then you should take extra precautions such as two factor authentication and minimizing the use of (insecure) external extensions, packages or plugins. Always check what the extension does, which files it will alter and also who the creators are, so you can minimize the risk.


You might have to compromise on the design

Most content management systems come with design templates, skins or starter kits to get you started with the frontend design of your website. But even though you can adjust most elements on the website, sometimes you might have to compromise. This can be due to how a CMS is built and some elements that cannot easily be changed to what your web designer imagined.

As with the previous con this is partially solved by using an Open Source CMS, where you have the possibility to make the necessary changes as the source code itself is free for you to change.

Before starting a new project it is always a good idea to research the possibilities and limitations when it comes to making design changes. If there are too many limitations it might mean that you cannot get the design you want. Then you either have to rethink and change the design, see if you can find a different CMS or design and build your website without a CMS (for example by using a Headless CMS).


Different types of content management systems

All content management systems are not the same.

The first key difference between them is the framework and coding language used. When it comes to web development, the two most commonly used are ASP.NET and PHP. Which one to choose depends mostly on the developers who are building the website. For an editor, marketer and even end-user the difference between the two is minimal. The difference is in the code. If you have heavy dependencies on system integrations to other systems, these will also have a big impact on the framework and language you should choose.

Another key difference between content management systems are about the source code: is it open or closed? The two types are either called Open Source or Proprietary. 


Open Source CMS vs. Proprietary CMS

The key difference between an Open Source CMS and a Proprietary CMS is who can manage the source code and whether or not it is open for you to edit.

Open source is developed using collaborative resources and maintained by a global community of developers. Anyone can edit the code and contribute to it. If you have specific needs or want to build out new functions specifically for your project, then open source allows you to do that.

The nature of open source also means that a lot of developers around the world will have experience working with the CMS.

A proprietary CMS is the opposite of open source. It is built and maintained by a single company, which means that you do not have the possibility to change or contribute to the source code.


Umbraco CMS - best of both worlds

Umbraco is an Open Source CMS, which is also being maintained by a company - we call it Umbraco HQ.

This combination gives you the unique advantages of an Open Source CMS, while having a team of experts ready to both maintain the CMS and support you when necessary.

If you just want to enjoy the advantages of an Open Source CMS, you can download and install Umbraco CMS today for free.  

But Umbraco is so much more than just a CMS - and we have a lot of ways to help you:


What can Umbraco CMS be used for?

Umbraco CMS is highly flexible and scalable, which makes it suitable for both small blogs and major corporations.

There are no limitations as to what Umbraco is capable of digitally. The CMS can, for example, be used to build:

  • Websites
  • Webshops
  • Intranets
  • Headless solutions


The open source nature of Umbraco means that everyone can contribute to making the CMS better. At the moment we have more than 200,000 active community members who, every day, help to improve Umbraco by submitting pull requests.

How to install Umbraco?

If you plan on hosting your Umbraco site yourself, you can download and install the Umbraco CMS here.

Or you could let us take care of everything for you by using Umbraco Cloud. If you’re not sure you’re ready, you are welcome to take a 14 day free Umbraco Cloud trial. You will be up and running in 2 minutes.

Loved by developers, used by thousands around the world!

One of the biggest benefits of using Umbraco is that we have the friendliest Open Source community on this planet. A community that's incredibly pro-active, extremely talented and helpful.

If you get an idea for something you would like to build in Umbraco, chances are that someone has already built it. And if you have a question, are looking for documentation or need friendly advise, go ahead and ask the Umbraco community on Our.

Number of active installs
Number of active members in the community
Known free Umbraco packages available

Want to be updated on everything Umbraco?

Sign up for the Umbraco newsletter and get the latest news and special offers sent directly to your inbox