Skip to content

KPI catalog

Generated from kpis/catalog.yaml - the single source of truth for the Python engine, the SQL reference queries, the story site and the dashboard. 28 KPIs in 5 domains. Every KPI page shows its definition, how to read it, the common misreadings, its SQL, the Python function and a worked example taken from the test suite.

Service operations & SLA

KPI Business question Direction Target Owner Current
First response time (median) How long does a customer wait before a human acknowledges the ticket? Lower is better ↓ ≤ 2.0 h Service Desk Lead ✓ 0.9 h
Resolution time (median) How long does it take to solve a customer's problem end to end? Lower is better ↓ ≤ 24.0 h Service Desk Manager ✓ 11.1 h
SLA compliance What share of tickets did we resolve within the time we promised? Higher is better ↑ ≥ 90.0% Service Desk Manager ✓ 94.4%
Aged backlog (> 7 days) How much of the open work is already old enough to hurt the SLA? Lower is better ↓ ≤ 10.0% Queue Team Lead ✕ 76.7%
First contact resolution (FCR) How often do we solve the problem in a single interaction? Higher is better ↑ ≥ 70.0% Service Desk Manager ! 62.5%
Reopen rate How often is a "resolved" ticket not really resolved? Lower is better ↓ ≤ 5.0% Quality Lead (Service) ✓ 4.1%

Maintenance & asset reliability

KPI Business question Direction Target Owner Current
Mean time between failures (MTBF) How long does an asset run, on average, before it fails? Higher is better ↑ ≥ 150.0 h Reliability Engineer ! 118.0 h
Mean time to repair (MTTR) Once an asset fails, how long until it runs again? Lower is better ↓ ≤ 4.0 h Maintenance Supervisor ! 5.3 h
Availability Of the time the asset was supposed to run, how much could it actually run? Higher is better ↑ ≥ 97.0% Maintenance Manager ! 95.7%
Preventive maintenance compliance Are we doing the preventive work we planned, when we planned it? Higher is better ↑ ≥ 90.0% Maintenance Planner ! 86.6%
Planned maintenance share How much of our maintenance effort is planned rather than reactive? Higher is better ↑ ≥ 80.0% Maintenance Manager ! 65.5%

Inventory & demand

KPI Business question Direction Target Owner Current
Fill rate (units) Of the units customers asked for, how many did we ship from stock? Higher is better ↑ ≥ 95.0% Supply Planner ✕ 79.1%
On time in full (OTIF) How many orders arrived complete and on the promised date? Higher is better ↑ ≥ 90.0% Logistics Manager ✕ 74.5%
Inventory turnover How many times a year does the stock we hold get sold? Higher is better ↑ ≥ 8.0x / year Inventory Controller ! 5.6x / year
Days of cover If demand continues as usual, how many days will current stock last? Inside a band ↔ 14.0 days to 35.0 days Supply Planner ✕ 63.1 days
Stockout rate (SKU-days) How often is an item simply not available? Lower is better ↓ ≤ 3.0% Supply Planner ! 5.9%
Obsolete stock share How much of our inventory value has stopped moving? Lower is better ↓ ≤ 5.0% Inventory Controller ✕ 27.5%
Forecast error (MAPE) On average, by what percentage does each item's forecast miss? Lower is better ↓ ≤ 40.0% Demand Planner ✕ 389.2%
Forecast error (WAPE) Of all the units we sold, how many did the forecast get wrong? Lower is better ↓ ≤ 30.0% Demand Planner ✕ 77.0%
Forecast bias Do we systematically forecast too much or too little? Inside a band ↔ -5.0% to 5.0% Demand Planner ✓ -2.1%

Customers

KPI Business question Direction Target Owner Current
Customer retention (quarter over quarter) Of the customers who bought last quarter, how many bought again this quarter? Higher is better ↑ ≥ 50.0% Customer Success / CRM Lead ✓ 62.8%
Repeat purchase rate What share of customers come back for a second order? Higher is better ↑ ≥ 60.0% CRM Lead ✓ 72.4%
Revenue at risk (RFM "At risk") How much of our revenue comes from good customers who have stopped buying? Lower is better ↓ ≤ 10.0% CRM Lead ✓ 9.4%
Net Promoter Score (simulated survey) Would our customers recommend us? Higher is better ↑ ≥ +30 Customer Experience Lead ! +12

Data quality as a KPI

KPI Business question Direction Target Owner Current
Completeness Are the fields we need actually filled in? Higher is better ↑ ≥ 99.0% Data Steward ! 96.3%
Uniqueness Is each real-world record stored exactly once? Higher is better ↑ ≥ 99.9% Data Steward ✕ 96.8%
Validity Do the values respect the business rules? Higher is better ↑ ≥ 98.0% Data Steward ✓ 98.9%
Timeliness Is the data available soon enough after the event to act on it? Higher is better ↑ ≥ 95.0% Data Engineer ✓ 97.4%

Current = value on the full dataset of the case (illustrative). Status icons: ✓ on target, ! watch, ✕ act.