Building a modern marketing stack at Optimizely: content management

Blog optimizely 01

Optimizely recently launched a refreshed visual design of the marketing website that showcases our new brand identity across several key areas of the site. While most people notice the visual changes to the website, in this blog post series, I want to focus on the systems redesign we have undergone for the past two years to build experimentation into the DNA of our marketing stack. After all, the #1 question I am asked is how our team uses Optimizely on our own website. It’s actually a pretty interesting story.

Optimizely’s Marketing team has gone through its own transformation over the past two years, with the leadership of a new CMO, growing our team 32%, and launching an entirely new brand identity. We have also gone from a website that only one person could update using markdown files to a lead generation powerhouse that accounted for over 80% of all Optimizely marketing engagements in 2018.

How did we do this? By building a software stack that relies heavily on experimentation and personalization to inform decisions on everything from what software to purchase, to site design and user flow, and even testing parts of our business model.

The stack that we have built at Optimizely helped us go from running just over a dozen experiments in 2016 to over a hundred in 2018. In that same time frame we saw our North America Paid Conversion Rate increase 340% while our cost per acquisition decreased by 75%.

From team of one to lead generation machine

Since Optimizely was founded in 2010, the website has been through a few iterations. Originally it consisted of a simple form requesting your website and a prompt to test our product. It was a simple homepage that worked well for us at the time.

In 2013, we went through a redesign and began using Optimizely to improve our website. But since traffic was relatively low, it was hard to get to statistical significance on many of our experiments. When I took over the website in 2017, after leading Optimizely’s Solutions Architect team, we were in desperate need of a CMS. Every single change that needed to be made to the website had to go through this process:

  • Make your change by editing markdown
  • Create a pull request in Github
  • Wait 10 minutes for the site to build on staging
  • Validate it on staging (make sure it didn’t break anything else)
  • Merge the change with master
  • Wait another 10 minutes for production to build
  • Verify the change on production

It was a painful, slow, manual process that worked for a small team, but we were growing and desperately needed to to allow more people the ability to edit content on the site. Increased efficiency in content pushes would also give us more time to focus on improving our key metrics.

Choosing a CMS

The selection of a CMS is a key decision for any organization. We found that the CMS space was extremely crowded, from large enterprise suites to open source solutions and everything in between. We wanted to be sure we implemented a CMS that fit our current needs, and would be flexible to update over time. We drew up an exhaustive list of desired features to help us in the process. Here’s a checklist of our top requirements:

  • Easy for non-technical users to update the site
  • Granular roles and permissions
  • Version control and backups
  • Programming language agnostic
  • Strong separation of design and data layers
  • Localization out of the box
  • Easy to extend and customize
  • Ability to integrate Optimizely

Contentful was the only CMS that checked all of our boxes. If you are not familiar with Contentful, it is a headless CMS that provides an amazing user interface for non-technical users to update content, create highly flexible content models, and allows you to present content across any channel in any programming language.

One of the big selling points for us was the ability to create UI Extensions, which allow users to customize the user interface outside of simple text entry boxes. This feature allowed us to create extensions to add Audiences, Events and even show results of experiments in Contentful.

ui extension implementation

You can read more about that implementation here and watch a presentation I gave on our migration to Contentful here.

Contentful: a CMS built to scale

The news about Contentful spread internally, and pretty soon other departments started looking into how it could help with their content bottlenecks. In spring of 2017 the Education team came to us and asked if we could help them tap into Contentful to replace their LMS system. While it did take some custom development, we were able to work with a partner to relaunch Optimizely Academy on Contentful in just 3 months. We then launched the maturity model, an interactive diagnostic tool that helps our Customer Success team assess and evaluate customer needs. The maturity model has now been taken by over 900 customers. Then in January 2018, we launched an internal value assessment tool to our Sales organization to showcase the value Optimizely brings to a prospect’s organization.

On top of Marketing’s original need, Contentful has added value to our Education, Customer Success and Sales teams. Because it is so flexible, we are able to centralize much of our content across many different departments. We are now able to start to use data about what our customers are doing across these channels from the first time they come to our site, throughout the sales process, until they become certified in the Academy.

We can leverage that data to provide highly personalized experiences for all levels of experimentation maturity and help our customers become even more successful with our products. And now that we have 37 content creators tinkering with over 1,000 pages, we are able to focus on driving traffic to those pages.

It’s been quite a journey for the Marketing department as Optimizely has grown, and our best-in-class tech stack has put us at an advantage. In next week’s blog post, I’ll talk about our personalization strategy and some of the campaigns that have worked well for us. I’ll also talk about how we use Optimizely extensions to control code quality, allow non-technical users to launch complex personalization campaigns, and how extensions saved us hours in our redesign.

This post was originally posted on Optimizely's blog. Read more here.

Updates in your inbox

Subscribe to receive the most important updates. We send eNewsletters once a month that cover trending topics and feature updates.