Take the community feedback survey now.

Quan Mai
May 6, 2020
  8473
(5 votes)

New "feature" in Commerce 13.16: Marketing UI statistics has been reworked

We released this feature a while back, but as the release notes are usually overlooked, the change might be seen as a bug. 

It's not a bug, it's a feature.

In the past, when you visit the Marketing UI, you can also see how many times a promotion has been redeemed, and how many orders have been created with that promotion/campaign, in real time. While it's fun to see the number changes - especially during a hot campaign, getting them are not as fun.

Getting the number of redemption is an easy task, it can be done by a simple COUNT in SQL. Counting the orders, in other hands, is a heavy task. An order might have multiple forms, and a form might have a promotion redeemed multiple times. To get the correct numbers, it has to be done by COUNT DISTINCT, which is (very) expensive.

And then because a campaign might contain multiple promotions, AND an order might have several promotions applied (which is good for your customers!), counting the number in that orders is even more expensive.

We got several reports from customers with huge number of orders (more than a few millions) that the Marketing UI is slow to load. After carefully investigation and consideration, we decided that we can make the SQL query better, but that alone is not enough. We need to change how data is collected. Getting the number of orders in real time is not a business critical feature, but slowing the UI down and potentially slowing down other queries, is a real concern.

So in Commerce 13.16, the statistisc in Marketing UI has been reworked. The order numbers are no longer updated in real time. The result: Marketing UI is now faster than ever before!

If you want to see the updates, you need to run the scheduled job manually (or set them to run, says, daily, or hourly). When you upgrade, the existing data will be migrated automatically. What to do after that is up to you. If you don't really care about those numbers, you can forget about it. More details can be read here: https://world.episerver.com/documentation/Release-Notes/ReleaseNote/?releaseNoteId=COM-10446

May 06, 2020

Comments

Praful Jangid
Praful Jangid May 7, 2020 07:41 AM

Good job team!

Johan Book
Johan Book May 7, 2020 10:41 PM

Yay! This is some really good news! Good job!

Kane Made It
Kane Made It May 13, 2020 10:27 AM

Yeah, I love the performance improvement. Nicely done there!

Sanjay Kumar
Sanjay Kumar Feb 18, 2021 03:41 AM

Awesome work team!

Please login to comment.
Latest blogs
Running Optimizely CMS 12 on .NET 10 in Azure

Upgrade your Optimizely CMS website to .NET 10!

Tomas Hensrud Gulla | Nov 21, 2025 |

Experimentation Evolution with AI (Masterclass Recap)

If you think you are not using AI in your experimentation program you are probably wrong. Ever asked an AI to rephrase a hypothesis or brainstorm a...

Polly Walton | Nov 21, 2025

Effortlessly Configurable Custom Fields for Scheduled Jobs in Optimizely with PlugInProperty

Optimizely CMS lets developers add job parameters—such as textboxes and checkboxes—directly to the scheduled job admin UI using PlugInProperty. Wit...

Ravindra S. Rathore | Nov 21, 2025 |

Optimizely Package Explorer: Now With Extra Superpowers

If you’ve ever opened a .episerverdata file and asked “What is in here?” (guilty as charged) — then this is your moment. We’ve given our open-sourc...

Allan Thraen | Nov 20, 2025 |