% of supplier order lines on time, in full, at required quality
% of supplier order lines on time, in full, at required quality
OTIF-Q measures supplier performance after the delivery is complete. The operational consequence, such as a line stoppage or a QA hold, has already occurred before the KPI score is calculated.
(Perfect supplier order lines / Total order lines) x 100One row per purchase order line — supplier × material × plant × commodity × requested delivery date
A preview of what's actually built for this KPI — extracted from the real Implementation Pack, not a mockup.
This is the primary ratio the pack's other measures build on — trend, rank, and period-comparison variants, all on Fact_Purchase_Order_Line. It guards against missing dates and values with NOT ISBLANK checks.
Fact_Purchase_Order_Line — 9 mandatory columns — qty delivered, material key, ...Dim_Commodity — key + nameDim_Material — material_key + material_descriptionDim_Plant — key + nameDim_Supplier — key + nameDim_Date — Auto-generated calendar table — no customer data requiredFull field-by-field data contract, in 4 SQL dialects (SQL Server, Snowflake, Databricks, BigQuery), ships in the pack.
| Target | 0.97 — performance considered compliant at or above this line |
| Warning | 0.93 — amber alert — triggers a review |
Both live in one Excel tab — change them, refresh the report, done. No DAX editing needed.
Everything you need to build Supplier OTIF-Q in Power BI — dimensional model, DAX measures, SQL views, and a food-industry demo dataset.