D-CAT Group ↗ Contact ENTRDEESAZ
Start a 4-week pilot

Solutions · by industry · manufacturing

Manufacturing: the line that lost availability, the unit that cost more, the supplier that slipped — read before the monthly review

CIO (ERP, MES and quality data already staged in a warehouse; the historian usually is not, and the page says so) · plant directors and the COO (OEE, downtime, schedule adherence) · plant controllers and the CFO (unit conversion cost, scrap cost, overtime) · purchasing director (supplier delivery, price variance, incoming quality). The buyer is usually the CIO with the COO; the daily readers are line managers and controllers.

How the three agents on this page read one semantic modelOne semantic model on the left; three scheduled agents in the middle - Plant Director Agent, Manufacturing Cost Agent, Materials & Supplier Agent; each publishes findings, recommendations and a brief on the right.semantic modelimported from Axoria Data Studioscheduled_time_hoursdowntime_hoursunits_startedunits_goodunits_scrapPlant Director Agentweekly · Monday 05:00FfindingRrecomm.BbriefManufacturing Cost Agentmonthly on the 5th · 06:00FfindingRrecomm.BbriefMaterials & SupplierAgentweekly · Tuesday 05:30FfindingRrecomm.Bbriefevery number in a record carries an evidence address

Questions

The three questions a manufacturing board asks every month

  • Did OEE fall on availability, performance or quality — and on which line?
  • Why did the unit cost rise when volume was flat?
  • Which suppliers slipped, and what did the price variance cost?

In conversation

Sample questions people type into the conversation

deepen path — the finding's evidence is carried frozen; a new number needs a new query, and the agent says so

  • "Break Line 7's downtime down by reason code and week."
  • "Is the scrap rise on Line 2 in one shift or both?"
  • "Show Plant B's conversion cost by cost element for the last six months."
  • "Which supplier's lines were late in August, by commodity group?"
  • "How current is the cost data?"

Personas

Three example agents

The agents below are examples for this industry, not a fixed set: Plant Director Agent · Manufacturing Cost Agent · Materials & Supplier Agent. Each one’s scheduled run is shown in the example sets that follow.

Set 1

Plant Director Agent

Audience: plant directors, line managers, the COO.

Set 2

Manufacturing Cost Agent

Audience: plant controllers, the CFO.

Set 3

Materials & Supplier Agent

Audience: the purchasing director, category buyers, the incoming-quality lead.

An agent's name says which measures it reads and for whom. It holds none of the role's authority: it does not decide, approve or act.

Agents for the topics you choose

An agent is a job description, a bound semantic model and a schedule — not code — so the topics it watches are yours to set: a payer, a service line, a campaign, a supplier. We write the first ones with you.

Build your agents with us →

Example sets

Three example sets, one run each

Each set is one agent persona and one scheduled run’s output — the brief, the recommendations and the findings they rest on — in the product’s own record envelope. The first set is open; the other two are collapsed. The model and the measures the sets assume are listed at the foot of the page.

IllustrativeSet 1Plant Director Agent
Persona
Reads OEE, downtime, scrap and schedule adherence for a manufacturer of small domestic appliances — three plants (A, B, C), eleven assembly lines, two shifts, one country; separates "the plant fell" from "one line fell", and "lost availability" from "lost quality". · Audience: plant directors, line managers, the COO. · Tone: shift-report language, number-led, no adjectives. · Output language: en
Signals it watches
(1) OEE decomposition — which of availability, performance and quality moved, by line. (2) Downtime by reason code, and whether the added hours sit in one code. (3) Scrap rate by line and defect code. (4) Material-shortage downtime as a share of all downtime. (5) Output held by overtime — output flat while overtime hours rise.
Thresholds it was given
finding 15 % · critical 40 % · ratio metrics (OEE, scrap rate, availability) 8 % · minimum share 2 % of plant output · severity rule: medium when a threshold is crossed, high when a ratio metric moves more than 1.25× its threshold or a count metric more than 1.5× the finding threshold, critical above the critical threshold; a finding with a breakdown cell takes the severity of the cell's own move; an ongoing topic keeps the severity it was given

Run header

  • Scheduled weekly, Monday 05:00, Europe/Berlin
  • Period: August 2026 (21 working days, 42 shifts) vs August 2025 (21 working days, 42 shifts) — equal scheduled time; no shutdown week in either
  • Data complete through 2026-09-19, measured via max(PRODUCTION_DATE), 9 hours ago
  • Scope: the agent runs under the production scope (all plants, no cost metrics)
  • Model: the workspace's approved model, written onto the run
  • Cost: recorded on the run
Brief

August 2026: Plant B Line 7 OEE 71.42 % → 62.78 % on Conveyor Downtime, Plant A Line 2 Scrap 1.24 % → 2.06 %, Plant C Held Output Flat on Overtime +18.08 % While Material-Shortage Downtime Rose +151.92 %

Assumptions strip

You did not state a period; last full month (August 2026) was assumed, compared with August 2025 (equal scheduled time). Cost metrics are outside this agent's scope and do not appear. The maintenance work-order star has no bridge to downtime; comparisons with it are built in the sentence.

August's production story is three lines, not three plants. At Plant B, Line 7 lost availability — OEE fell from 71.42 % to 62.78 % as unplanned downtime rose from 53.42 to 84.34 hours, 63.43 % of the added hours under the conveyor reason code — while the plant as a whole moved only −2.18 %. At Plant A, Line 2 started 4.00 % more units and scrapped them at 2.06 % against 1.24 % a year ago, with 38.00 % of the scrap rows carrying no usable defect code. At Plant C, output was flat (+0.60 %) while material-shortage downtime rose to 21.30 % of the plant's downtime and overtime hours rose 18.08 % — the output line hides what the hours line shows.

covers: Finding 1, Finding 2, Finding 3

— Run: weekly, the workspace's approved model, data complete through 2026-09-19. Guard Ledger: held 1 — candidate r-01 draft, reason numeric_provenance: token about 62,000 € (cost of the lost hours) resolved to no envelope — cost metrics are outside this agent's scope; not_selected 0; duplicate 0.

Recommendation 1

Break Line 7's downtime down by reason code and by week for August, and put the conveyor work-order count for the same weeks beside it, built in the sentence

based_on: Finding 1 · owner: Plant B maintenance manager, with the line manager

63.43 % of the added downtime hours carry one reason code; the week cut will show whether it is one long stoppage or a recurring short one. The work-order star has no bridge to downtime in this model, so the two counts are read side by side, not joined. The number the agent drafted for the cost of the lost hours was held — cost is outside this agent's scope and the Manufacturing Cost Agent reads it.

The findings this rests on

Finding 1

OEE Fell on Availability, on One Line: Plant B Line 7 OEE 71.42 % → 62.78 % (−12.10 %) With Availability 84.10 % → 74.90 % — Unplanned Downtime 53.42 → 84.34 Hours, 63.43 % of the Added Hours Under One Reason Code

severity highdirection downnovelty newtrust Abreakdown LINE = B-7

Line 7 at Plant B ran 336 scheduled hours in August 2026, the same as in August 2025. Its OEE fell from 71.42 % to 62.78 %, a −12.10 % change in a ratio metric, 1.51× the 8 % threshold — severity high. The fall is availability: 84.10 % → 74.90 %, as unplanned downtime rose from 53.42 to 84.34 hours; performance (89.20 % → 88.60 %) and quality (95.20 % → 94.60 %) barely moved. Of the 30.91 added downtime hours, 19.60 (63.43 %) carry the reason code mechanical – conveyor. Line 7 produced 36,540 units against 41,200 (−11.31 %) and holds 14.60 % of Plant B's August output; Plant B's OEE as a whole moved only −2.18 % (68.90 % → 67.40 %), so this is one line's story. The maintenance work orders for the conveyor sit in a separate star with no bridge to downtime; whether the repairs and the stoppages line up in time cannot be read from this model.

Recommendation 2

Break Line 2's scrap down by defect code and shift, and ask the quality manager to retire the code "other"

based_on: Finding 2 · owner: Plant A quality manager

A defect code that holds 38.00 % of the rows explains nothing. The shift cut is in this model and costs one query; if the rise sits in one shift the question is a process one, if in both it is a material one, and the material lot is not in the production star today.

The findings this rests on

Finding 2

Scrap Rate on Plant A Line 2: 1.24 % → 2.06 % of Units Started (+66.14 %) While Units Started +4.00 % — 38 % of Scrap Rows Carry the Defect Code "Other"

severity criticaldirection upnovelty newtrust Abreakdown LINE = A-2

Line 2 at Plant A (kettles, 22.00 % of the plant's output) started 428,500 units in August 2026 against 412,000 a year earlier (+4.00 %) and scrapped 8,830 against 5,110. The scrap rate moved from 1.24 % to 2.06 %, a +66.14 % change in a ratio metric, above the 40 % critical threshold — severity critical; good units still rose +3.14 %, so the line's output grew while its waste grew faster. The defect-code breakdown is in this model but does not settle the question: 3,355 of August's 8,830 scrap rows (38.00 %) carry the code other. This data cannot say whether the added scrap is a material lot or a process drift — the material lot number is not in the production star.

Also published in this run, with no recommendation resting on it

Finding 3

Material-Shortage Downtime at Plant C: 31.20 → 78.60 Hours (+151.92 %), Now 21.30 % of the Plant's Downtime — Output Held Flat (+0.60 %) on Overtime +18.08 %

severity criticaldirection upnovelty newtrust Abreakdown DOWNTIME_REASON = Material shortage × PLANT = C

Plant C's downtime hours coded material shortage rose from 31.20 in August 2025 to 78.60 in August 2026 (+151.92 %, above the 40 % critical threshold — severity critical), taking the code from 9.15 % of the plant's 341 downtime hours a year earlier to 21.30 % of its 369 in August. The plant's output was flat — 189,530 units against 188,400 (+0.60 %) — while overtime hours rose from 6,140 to 7,250 (+18.08 %). The two facts stand side by side; the record does not link them, and the output line on its own shows nothing. This data cannot say which material was short — the shortage reason code carries no part number in this model.

What this run could not see.

The material lot behind Line 2's scrap, the part number behind Plant C's shortages, and the timing of the conveyor repairs against the stoppages. Cost is outside this agent's scope by design.

IllustrativeSet 2Manufacturing Cost Agent
Persona
Reads unit conversion cost, its elements, energy intensity and overtime for the same three plants; separates "cost rose because volume fell" from "cost rose per unit at the same volume". · Audience: plant controllers, the CFO. · Tone: controller's language, exact, unemphatic. · Output language: en
Signals it watches
(1) Unit conversion cost by plant and cost element, against the same month last year. (2) Labour cost per unit against units produced. (3) Energy intensity (kWh per unit) beside energy cost per unit, without inferring the tariff. (4) Overtime share of paid hours. (5) Scrap cost as a share of conversion cost.
Thresholds it was given
finding 15 % · critical 40 % · ratio metrics (unit costs, intensities, shares) 8 % · minimum share 2 % of conversion cost · severity rule: medium when a threshold is crossed, high when a ratio metric moves more than 1.25× its threshold or a count metric more than 1.5× the finding threshold, critical above the critical threshold; a finding with a breakdown cell takes the severity of the cell's own move; an ongoing topic keeps the severity it was given

Run header

  • Scheduled monthly on the 5th, 06:00, Europe/Berlin
  • Period: August 2026 vs August 2025 (equal working days; costing closes monthly)
  • Data complete through 2026-09-18, measured via max(POSTING_DATE) — posting date, not production date; late postings are outside the edge
  • Scope: no row-level rule is bound to this agent — the run was produced on every row
  • Model: the workspace's approved model
  • Cost: recorded on the run
  • Amounts in EUR
Brief

August 2026: Plant B Unit Cost +8.71 % on Labour Alone, Plant A Energy Intensity −9.36 %, Plant C Overtime 14.10 % of Paid Hours — One Cost Figure Held on a Source Error

Assumptions strip

You did not state a period; last full month (August 2026) was assumed. The data edge is the posting date; late postings are outside it. Plant C's labour cost for week 35 returned a source error and is recorded as held, not as zero.

Plant B's conversion cost per unit rose from 48.20 € to 52.40 € on 4.10 % less output, and the rise is labour: 12.89 % more per unit, with energy and overhead below threshold. Plant A moved the other way on energy — 3.10 kWh per unit against 3.42 — though its energy cost per unit fell only 2.95 %, and the tariff that would explain the gap is not in the model. Plant C's overtime climbed to 14.10 % of paid hours from 11.20 %; its labour cost for one week could not be read, so the plant's cost per unit is not stated this run.

covers: Finding 1, Finding 2, Finding 3

— Run: monthly, the workspace's approved model, data complete through 2026-09-18. Guard Ledger: held 1 — candidate f-04 (Plant C labour cost per unit), reason source_execution_error on metric labour_cost for week 35 (envelope e7 errored, no partial value used); duplicate 1 — candidate f-05 (overhead per unit, Plant B) merged into Finding 1 on fingerprint conversion_cost|2026-08|plant-b; not_selected 0.

Recommendation 1

Break Plant B's August conversion cost down by line and by cost element, and put each line's paid hours per unit beside its labour cost per unit

based_on: Finding 1 · owner: Plant B controller

If hours per unit rose in step with labour cost per unit, the move is productivity; if hours are flat and cost rose, it is rate or mix of grades, which this model does not hold. Both cuts are in this model at line grain.

The findings this rests on

Finding 1

Plant B Unit Conversion Cost 48.20 € → 52.40 € (+8.71 %) While Output −4.10 % — the Rise Is Labour: 19.40 € → 21.90 € per Unit (+12.89 %); Energy +3.43 %, Overhead +6.57 %

severity highdirection upnovelty newtrust Abreakdown PLANT = B × COST_ELEMENT = Labour

Plant B produced 250,300 units in August 2026 against 261,000 a year earlier (−4.10 %). Its conversion cost per unit rose from 48.20 € to 52.40 € (+8.71 %, 1.09× the 8 % ratio threshold). By element: labour 19.40 € → 21.90 € (+12.89 %, 1.61× the ratio threshold — severity high on the element that carries the move), energy 6.12 € → 6.33 € (+3.43 %), overhead 22.68 € → 24.17 € (+6.57 %); the other two elements are below threshold. Plant B is 33.35 % of the group's 750,630 August units. This data cannot separate a wage-rate change from more hours per unit — paid hours by plant are in this model, wage rates are not.

Recommendation 2

Put Plant C's overtime share on a weekly watch beside the material-shortage downtime hours, both in this model, and ask the model owner why week 35's labour cost fails

based_on: Finding 3 · owner: Plant C controller, with the data-model owner

Overtime and shortage downtime are the two sides of one August at Plant C; the weekly watch will show whether they keep moving together. A metric that errors is marked broken in the model note until it is fixed, so no run spends a query on it.

The findings this rests on

Finding 3

Plant C Overtime Hours 12,400 → 15,900 (+28.23 %), 11.20 % → 14.10 % of Paid Hours — the Plant's Labour Cost for Week 35 Could Not Be Reported

severity highdirection upnovelty newtrust Abreakdown PLANT = C

Plant C's overtime hours rose from 12,400 in August 2025 to 15,900 in August 2026 (+28.23 %, 1.88× the 15 % finding threshold — severity high), taking overtime from 11.20 % of 110,700 paid hours to 14.10 % of 112,800. Paid hours as a whole moved +1.90 %, below threshold; the shift is inside the hours, not in their total. The labour cost metric for Plant C returned a source execution error for week 35, so the plant's August labour cost per unit was not produced; the hours finding is published, the cost sentence the agent drafted was held. The overtime reason code is not in this model.

Also published in this run, with no recommendation resting on it

Finding 2

Plant A Energy Intensity 3.42 → 3.10 kWh per Unit (−9.36 %) on Output +3.19 %, While Energy Cost per Unit Fell Only −2.95 %

severity mediumdirection downnovelty newtrust Abreakdown PLANT = A

Plant A produced 310,800 units in August 2026 against 301,200 (+3.19 %) and used 9.36 % less energy per unit — 3.10 kWh against 3.42 — 1.17× the 8 % ratio threshold (severity medium) and in the good direction for this metric. Energy cost per unit fell less, from 0.712 € to 0.691 € (−2.95 %). The gap between the two changes is visible but not explained here: the energy tariff is not a metric in this model, and the agent does not infer one.

What this run could not see.

Wage rates, the energy tariff, the overtime reason code, and Plant C's week-35 labour cost. Scrap cost as a share of conversion cost was below threshold at every plant and is not reported.

IllustrativeSet 3Materials & Supplier Agent
Persona
Reads purchase-order lines, receipts, price variance and incoming inspection for the same manufacturer; separates "suppliers slipped" from "one supplier slipped", and "prices rose" from "we bought off standard". · Audience: the purchasing director, category buyers, the incoming-quality lead. · Tone: plain, procurement-report language. · Output language: en
Signals it watches
(1) Supplier on-time-in-full by supplier and commodity group, with the supplier's share of lines and of value. (2) Purchase-price variance as a share of standard cost, by commodity group. (3) Incoming inspection reject rate by commodity. (4) Receipt timing — promised date against received date. (5) Supplier concentration by commodity.
Thresholds it was given
finding 15 % · critical 40 % · ratio metrics (OTIF, variance share, reject rate) 8 % · minimum share 2 % of purchase-order lines or 5 % of purchase value · severity rule: medium when a threshold is crossed, high when a ratio metric moves more than 1.25× its threshold or a count metric more than 1.5× the finding threshold, critical above the critical threshold; a finding with a breakdown cell takes the severity of the cell's own move; an ongoing topic keeps the severity it was given

Run header

  • Scheduled weekly, Tuesday 05:30, Europe/Berlin
  • Period: August 2026 vs August 2025, on the promised delivery date (equal working days)
  • Data complete through 2026-09-19, measured via max(RECEIPT_DATE), 10 hours ago
  • Scope: the agent runs under the procurement scope (all plants, purchase and inspection stars only)
  • Model: the workspace's approved model
  • Cost: recorded on the run
  • Amounts in EUR
Brief

August 2026: Motor Supplier On-Time-in-Full 96.12 % → 71.36 %, Electronics Price Variance 2.10 % → 4.60 % of Standard, Plastics Rejects 0.90 % → 1.69 % — Plant C's Inspection Rows Missing for Two Weeks

Assumptions strip

You did not state a period; last full month (August 2026) was assumed on the promised delivery date. Plant C's inspection results have no rows for weeks 33–34 and are recorded as a data state; the plant is excluded from the reject ratio. The purchase star and the production star are not joined; side-by-side statements carry no causal claim.

Supplier delivery held at group level — 87.10 % of top-20 lines on time and in full, against 93.40 % — but one supplier fell hard: the motor supplier delivered 71.36 % of its 412 lines on time and in full, against 96.12 % a year ago, on 23.01 % of August purchase value. Electronics carried an unfavourable price variance of 4.60 % of standard on 1.86 M € of spend, against 2.10 % a year earlier. Plastics rejections rose to 1.69 % of inspection lots from 0.90 %, measured on two plants because the third's inspection rows are missing for two weeks.

covers: Finding 1, Finding 2, Finding 3

— Run: weekly, the workspace's approved model, data complete through 2026-09-19. Guard Ledger: held 0; not_selected 1 — candidate f-04 (cable supplier OTIF −9.10 %, within threshold once the cell rule was applied) dropped at gate 7 as below the agent's own bar; data state 1 — envelope e6 (inspection lots) returned 0 rows for Plant C in weeks 33–34; duplicate 0.

Recommendation 1

Break the motor supplier's August lines down by lateness days and by plant, and put Plant C's material-shortage downtime hours for the same weeks beside them, built in the sentence

based_on: Finding 1 · owner: purchasing manager, with the Plant C production planner

A supplier that was late by two days and one that was late by three weeks call for different conversations. The lateness cut is in this model. The downtime star is not joined to the purchase star; the two are read side by side, and the record makes no causal claim between them.

The findings this rests on

Finding 1

One Supplier's Slip: Motor Supplier On-Time-in-Full 96.12 % → 71.36 % of Lines (−25.76 %) While the Top-20 Suppliers Together Moved 93.40 % → 87.10 %

severity highdirection downnovelty newtrust Abreakdown SUPPLIER = motor supplier (7.96 % of lines, 23.01 % of purchase value)

Across the top-20 suppliers, 4,509 of 5,177 August purchase-order lines arrived on the promised date and complete, against 4,812 of 5,152 a year earlier: 87.10 % against 93.40 %, a −6.75 % change that stays below the 8 % ratio threshold at group level. One supplier carries the move: the motor supplier delivered 294 of 412 lines on time and in full against 396 of 412 (71.36 % vs 96.12 %, −25.76 %, 3.22× the 8 % ratio threshold — severity high; the critical threshold of 40 % is not reached). It holds 7.96 % of the lines but 2.00 M € of the 8.69 M € August purchase value (23.01 %), and its motors feed Plant C, where material-shortage downtime rose this month (the Plant Director Agent's record; the two stars are not joined here). This data cannot say whether the late lines were late by a day or a month — the receipt star holds the received date but the agent did not open the lateness-days cut in this run.

Recommendation 2

Break the electronics price variance down by supplier and by purchase-order date, and ask the model owner to add the contract-price flag to the purchase-order line

based_on: Finding 2 · owner: category buyer, Electronics, with the data-model owner

If the variance sits with one supplier, it is a negotiation question; if it is spread across suppliers and dated after one week, it is a market move. Both cuts are in this model. Whether an order was placed at contract price or spot price is not — that flag is a Data Studio change.

The findings this rests on

Finding 2

Purchase-Price Variance on Electronics: 2.10 % → 4.60 % of Standard Cost (+119.49 %) on 1.86 M € of August Spend, 21.40 % of Purchase Value

severity criticaldirection upnovelty newtrust Abreakdown COMMODITY_GROUP = Electronics

Electronics purchases posted 85,600 € of unfavourable price variance against a 1.86 M € standard-cost base in August 2026 (4.60 %), compared with 39,000 € on the same base a year earlier (2.10 %): a +119.49 % change in a ratio metric, above the 40 % critical threshold — severity critical. Electronics is 21.40 % of the group's 8.69 M € August purchase value. The other commodity groups are inside 1.5 %. This data cannot separate a market price move from buying outside the contract — the contract-price flag is not on the purchase-order line in this model.

Also published in this run, with no recommendation resting on it

Finding 3

Incoming Reject Rate on Plastics: 0.90 % → 1.69 % of Inspection Lots (+88.46 %) — Plant C's Inspection Results Absent for Two Weeks

severity criticaldirection upnovelty newtrust Abreakdown COMMODITY_GROUP = Plastics

Of 23,900 plastics inspection lots in August 2026, 405 were rejected (1.69 %) against 214 of 23,800 a year earlier (0.90 %): a +88.46 % change, above the 40 % critical threshold — severity critical. The rate is measured on Plants A and B only: Plant C's inspection results have no rows for weeks 33 and 34, which is recorded as a data state, and the plant is excluded from the ratio rather than counted as clean. The rejection reason is in this model; 247 of August's 405 plastics rejections (60.99 %) carry the code dimensional. This data cannot say whether the rejected lots came from one moulder or several — the supplier dimension is on the purchase star, not the inspection star, and the two have no bridge.

What this run could not see.

The contract-price flag on purchase-order lines, the supplier behind each inspection lot, and lateness in days (in the model, not opened this run). Whether the motor supplier's slip and Plant C's shortages are the same event is a question the two unjoined stars cannot answer.

Every number carries an address

In the product each figure binds to an evidence address — envelope, row, cell, check digit — and a number without one is held, not published. The anatomy of a record →

Derived figures show their operation

A change, a share or a gap is computed by the engine and carries its operands; the model never divides. How every number is proved →

AI governance is the publication layer

Eight deterministic gates, the trust tier, badged interpretation, an assumptions strip that cannot be switched off, and the Guard Ledger. Where the model can and cannot reach →

FAQ

Four questions this page is usually asked

01Our MES and historian data are not in the warehouse. Can the agent still work?

It works on what the imported model holds — production orders, shift logs, quality lots, cost postings. What is not in the model is said to be absent, never estimated.

02Does it see operators by name?

No. Operator and inspector are marked personal; the nearest allowed cuts are line and shift.

03Can it join our purchase data to our downtime data?

Only if the imported model defines the relationship. Where it does not, the agent reads the two side by side and says so.

04What happens when a cost metric errors?

The metric is marked broken in the model note, the agent stops querying it, and every sentence that needed it is held with the reason, visibly.

Free data discovery study

See which of these signals your own warehouse can carry.

Send us the name of your data platform and the domain you argue about most. We read your semantic model with you and answer in writing: which of the signals on this page your model carries today, which need a change in Axoria Data Studio, and what a four-week pilot would measure. No cost, no sequence — a person replies within two working days.

What the examples assume

The data, the model and the measures behind the three sets

Nothing in a set rests on a source outside the model described here. Open what you want to reconcile.

01Assumed data sources — data a manufacturer already has

ERP production orders (planned vs produced quantities, posting dates), MES or shift logs (scheduled time, downtime with reason codes, units started and units good), quality records (scrap by defect code, incoming inspection results), cost postings (labour, energy, overhead by plant and month), purchase orders and goods receipts (promised vs received date and quantity), price lists and standard costs, energy meter reads by plant. Typical warehouse grain: one row per production order per shift, plus one row per purchase-order line.

02Assumed semantic model — the minimum for the three personas
Measures
scheduled_time_hours · downtime_hours (with reason code) · units_started · units_good · units_scrap · oee (engine-derived from availability × performance × quality, or the three components as measures) · schedule_adherence · overtime_hours · paid_hours · conversion_cost (labour, energy, overhead components) · units_produced · energy_kwh · po_lines_ordered · po_lines_on_time_in_full · purchase_value · standard_cost_value · price_variance · inspection_lots · inspection_rejects.
Dimensions
production date · plant · line · shift · product family · downtime reason code · defect code · cost element · supplier · commodity group · purchase-order date · inspection lot date. Marked personal and never broken down by: operator, inspector.
Data edge
measured by the engine via max(PRODUCTION_DATE) for the production star and max(POSTING_DATE) for the cost star; the maintenance work-order star, where it exists, has no bridge to downtime — comparisons are built in the sentence.
03Assumed KPIs — what manufacturing executives track
KPIDefinitionUnitTypical bandUsual breakdown
Overall equipment effectiveness (OEE)availability × performance × quality%world-class 85 %; typical ≈ 60 %; process industries often > 90 % [research]line · plant · shift
On-time deliveryorders shipped by promise / orders%≥ 95 % exemplary; automotive supply 98–99 % [vendor]customer · plant
Perfect order rateon-time × complete × damage-free × document-accurate%top quartile ≥ 95 %; mid-market median 80–88 % [assoc definition; vendor figures]customer
First-pass yieldgood units first time / units started%no universal bandline · product
Scrap / rework ratescrap cost / production cost%company-specificline · product
Unplanned downtimehours lost / scheduled hours%company-specificasset · plant
MTBF / MTTRmean time between failures / mean time to repairhourscompany-specificasset class
Inventory turns (raw, WIP, finished)cost of goods / average inventoryturnscompany-specificplant · SKU
Unit conversion costconversion cost / units producedcurrencycompany-specificproduct · plant
Labour productivityunits per labour hourunits/hcompany-specificline · shift
Energy intensitykWh per unit or tonnekWhcompany-specificplant
Safety (TRIR / LTIFR)incidents per 200k or 1M hoursrateno universal bandplant
Schedule adherenceplan met / planned%company-specificline
Supplier on-time-in-fullPO lines received on date and complete / PO lines%company-specificsupplier · commodity

Related

Where these pages lead