How to describe, explain and specify your KPIs

Michaël Scherding
4 min readJul 29, 2021

--

Hi all 👋,

As always, I hope you’re all doing great 😊

Today I want to discuss a critical topic and how to avoid (big) mistakes (and confusion). I’ve been working for a couple of months on a Business Intelligence project and I’ve made (a lot) of mistakes because I was not aware of the best practices. So first things first, let’s jump in the context.

Context

When you work on a Business Intelligence project most of the time you will have to create KPIs and KPIs will be used by the business to track activities and make decisions. KPI are of course linked to a business topic and objectives.

You will dream about KPIs, trust me

KPI can be sometimes hard to develop, not really because it’s technically hard to implement but more because the definition of the KPI will be done by the business with non technical description or requirements. In the end, you will be in front of a clue, you will not really know what you need to do and you will try a lot of things and most of the time you will be far away from business expectations.

Ok that’s great, we’re all on the same page, now let’s check the best practices

Business meaning

Depending on your industry and the specific department you are interested in tracking, there are a number of KPI types your business will want to monitor. Each department will want to measure success based on specific goals and targets.

  1. Tie them to strategic goals: If your KPIs don’t relate to what you’re trying to achieve in your business, you’re wasting time. While they may be related to a specific business function like HR or marketing, every key performance indicator should tie directly back to your overall business goals.
  2. Keep them clear-cut: Everyone in the organization should understand your KPIs so they can act on them. This is why data literacy is so important. When people understand how to work with data, they can make decisions that will move the needle in the right direction.

KPI Logic

Understanding the business behind the KPI is really important for the dev, it will help a lot to understand what we are doing. But it’s not enough, you will need to explain how the KPI is constructed.

Let’s have a short example.

Name of the KPI : Number of visit on the website

Trust me most of the time you will only have the name of the KPI with no explanation and you will have to dig to find what’s behind. You do not really know where to start and my best practice will looks like :

Name of the KPI : Number of visits (number of distinct navigation id) on the website (navigation id from the table name XXX).

When it’s possible, I also like to add the SQL logic behind the KPI, it will help a lot the dev to deep dive in what he will need to do. You will have :

Name of the KPI : Number of visits (number of distinct navigation id) on the website (navigation id from the table name XXX).

SQL : SELECT COUNT(DISTINCT navigation_id) FROM XXX

Having the query will help a lot the dev because when you are new in a project, you will be lost with the data model. For everyone it will be so simple to find where the data is coming from but for you, it will be a pain in the a**.

Kiss-cool effect: if it’s possible to already have from the IT the primary key, it will be greatly appreciated.

Expectations

Expectations are critical especially when you are dealing with performances. The business will use the KPIs on a daily basis and they need to explain what their expectations are in terms of usability. It will be necessary to define The expected calculation time of the KPI for a given period (under 2 / 5 / 10 / 20 secondes). Having this requirements ahead of KPI development can be a real time saver. You will be able to optimise the load time by leveraging denormalization, index or smart partitioning.

In the end you will be able to create a simple table with everything needed for the dev. The table will looks like :

And that’s it!

As you can see, it’s not a big deal to implement, it’s just some best practices to follow. One last thing and it’s not directly linked to KPI description, try as possible to work in Business Intelligence on production data… I’ve seen so many projects where business wanted a beautiful dashboard from the start where behind the door everything was not ready at all. Keep in mind that BI is one of the last steps of the data, success does rely on clean data, always.

Stay strong and stay safe 🖖

PS : thanks to my friend Florian M for the proofreading

sources : https://www.qlik.com/us/kpi

--

--

No responses yet