Recently one of our clients, oneworld, asked Verndale to think outside the box around where to manage the content of their new website. They had considered larger Digital Experience Platforms (DXP) such as Sitecore and Episerver, but felt that those platforms weren't for them. Such features as content personalization, robust engagement plans and email campaigns and machine learning, all built in, were something that sounded interesting, but they knew their business well and knew that they wouldn't be able to leverage any of it.
That said, they did have a beautiful new design for a rich web experience that would bring their new brand to life. They also had plenty of content to manage, eventually in multiple languages, as well as media such as imagery and documents. There were key MVP integrations for launch, such as Mailchimp for Email Campaigns and Flight/Lounge searches. Down the road, content for one or more additional sites would need to be supported as well. They wanted simplicity and speed. Their own internal technical evangelists had an appreciation for smart technical decisions and flexibility. Last but not least, we all know how quickly front-end development technology changes. A platform that not only supported that with a headless option, but also encouraged it, was something we all found very appealing.
The idea of WordPress was floated, but we knew that it wasn't a good forward-thinking strategy. WordPress is a popular tool for creating websites, because people who need a website can use it without knowing how to design or build a website. But that is basically the target audience. It only makes sense if you are going to use the out-of-the-box components without much care for design, primarily for blog and news sites via rich text blocks. The content architecture is not flexible and it is not built with the purpose to feed content into channels other than its own front-end. There are lots of community-contributed plugins, but it is like the wild west out there, with no clear way of knowing what will be compatible, reliable, etc.
By choosing WordPress, oneworld would have essentially hit their experience ceiling, reached the end of their journey before they'd even begun! And make no mistake, everyone has a journey, even if it is a simpler one. If you have a design and you have some solid developers on hand, the WordPress option shouldn't really be on the table. It is simply not a CMS.
There was a relatively new player in the CMS world that had come to our attention and we decided to explore it further: Contentful. In November of 2018, it made its debut in the Forrester Wave Report, leapfrogging many long-standing CMS's on the Strategy axis, resulting in a Strong Strategy rating.
Contentful calls itself a Content Infrastructure and it is the very definition of a headless platform. It is completely agnostic to the channel, device, or technology used to serve up the content that is managed within it. That said, it acknowledges and enables the myriad of various approaches for connecting to it. The interface for configuring, architecting and entering the content is hosted by Contentful in the cloud and is SaaS, which means that as they update their interface and management tools, those changes automatically go into effect for every client on the platform. It is simple, lightweight, and easy to use, for content authors, content architects, and developers alike.
The beauty of Contentful is that unlike the monolithic platforms which are now trying to backdoor into 'simple' by providing APIs, headless services, and new licensing structures while still staying monolithic, Contentful was conceived as headless and API-driven, to serve a single purpose as a content hub.
We were able to stand up a simple proof of concept to walk through the oneworld content authors in a mere 1-2 hours. It didn't take much more than that to convince them this was the solution for them.
For content authors and architects, the simplicity is wonderful. You essentially have five sections of management:
- Space/Project settings
- Content model definitions
- Content itself (instances of various content models)
- Apps (currently in beta)
The space settings include locales (regions/language), user administration, roles/permissions, environments (CM/CD, prod, staging, etc), and API/webhook information.
The number of content models you can add is based on the pricing tier you select, and you can add up to 50 fields to a content model of field types such as rich text, text, number, date/time, location (lat/long), media, boolean, json object, and reference.
The content section is literally just a listing of all records of added content, as a big single list. Sounds unwieldy? It's actually not, because the tool provides the ability to search on content type and any other fields and then save the search as a view that can be used to filter the list later, which is so incredibly flexible. Have you enabled multiple languages? If so, then on each content item the fields will output for each language. Your standard CMS publishing, workflow, and versioning capabilities also exist. The media section works the same way, except this is where all of the images, files, etc live.
The pricing is based on a few different metrics:
- Number of users (anyone who needs to log into the administration interface)
- Number of roles around which permissioning applies
- Number of locales, which essentially means languages
- Number of content models/types
- Number of content records, this also includes media (which could add up quickly)
Smaller to mid-sized sites could get by at under $500/year. If you go up to around 50 content types or 50 thousand records, then you are looking at around $10,000/year, which is still quite reasonable when compared with DXP platforms. Very large implementations can have enterprise pricing applied.
As for our developers, they loved it! They were able to decide what method and programming language with which to pull out the content and build the website itself. Contentful provides a wealth of documentation, tutorials and SDKs to work with:
- IOS and Swift
- Ruby on Rails
Our .NET developers jumped at the chance to use .NET Core here, since it is not yet fully supported by the all-inclusive platforms we typically are implementing. And that is one of the key selling points of using Contentful: true freedom for your developers to work the way that they want. They don't need to wait until the larger integrated platforms 'catch up' to the cutting edge technology. Our front-end developers were able to work in a more integrated fashion with our back-end team, making for a far more agile environment. Every single person involved in developing the application expressed what fun they had with building it. As a manager, there is no better sentiment to hear!
Now just because Contentful is playing the content hub role in your MarTech stack, instead of the single massive platform to rule them all, does not mean that you have an immature or weak digital strategy. Contentful has several key partnerships and integrations that allow you to still take advantage of marketing automation and email campaigns (Marketo, Mailchimp), personalization and a/b testing (Optimizely), customer engagement and experience data (Teelium and FullStory), search as a service (Algolia), etc. Additionally, there are opportunities to add your own integrations.
oneworld may not be a one-off situation either. We have had conversations with other organizations around bringing in Contentful, for similar reasons. And likely there will be more. This doesn't mean the end of the DXP platforms, it just means that organizations are being smarter about choosing technology with a practical mind. If your organization is ready to push the boundaries of personalization, email marketing, or massive amounts of data on which machine learning can be useful to the customer experience, then there is an excellent reason to go with Sitecore or Episerver. But if you are looking to keep it lean, simple, and flexible when you manage content, then Contentful could be the right choice for you. Either way, contact us, we are here to help you decide!
No model set
at Glass.Mapper.Sc.GlassHtml.MakeEditable[T](Expression`1 field, Expression`1 standardOutput, T model, Object parameters, Context context, Database database, TextWriter writer) in c:\TeamCity\buildAgent\work\8567e2ba106d3992\Source\Glass.Mapper.Sc\GlassHtml.cs:line 589