John-Philip Johansson
May 26, 2020
(2 votes)

Another step for Episerver CMS Labs - User Telemetry in more add-ons

TL;DR: When you upgrade BlockEnhancements or install our Labs in the future, you will see a new NuGet dependency called EPiServer.Telemetry.UI. It's the telemetry code from BlockEnhancements that we extracted and made available to our other experiments.

Previously, we blogged about adding User Telemetry in our first Labs add-on, BlockEnhancements, to learn more about what is used and what isn't. As noted in the Introducing Episerver CMS Labs blog post, this will be key for us to uncover what is truly useful for our users when we create various experimental Labs add-ons.

We noticed in our initial data set that there is still a lot to learn about what our users really enjoy with BlockEnhancements, and we're working on that. In the meantime, we have also released some other really interesting Labs where we explore other parts of the CMS that we would like to change:

To be able to understand the users of these new Labs add-ons, we had to make the telemetry functionality from BlockEnhancements available to the other Labs add-ons as well. To do this, we extracted the telemetry functionality into its own open-source NuGet package. We will continue to maintain a public list of what we track (on the EPiServer.Telemetry.UI Github repository), and we will continue to report our findings through blog posts.

We are looking at ways on how to make this functionality more useful for other teams across Episerver, and eventually to you, our partners and community. For now, anyone can take a dependency on that package to start tracking but unless they're part of the CMS UI team, or at least within Episerver, the data won't be available.

To help us out, remember to opt in to the telemetry collection if you're using any of our Labs and are happy with it (or even if you're not!). We will enable this on DXP environments, but if you're self hosted, you can enable Telemetry with this configuration:

public void ConfigureContainer(ServiceConfigurationContext context)
    context.Services.Configure<TelemetryOptions>(options => options.OptedIn = true);

Everything we collect is anonymized and we only collect what we need. One question we've had internally is how "responsive" our design needs to be, especially if you've had the chance to look at our cool new Content Manager Labs that works on a mobile phone. Cool right? Is it used? How often do editors edit on the phone? Should we invest more in that, or was it one of those ideas that are cooler on paper than in reality? Now we can find out. The Telemetry add-on will be added to ContentManager and that will help us answer those questions. For now, these are the screen sizes we collected from BlockEnhancement:


That's not a lot of clients or users, so please enable the Telemetry and use our Labs, so we all can learn and build more things our users love. 🚀

May 26, 2020


Please login to comment.
Latest blogs
Plug-in manager is back in CMS 12

Plug-in manager is back in the UI, what is it and how can i use it?

Luc Gosso (MVP) | Oct 6, 2022 | Syndicated blog

Display Child Pages in Content Delivery API Response

The below example will implement an instance of IContentConverterProvider to customise the serialisation of PageData and output child pages in the...

Minesh Shah (Netcel) | Oct 4, 2022

Bring the Report Center back in Optimizely CMS 12

The Report Center has been a part of Optimizely CMS since its first debut in version 5R2 in 2008, but in CMS 12, it's removed! Don't despair! Make...

Tomas Hensrud Gulla | Oct 4, 2022 | Syndicated blog

Customizing Property Lists in Optimizely CMS

Generic property lists is a cool editorial feature that has gained a lot of popularity - in spite of still being unsupported (officially). But if y...

Allan Thraen | Oct 2, 2022 | Syndicated blog

Optimizely names Luminary Senior Developer, Ynze Nunnink, OMVP

Luminary Senior Developer and Optimizely Lead, Ynze Nunnink has secured the coveted position of Optimizely MVP. Earning a Platinum badge for his...

Ynze | Oct 2, 2022 | Syndicated blog

Content Delivery API – The Case of the Duplicate API Refresh Token

Creating a custom refresh provider to resolve the issues with duplicate tokens in the DXC The post Content Delivery API – The Case of the Duplicate...

David Lewis | Sep 29, 2022 | Syndicated blog