EPiServer vs Sitecore – Comparing .NET CMS platforms
From my archive - originally published on 18 March 2012
EPiServer and Sitecore are direct competitors in the middle-tier CMS market and on the surface they appear to do pretty much the same thing. After all, they are both Scandinavian platforms based on .NET that share a similar feature set, offer comparable modules and extensions and are generally used in similar scenarios.
Despite these similarities there are some important differences which should be considered when comparing the two platforms, though you do need to dig quite deep to draw out a useful comparison.
The middle-market scramble towards “platform” status
EPiServer and Sitecore are generally perceived as occupying a similar “middle-tier” position in the web content management market. This is a particularly crowded area where platforms have to work hard to stand out from a crowd that also includes Kentico, Ektron, DotNetNuke and even Sharepoint.
One option is to move upmarket and Sitecore has made recent efforts to establish itself as an “upper-tier” product to rival the likes of Coremedia or Tridion. However, it is unlikely to leave EPiServer behind in the immediate future as a convincing move upmarket will require more than just marketing rhetoric and a revamped pricing structure. You need the code to go with it, and the vast majority of Sitecore’s implementations are still in one or two-server setups.
Another approach to differentiation involves broadening the functional offering beyond web publishing to be seen as “platform” rather than a mere “product”. This is an ill-defined distinction but it broadly implies a desire to offer more comprehensive web experience management.
Both EPiServer and Sitecore have been seeking to branch out from their traditional remit of managing web pages by incorporating services such as analytics, commerce, personalisation, search and customer relationship management. The aim is to position their platforms to the centre of a multi-channel publishing enterprise that supports creating rich, interactive experiences.
This move to experience management requires the integration of a number of disparate technologies and EPiServer and Sitecore have each taken a different approach to meeting this challenge. EPiServer tend to acquire externally-developed products and integrate them into their product line, a recent example being the acquisition of MediaChase for their eCommerce framework. Sitecore, on the other hand, generally develop their platform extensions internally.
EPiServer’s more acquisitive approach can give the platform an incoherent and disjointed feel. Genuine integration requires more than a re-branding and fresh lick of paint. It takes time to integrate separate systems into a coherent whole and this approach does inevitably cause a fair amount of inconsistency across the platform as a whole.
That said, at least EPiServer’s acquired extensions arrive “fully formed” and market-tested having been developed over time by specialist vendors. Close integration isn’t everything and Sitecore’s self-developed modules can seem a little anaemic in places compared with more mature products from specialist vendors. After all, an eCommerce framework is a big undertaking for a CMS vendor.
Licensing and development costs
The platforms' shared market position is reflected in their licensing costs. You can get up and running on each platform for around £10-15k with more complex scenarios coming in at £40k or more. This is considerably cheaper than higher-tier solution such as Tridion where the licensing will be in excess of £100k.
However, as with any CMS implementation, it’s the development time which is by far the largest part of any implementation. The amount of customisation work required for a typical implementation is broadly similar for both platforms as they require similar sized technical teams and development time.
The main cost difference between the two platforms is in the licensing model. EPiServer’s vaguely byzantine model charges by the site while Sitecore charge on a sliding scale based on the number of content editors. This makes EPiServer more cost effective for single-site scenarios with a large body of content editors, which Sitecore may be cheaper where content editing is highly centralised.
Repositories matter. Sometimes.
EPiServer and Sitecore take a very different approach to storing their content. Sitecore employ a split database model, where separate databases are used to hold site metadata, historical content and the current set of published content. EPiServer uses a mixed content repository where page metadata is stored in a database while static files reside in a separate directory structure with a separate API.
This distinction may be irrelevant for a small site running on a single server, but it does start to matter on larger, more complex sites that need to support high loads and provide resilience. This can be where middle-market CMS systems start to suffer in comparison with their more grown-up enterprise cousins which provide for more flexibility over architecture.
EPiServer’s split content repository is cumbersome and inflexible. Sitecore’s approach does lend itself more readily to distributed architectures. It allows for cleaner separation between publishing and editing environments and makes it easier to replicate published content across multiple servers. These arrangements can be achieved with EPiServer, but it depends on relatively precarious mirroring functionality to post updates via web services.
More complex, high-end implementations also demand the integration of external content stores and both platforms appear to offer provider-based models that allow you to plug external data into your content structure. However, Sitecore’s “data providers” feel like a more natural part of the platform than EPiServer’s more cumbersome “page providers” which require more investment to implement as well as more expensive enterprise licensing.
There’s more to life than a web page
Given the increasing proliferation of devices that are being used to access the internet, a web CMS is increasingly expected to provide support for multi-channel publishing. It’s not just about providing a web site that is accessed by a browser anymore – you should be tailoring the experience to whatever device is being used to visit your site.
Sitecore provide stronger support for multi-channel publishing as its system of content templates can be assigned to different layouts via its presentation engine. This de-coupling of content and presentation allows a fair degree of control over layouts across different devices. EPiServer, on the other hand, is a page-centric CMS where content templates – or page types - are very closely-coupled to a single page layout.
This close-coupling of content and presentation may appear to be a drawback for EPiServer in an increasingly multi-screen world. However, there are numerous workarounds for multi-screen publishing in EPiServer and it is likely to be addressed more fully in the next version due later this year. Sitecore may take a more object-based approach to content, but this is a very long way from the sophistication of something like Tridion’s blue-printing technology where data and presentation can be associated more freely.
EPiServer may be a little too page-centric but its close reading of Microsoft’s design patterns provides for cleanly structured website code that will be familiar to any ASP.NET developer. Sitecore’s approach to templates feels a little more ad-hoc with its lack of support for master pages and system of layouts and sub-layouts. The option to push out content via XSLT “renderings” may be popular with some developers, but it can make for an untidy site architecture that may be difficult to maintain.
Content editors have feelings too
Often overlooked, the content creation experience should be an important driver for any CMS selection. After all, it’s the content editors who will spend the most time with the platform and ease of use can contribute to the ROI on a CMS implementation.
Sitecore’s flashy Windows desktop interface is a starting point for any product demo but appears to be used rarely by content editors. EPiServer have made considerable investment in their interfaces for editors and administrators recently, but this has done little to change the basic user experience. When it comes down to it, users of both platforms are likely to spend the majority of their time navigating around grey data-entry forms.
Both platforms also provide a drag-and-drop style interface that allows editors to construct their pages visually as opposed to filling in forms. Sitecore has its page editor built in to the core CMS, while EPiServer’s Composer module provides a similar visual experience. This approach can provide a fair degree of flexibility on simpler layouts and less content-intensive pages.
The catch here is that EPiServer’s Composer module started life as a third-party plug-in before being acquired for the core platform. This means that an EPiServer site has to be engineered specifically for Composer, while Sitecore’s page editor is a more natural part of the core CMS. This is another legacy of EPiServer’s more acquisitive approach to developing its platform.
Sitecore may be making a lot of noise about its enterprise pretensions but it has yet to leave EPiServer behind in the middle market. On the surface it can be difficult to draw clear distinctions between EPiServer and Sitecore. They are both mature CMS platforms that fill very similar scenarios for interactive sites of medium size and complexity. They also appear to have very similar ambitions in terms of evolving into platforms for managing web experiences - it is this chase for platform status that is likely to define each platform’s roadmap for the next few years.