You don’t need to own a blog to have a need for content — we create content every day, without even realizing it. So what happens when you need that content? Perhaps you need to make direct use of it, or perhaps someone else needs to repurpose it into something different. How easy would it be for you right now, in your current context, to do just that? Moreover, with the increased amount of new devices released every month, will your content be compatible with them?
To address these problems, I’d like to discuss the concept of Content as a Service, which in a nutshell helps decouple the actual content from the medium in which it is presented. In other words, you write your content once and then publish it everywhere.
In the past few years, this tendency has materialized in the form of microservices and headless content management systems, or CMS (a concept I covered in this article specifically for Wordpress), and in this article, I want to explain in depth what Content as a Service fully entails and why you should consider going this way.
What is Content as a Service?
Without getting too much into the details, Content as a Service is a way to provide raw content (in other words, without the need for a specific human compatible representation, such as HTML) in a way that other systems can make use of it. Content as a Service is not meant for direct human consumption, but rather for other platforms to consume and make use of the content according to their particular needs. This happens usually on the cloud, with a centralized platform which can be globally accessible and provides a standard format for your content.
If we want to get more technical, the concept behind Content as a Service itself (not to be confused with CaaS, which sometimes is referred to as Containers as a Service) is not new.For over a decade we’ve had to deal with this concept, whether we were aware of it or not.
Ask yourself the following question: where is your content now? Maybe you’re not a full content provider, but you have some help pages on your mobile app, or maybe you’re a copywriter saving all your work on Google Drive. Perhaps you’re a Marketing company using different sources of data to help your customers or just a Software company trying to attract traffic through a well written and maintained technical blog. Whatever your situation might be, if you had to think for longer than 10 seconds about where your content lives, that means you’re not correctly managing that content. Here is where the concept of Content as a Service will come in handy. Because that is exactly the need it tries to fulfill, the problem it tries to solve: you’re not just splitting content and presentation, you’re actually splitting content and purpose.
With Content as a Service, you centralize your content into a single repository, where you can manage it, categorize it, make it available to others, search for it, or do whatever you wish with it.
Content is not just text, although we’re all trained to think that way, especially if we’ve dealt with blogs or blogging platforms in the past. But literally anything you can think of that has value to others can be considered content and has the right to be included in this type of platform.
Anything usable for information, including text, video, sound, spreadsheets, binary files, and the meta-data from the preceding elements, qualifies as content. An important rule to remember is that just because it’s not something your senses can consume doesn’t mean it can’t be consumed by another system and therefore, it can still be considered content and should be centralized and managed just like anything else.
A more formal and direct definition of what a Content as a Service platform could include the following:
- Access to the content: This is the easiest one, without it, there is no point to having a system. But there are some extras that need to be there as well, because making the content public is not enough — you need the consumers of said content to get exactly what they want. Here is where a structured format for querying the content comes into play. You need to provide some form of filtering and querying capabilities for consumers to find the content they need.
- A content model: It doesn’t have to be a single one, mind you, but standardizing your content will enable consumers to make intelligent use of it. Otherwise, it’s falls on them to try to understand and get the most out of this resource they need.
- A centralized, global authoring platform: The name says it all, but in case it’s not clear: you need to take care of your content authors as much as your content consumers. They will benefit from having a single (centralized), reliable platform where they can upload their content. From here, you can also make sure they take the necessary steps to make it available to the right audience ( tagging content, managing access rules, and so on).
- Centralized storage: This one goes hand-in-hand with the previous point. Otherwise, what’s the point of having a globally available uploading platform if you’re not going to keep all the content in one (centralized) place too? Given the current state of technology, both the repository and the authoring platforms can reside in the cloud.
- Metadata definitions: Again, the importance of metadata in this type of platforms should not be understated. It helps enrich the content in a way that improves the experience of the consumer, both while searching for it and once they’ve found it and are ready to make use of it.
With all of this being said, the next logical question would be: why would you want to invest time and money in having a Content as a Service platform? Let me elaborate on that.
Motivations: Why Do This?
There are many reasons why you’d want to go through the hurdles of either upgrading your current CMS into one that is based on serving content as a service or installing one where there was nothing before.
The key deciding factor at the end will be your current context. If neither of the reasons I’ll list here match your reality, you might still want to take a deeper look at your current content and what you do with it, to see if you find a reason of your own to make the change anyway.
When you or your company is dealing with multiple sources of content daily, having to manage them all independently might end up being too much. Either you take too much time from your schedule to simply manage the content (let alone use it or author it) or spend too many resources having a team manage a set of independent tools, with the added overhead of getting them to collaborate with each other.
In either case, you’re most likely dealing with one (probably more) of these situations:
- You don’t have a common content format, something you can easily distribute and use.
- You don’t have a centralized way to make the content available for consumers, be they internal or external ones.
- Metadata is just something you read about in the web (if at all) but not something you use everyday to empower your content consumers.
- And a centralized storage is by definition, out of the question, adding extra effort required to move from one source of data to the next.
You could say that this is a textbook case of someone who desperately needs to switch their content management strategies. Without knowing your situation, I feel pretty confident that you would immediately benefit from a change of strategy. A switch into a content-centric approach, at least in the areas where the above is happening, would directly improve your performance. Having a content-first approach here would allow you to think differently about your clients and about what you’re trying to do every day for them.
If this is you, consider moving into a Content as a Service platform as soon as possible.
Limited formats for your content
If your pain point is not about managing your content, but getting your desired reach with it due to a limited amount of formats you’re compatible with, Content as a Service is, again, the perfect solution for your problems.
Many CMSs, such as Wordpress, assume the responsibility for presentation, ensuring that you don’t have to worry about it. That is great, especially if you lack that kind of skill, but at the same time, you’re limited to the number of devices with which Wordpress’ representation of your content is compatible. And while it is true that their pages are quite compatible with both computer and mobile screens, there are many devices where your content is immediately rejected or just not pleasant to be consumed in. For instance, have you ever considered how your Wordpress page would look like in a SmartWatch? What about a VR headset? Or a holographic projection? Granted, that last one doesn’t exist yet, but you must ensure that you’re compatible with the future, especially when new technologies are being developed and released to the public every day. The new foldable phones are starting to hit the public now — have you considered what would happen to your content on those?
You’re limiting your odds of success if you’re thinking that your content needs to be tied to its representation. Your content needs to be an abstract entity, and choosing the way it looks (or to keep it generic, the way it is consumed) needs to be the task of your clients.
Going back to our Wordpress example, a good way to go about it would be to either use their REST API and forget about their webpages, or migrate entirely to a headless CMS such as ButterCMS in order to fully gain their benefits.
Native mobile app needing content
There are different ways to tackle mobile development, especially if you know you’ll need to display content. But again, content comes in many forms, and most traditional CMS available only provide web-compatible formats (such as HTML). In those cases, that format might not be the best fit for your app and would require you to work around that by adding extra support when you shouldn’t need to.
Using a headless CMS or Content as a Service system can simplify your work. Here your options are quite straightforward: you transfer your presentation-less content to your clients’ applications and there, they can choose how to format it and display it to their users. You don’t need to worry about that part when authoring it and managing it.
In conclusion, the main benefit you gain by going with a Content as a Service approach is the flexibility of using your content however you might want now or in the future.
When do you not want to do this?
Finally, as magical and great Content as a Service might sound, this is not a silver bullet for your content management problems. You might find yourself in a context that honestly would not benefit from going with this approach.
Only a single use case for your data
If you have only a single use case for your data, switching to a Content as a Service approach would be the equivalent of using a shotgun to kill a fly. Or to put it in terms that might be closer to home: it’s a perfect case of overengineering.
You don’t need to worry about multiple channels, you don’t need to worry about multiple representations of your data, you just want your content out and used as it is because there is only one thing to do with it.
In this case, having a centralized CMS makes sense. Of course, if your plans for the future include changing this particular context, then by all means start planning for that future.
You need control over the presentation
If this is you, if you need full control over how your content is supposed to look, then a Content as a Service approach may be overkill as well. In the case of articles and blog posts, for instance, your content could be top-notch, but whoever is consuming it might be using a very poorly constructed webpage, where reading it might be difficult or even unpleasant.
If this is a problem for you, having full control over the presentation might be all that you need.
There are two ways you could handle this scenario:
- A headless CMS (or similar Content as a Service approach). With this scenario, you have the benefits of the centralized platform to manage the content but you’d require the extra work of building the presentation layer. This approach would come in handy if said presentation wasn’t standard. If you’re not just publishing your blog posts into a website, then this approach makes sense. But if your presentation is standard enough that other solutions can already take care of it for you, option #2 might make more sense.
- A traditional CMS. This would be a more cost-effective way of solving this problem. You don’t need to worry about building the presentation layer because that comes with the CMS, and you also have all the benefits of a centralized platform for content management.
The content management strategy you should be using is up to you and your current needs.
Content as a Service Use Cases
Based on the above motivations to use or ignore the Content as a Service trend in your projects, here are some classical use cases for this technology:
Mobile apps with a need for content
This is definitely one perfect use case. Mobile apps aren’t necessarily known for being really compatible with web content. Yes, they can render it using some particular components, but that content will visually jump out at you.
Also, if you think about it, having web content available, and not using it for web browsers makes little sense. In these cases where your content is only meant to be rendered in a mobile app, you would benefit greatly from splitting content and representation and allowing your own app to render your content the best possible way.
This is a particular case, since you’re not benefiting from the multi-channel benefit that comes automatically from using a Content as a Service strategy. That being said, you still get benefits from it, and most of the modern CMSs now provide a way to do it, so it wouldn’t be that difficult of a strategy to implement, just make sure you’re using a CMS that is either meant for that (such as ButterCMS) or one that provides the alternative, such as Wordpress.
Now, if instead your problem is that you need your content to reach as many channels as possible, like going for Web, Mobile, SmartWatches, your SmartTV and (why not) your eventual SmartFridge, what you need is a way to distribute that content from a centralized location.
Solving these types of problems is one of the reasons why we have Content as a Service providers. As long as you’re working with one of them, there is nothing extra you should be doing. It’s up to your clients (or content consumers if you will) to decide how to use your content however best suits their needs.
Highly customizable UX
Another use case is allowing your content consumers to customize your content’s presentation however they might want. By serving your content through an API and in a generic format, like JSON, where you have a predefined structure for it, your clients can pick and choose different parts from the content and use them however they need. In fact, this approach would actually allow different consumers to render the exact same piece of content in different ways.
Content Marketing and content analysis
In addition to providing different ways of presenting content and reaching other media, Marketing platforms can take analyze content to understand different things using machine learning and NLP (Natural Language Processing) techniques.
- Sentiment analysis to understand the tone of an article to ensure they transmit the message in the intended way.
- Automated topic generation based on content keywords, helping tag and categorize content automatically.
- Content conversion performance based on reader behavior to understand what works and what doesn’t.
- You can even create virtual assistants and chatbots based on content from articles to understand how to provide extra help to customers based on your knowledge base.
How Does Content as a Service Work?
From a technical point of view, Content as a Service can be considered a pattern, a way of architecting your platform in order to obtain the benefits mentioned above. The actual implementation remains custom, as with any architectural pattern, but if you wanted to have a general overview of how a Content as a Service platform might work, here is a diagram:
The Content Management UI refers to a web application, one that centralizes all content authoring and content management of the platform. Here is where everything content-related happens.
Content is then placed inside a centralized storage, the format for that and the technology used is not relevant at this point, anything that fulfills the intention of correctly storing data is good enough.
Lastly, the content is made available through a technology-agnostic API, meaning your platform shouldn’t care about the technology used to get the content. As long as they can speak with it, they’re fine. Normally, this is done with a REST API, as is usually the industry standard. But given the current trends, we should soon start seeing similar setups using GraphQL.
If you consider the box I named “Content Provider” in the above diagram as a black box, you can think of solutions such as a ButterCMS or headless Wordpress as valid options. With these products, you’d be using their own platform to author the content whilst working on the presentation layer, comprising whatever set of applications you might need (maybe web apps, mobile apps and others). You could, as an alternative, also provide access to the public APIs of these platforms, allowing others to take care of building their own presentation layers and saving you the trouble of working on that.
Content as a Service in the Wild
It isn’t easy to find examples of sites or companies who advertise the use of these platforms, since they are considered part of the base infrastructure or technical stack used to create them. A few who do are:
- Spotify for artists: This side of Spotify allows content creators to upload their content and reach their audience without having to worry about the presentation. As an artist, you’re able to provide the content that other platforms will later consume and get insight into what content gets consumed and in what manner. You’re basically benefiting from all the attributes mentioned before, applied specifically to the music industry.
- Arrive: They handle their blog, team pages and news posts all using a headless CMS.
- For hims: Mainly handle their blog through a headless CMS, allowing them to customize the way they integrate that content into their site.
- Lyft’s blog: They share product updates and all sorts of news about their business through this platform. This is a classic use of a Content as a Service platform: pulling data and creating a blog with it.
- Doorsteps: They have a lot of their articles and content inside a headless CMS. This enables them to improve their SEO ranking (through the articles) and through the search capabilities of the CMS they’re using to search content related to queries done on their site to improve their customer’s experience.
- Google’s training platform claims to use a similar headless CMS setup, allowing them to provide the same content for both Android and iOS devices without the need to duplicate the effort.
- The Container Store uses as well a headless CMS to empower their marketing team to create compelling content without the need of developers formatting it for the right media.
- Instrument uses a headless CMS with a static site generator to create their site, independently from the content authoring process.
Hopefully by this point you have a pretty good idea of what Content as a Service means, how it works, and why, if at all, you should use such a strategy.
Personally, I believe this is the way to go, not just for standard websites and blogs, but for all content in general that could have some sort of value to an audience.
The technology is already in place, and the architectural patterns will allow such systems to scale up without impacting their performance while serving at a global level.
This might not be the only way, but it’s definitely an accessible way of making sure your strategy is future-proof and can handle any new media coming in the future.
And to make things even easier, there are quite a few companies providing this service with bindings to all the common programming languages, making it even easier for you or your developers to integrate with them.
Let us know in the comments if you’ve ever used one of these systems and what your experience has been with them!