John-Philip Johansson
May 26, 2020
  4360
(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:

imageo8oe.png

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

Comments

Please login to comment.
Latest blogs
Optimizely Opal: How to Build Effective Workflow Agents

If you're building workflow agents in Optimizely Opal, this post covers how specialized agents pass context to each other, why keeping agents small...

Andre | May 20, 2026

ReviewPR: An Azure Function That Reviews Your Azure DevOps Pull Requests With Claude

A while back I wrote about an  Azure Function App for PDF creation that we use to offload PDF rendering from our Optimizely DXP site. That same...

KennyG | May 19, 2026

Accelerating Optimizely CMS and Commerce upgrades with agentic AI (Part 2 of 2)

The Real Transformation in Optimizely CMS 13: Why the Upgrade Itself Is the Easy Part. A field-tested playbook for enterprise teams moving from...

Hung Le Hoang | May 18, 2026

Is the most powerful AI model really the best value?

Artificial Intelligence is already becoming part of everyday software development. Developers now use AI tools to generate code, write documentatio...

K Khan | May 16, 2026