Skip to main content
Data Platform

Microsoft Fabric for Manufacturing: The Complete 2026 Guide

The plant manager knows yesterday's output. The quality manager knows yesterday's rejections. Finance knows last month's margin. Nobody in the building can tell you, without three days of work, whether the rejections and the margin were caused by the same batch of raw material. This is the reference for the estate as it actually is — and what Fabric changes at each layer.

Amit Kumar Singh - Technology Consulting Partner at MyData Insights

Technology Consulting Partner · MyData Insights

14+ years in industrial data · Former Accenture & EY · India, GCC, SEA

18 August 2026 · 18 min read

The bottom line

Microsoft Fabric lands ERP, MES, SCADA, historian, quality and spreadsheet data into one storage layer, OneLake, in Delta Parquet — replacing the copy-and-reconcile pattern between plant and finance systems with one governed model where work orders, batches, downtime and quality can be joined at a common grain. The hard part is never Fabric: it is OT/IT ingestion (OPC-UA is not a native Eventstream source — you need an edge hop), mapping machine identifiers to ERP work centres, and ERP timestamps that record administration not physics. The design work lives in Silver, at the entity level — work order, batch, downtime event, quality hold, BOM. Define OEE, OTIF, scrap, first-pass yield and DIO once in Gold, with the denominator visible. Ship one production-order slice in six weeks; widen OT ingestion after. Fabric is not a manufacturing application — it is the layer beneath where their data becomes comparable.

The actual condition of most mid-market estates

It is not an absence of data — an abundance of it, sitting in five systems that were never designed to be joined, plus a spreadsheet layer holding the joins together in one person's head. This guide is the reference I wish existed when a manufacturing operations or IT leader starts evaluating Microsoft Fabric.

It covers the estate as it actually is, what Fabric changes at each layer, why OT/IT ingestion is the part that overruns, how the medallion model applies to work orders and batches rather than to generic "raw and curated" boxes, which metrics get defined once, how serving and alerting work, what capacity governance actually requires, and a realistic sequence with a six-week first slice.

What does Microsoft Fabric do for a manufacturing business?

Microsoft Fabric is a single SaaS analytics platform that lands ERP, MES, SCADA, historian, quality and spreadsheet data into one storage layer, OneLake, in Delta Parquet format. For manufacturers it replaces the copy-and-reconcile pattern between plant systems and finance systems with one governed model where work orders, batches, downtime events and quality results can be joined at a common grain.

Fabric is not a manufacturing application. It does not schedule production, hold a batch record, or enforce a quality hold. It is the layer underneath those systems where their data becomes comparable. Understanding that boundary early saves a great deal of disappointment later.

The manufacturing data estate as it actually is

A typical mid-market estate contains six layers: ERP for orders and costs, MES for execution, SCADA and historian for machine signals, a quality system for inspections, a CMMS for maintenance, and a spreadsheet layer that reconciles all of them. Each holds a different grain, a different time base and a different set of identifiers.

LayerGrain it holdsHow data gets outThe usual problem
ERP (SAP, D365, Business Central, Epicor, NetSuite)Production order, material document, cost elementMirroring, Data Factory, replicationConfirmations backflushed at shift end — timestamps are administrative, not physical
MESOperation, work centre, shift, unitDatabase extract or API, rarely cleanWork centre identifiers do not match ERP work centres
SCADA / historianTag reading at second intervalOPC-UA to edge gateway, then MQTT or IoTTag names encode meaning in a convention nobody documented
Quality (LIMS, QMS, paper)Inspection lot, characteristic, resultExtract or manual exportResults recorded against a batch the ERP does not know by that number
Maintenance (CMMS)Work order, asset, failure codeExtractAsset register differs from the equipment list SCADA uses
Spreadsheet layerWhatever the analyst neededIt does not — it is the outputIt holds the only working mapping between the layers above

That last row is the one to take seriously. The spreadsheet layer is not a symptom of laziness — it is undocumented integration logic, maintained by one or two people, and the single richest source of requirements you will find.

What Fabric changes at each layer

ERP: mirroring replicates a source database into OneLake as Delta tables with continuous change capture. Generally available sources include SQL Server, Oracle, Snowflake, BigQuery, Cosmos DB, PostgreSQL and SAP. SAP is a two-step route — SAP Datasphere replication flows land data in an ADLS Gen2 container, and Fabric's mirroring engine merges it into OneLake. For Dynamics 365, Link to Microsoft Fabric shortcuts Dataverse and finance/operations tables into a lakehouse, with up to 60 minutes of sync latency and a hard limit above 2,000 active Dataverse tables.

MES, quality and maintenance: almost always Data Factory pipelines against a database or API, landing raw into Bronze — no shortcut here, and no connector saves you the schema work. Spreadsheets: nothing in Fabric migrates a spreadsheet automatically. What Fabric gives you is somewhere for the logic to live once you have extracted it, and Power Apps and Power Automate give the data entry that spreadsheet was doing somewhere to live instead.

Why OT/IT ingestion is the hard part

OPC-UA is not a native Fabric Eventstream source. Plant data reaches Fabric through an edge hop: an OPC-UA connector publishes to an MQTT broker or Azure IoT Hub, and Eventstream ingests from there. Azure IoT Operations — which runs on Arc-enabled Kubernetes and includes an OPC UA connector and an edge MQTT broker — is a generally available Eventstream source that routes flows directly to OneLake. So the architecture has an edge tier whether you planned one or not.

Three things then decide the timeline, and none are Fabric decisions. Who owns the network segment — the historian sits on a plant network IT often does not administer, and getting a gateway approved is a governance conversation measured in weeks. Whether tags are documented — a historian with 40,000 tags and no dictionary is archaeology, not ingestion. And whether machine identifiers map to ERP work centres — without that mapping, OEE by product is unavailable no matter how much telemetry you land. The short version: start with 20–50 tags on two lines, prove the join to production orders, then widen.

OPC-UA appears nowhere in Fabric's 34 Eventstream source types. You need an edge tier — OPC-UA to MQTT or IoT Hub, then Eventstream — whether or not it was on the architecture diagram.

The medallion model applied to manufacturing entities

In a manufacturing Fabric lakehouse, Bronze holds source-shaped data as landed, Silver holds conformed manufacturing entities with harmonised identifiers and time bases, and Gold holds the facts and dimensions that OEE, OTIF, scrap and yield are calculated from. The design work is in Silver, not Bronze.

EntityWhat Silver must resolveThe trap
Work orderOne order key across ERP and MES; operation sequence; planned vs actualERP backflush timestamps at shift end; MES has the real ones — choose the time base deliberately
Batch / lotParent-child genealogy across split and merge; identifier format differencesRework loops create cycles in genealogy — handle them before a recall makes you
Downtime eventStart/end reconciled against machine state; reason taxonomy; planned vs unplannedA stoppage recorded twice (SCADA state + operator) double-counts unless deduplicated on overlap
Quality holdLink hold to batch to work order to customer order; status history, not just currentCurrent-status-only sources destroy history — capture transitions from day one
BOMMulti-level explosion; effectivity dates; alternates actually used on the lineLine consumption differs from the BOM — yield analysis needs actual issue records

Two Fabric features help here: Materialized Lake Views let you declare Bronze-to-Silver-to-Gold transformations as SQL with declarative data quality constraints, and Fabric IQ Ontology (preview) lets Batch, Work Order and Asset exist as governed business objects rather than a naming convention. Treat the ontology as a preview capability to pilot, not to build a 2026 programme around.

The metrics that get defined once

OEE, OTIF, scrap rate, first-pass yield and days inventory outstanding are the five metrics most often defined differently by different departments. Defining them once in Gold, with numerator, denominator and time base written down, removes the reconciliation meetings that consume operations management time every month.

MetricThe definition argumentCommon distortion
OEEWhether planned downtime and changeovers sit in the availability denominatorExcluding enough time from the denominator to reach 85%
OTIFOn-time against original or latest revised promise; line vs order levelRescheduling the promise date overwrites the commitment being measured
Scrap rateBy units or value; whether rework counts as scrapRecorded only at order close, so it cannot be attributed to a shift
First-pass yieldPass per operation, or per finished unit through the whole routeReported as an average of stages instead of a product of them
DIOWhich inventory counts; in-transit and consignment included?Blocked and quality-hold stock quietly excluded to improve the number

OEE deserves a specific warning: publishing OEE on a platform does not make it honest. Publishing OEE with its denominator visible does.

Serving in Direct Lake, and alerting people act on

Direct Lake semantic models read Delta tables in OneLake directly, so refresh is a metadata operation. The practical constraint is guardrails by SKU: an F64 or P1 allows 1,500 million rows per table with 25 GB of memory; an F32 allows 300 million rows. High-frequency machine telemetry crosses those numbers faster than most expect, which is why sensor data belongs in an Eventhouse queried in KQL, and aggregated machine-hour or shift-level facts belong in the Direct Lake model. Row-level security is the other design decision to take before go-live: Direct Lake on OneLake does not observe SQL-based RLS, so decide where a plant-only filter lives at design time.

Fabric Activator monitors eventstreams, reports and dashboards and triggers Teams messages, email, Power Automate flows and pipelines when a rule fires. Technically straightforward; organisationally where most control towers die. An alert with no named owner and no defined action gets muted within three weeks. Start with three rules a specific person is accountable for — a line down beyond a threshold, a batch approaching quality-hold expiry, a critical raw material below reorder point — and add more only when the first three have changed a decision.

Capacity and cost governance

Fabric is billed on a capacity SKU rather than per query, so cost control is a governance exercise. Three habits keep a manufacturing estate inside its capacity. Put ingestion and heavy Spark work in a workspace with its own consumption ceiling, so a badly written notebook cannot starve the shift-handover report. Do not ingest historian tags you have not mapped — telemetry is the single largest driver of unplanned consumption in industrial estates. And review the Fabric Capacity Metrics app monthly with a named owner, the way you review a utility bill.

The one number worth carrying into the SKU decision: F64 is the threshold at which report consumers no longer each need a Power BI Pro licence, and for a business with 200 plant and office users that changes the total cost comparison materially. Governance beyond cost sits with Microsoft Purview — sensitivity labels, DLP over lakehouses and warehouses, the Unified Catalog, and full audit logging of Fabric activity.

A realistic implementation sequence

  • Weeks 1–2 — Connect and land. Mirror the ERP where supported; Data Factory pipelines for MES and quality. Land Bronze exactly as received, fix nothing. In parallel, start network and gateway approval for the OT segment — the long pole.
  • Weeks 2–4 — Build the dimensions. Item, plant, work centre, machine, batch, shift calendar. If work centre and machine cannot be mapped to each other, stop and fix that before building facts.
  • Weeks 4–6 — Ship one slice. One production-order fact, in production, in Power BI, replacing an existing hand-maintained report. Six weeks means running in production and used by a named person, not a demo prototype.
  • Weeks 6–12 — Add the second and third entities. Downtime events and quality results, reusing dimensions already built. This is where OEE by line and first-pass yield become possible.
  • Weeks 12–20 — Widen OT ingestion and add alerting. Extend from pilot lines once tag mapping is proven; add the first three Activator rules.
  • Beyond week 20 — Predictive and prescriptive. Forecasting, quality prediction, maintenance models and agent-based access.

Unify the data. Predict with AI. Act with automation. In that order, without exception.

Where this breaks in mid-market manufacturing estates

Identifier mismatch between OT and ERP — machine and line identifiers in SCADA rarely match ERP work centres, and until somebody owns a maintained mapping table, OEE by product does not exist. Timestamps that describe administration, not physics — ERP confirmations backflushed at shift end place eight hours of production at 22:00, so any hourly-rate or shift analysis built on them is wrong. Quality systems that hold only current status — if your QMS overwrites hold status, hold duration is unrecoverable historically.

Historian volume against Direct Lake guardrails — second-interval data from a few hundred tags becomes billions of rows within months, breaching row and Parquet file guardrails below F64 and costing above it. Preview features in a production plan — Fabric IQ Ontology, MQTT as an Eventstream source, and SQL-query rules in Activator are all preview as of August 2026; pilot them, do not put a plant reporting commitment on them. And nobody owns the metric — where a metric has no owner, the model gets built, the dashboard gets published, and nothing changes. That is the most common reason a manufacturing analytics programme is judged a failure despite working correctly.

What to do first

Five questions to answer this week, before anybody provisions a capacity:

  • Can you produce a single mapping between SCADA/MES machine identifiers and ERP work centres — and does anybody own maintaining it?
  • Do your production confirmations carry a physical timestamp, or a backflushed administrative one?
  • Does your quality system record hold status transitions, or only current status?
  • How many historian tags do you have, and how many are documented?
  • Which one decision would change if the answer arrived at shift end instead of at month end, and who would make it?

If question five has no answer, pause — a platform without a decision attached becomes an expensive reporting layer. If the answer is "we would hold the batch before it shipped instead of processing a customer complaint six weeks later", you have a business case worth building. We build these estates on Microsoft Fabric, OneLake and Power BI, practitioner-led, on a fixed-scope or Fractional Data Consultant model.

Fabric handles the analytical layer well — but the value comes from the modelling underneath, and the failure modes are process problems the platform exposes rather than fixes. Book 30 minutes with Amit — no slides, no pitch deck, no obligation to proceed. A straight read on what your estate can support today and what would need to be true first.

Free Assessment

Where does your operation sit on the data maturity curve?

8 questions. 3 minutes. You get a scored breakdown across data infrastructure, analytics readiness, and automation potential — with a specific next step for your industry.

Data PlatformMicrosoft FabricManufacturingMedallionOEE

Your Data · Our Technology · Our Automation

Get practical insights every fortnight

Amit writes about Microsoft Fabric, Power BI, AI in operations, and digital transformation for manufacturing and supply chain leaders. Practitioner perspective - no fluff, no vendor spin.

No spam. Unsubscribe any time. Also on Substack.

FAQ

Common questions

Is Microsoft Fabric good for manufacturing?

Fabric suits manufacturers who need ERP, MES, quality and machine data joined in one governed model. It handles the analytical layer well — one storage format in OneLake, Direct Lake serving, real-time ingestion through Eventstream. It does not replace an MES, a quality management system or a scheduling engine, and expecting it to is the most common source of disappointment.

How does SCADA or historian data get into Microsoft Fabric?

Through an edge hop. OPC-UA is not a native Fabric Eventstream source. An OPC-UA connector publishes plant tags to an MQTT broker or Azure IoT Hub, and Eventstream ingests from there. Azure IoT Operations, which includes an OPC UA connector and an edge MQTT broker on Arc-enabled Kubernetes, is a supported Eventstream source and can route data flows directly to OneLake.

Can Microsoft Fabric connect to SAP S/4HANA?

Yes, by two routes. Mirroring for SAP runs through SAP Datasphere replication flows, which land data in an ADLS Gen2 container that Fabric merges into OneLake as Delta tables. Alternatively, Data Factory connectors extract from SAP directly. The Datasphere route is generally available as of 2026 documentation.

How long does a Microsoft Fabric manufacturing implementation take?

A first production slice — one production-order fact modelled properly and replacing an existing manual report — is realistic in six weeks where ERP data is reachable and work centre identifiers are mappable. Adding downtime and quality entities typically takes a further 6–8 weeks. Widening OT ingestion across a plant usually takes longer than the platform work, because of network and gateway approvals.

What Fabric capacity does a manufacturer need?

It depends on telemetry volume more than user count. F64 or P1 allows 1,500 million rows per Direct Lake table and removes the per-user Power BI Pro requirement for report consumers. Below F64, Direct Lake row and Parquet file guardrails tighten sharply, which matters if you intend to serve machine-level data rather than shift-level aggregates.

What usually goes wrong with Fabric projects in manufacturing?

Three things, in order: machine identifiers that cannot be mapped to ERP work centres; ERP timestamps that record when a confirmation was posted rather than when production happened; and metrics with no departmental owner. All three are process problems the platform exposes rather than fixes, and all three are cheaper to address before the build than during it.

Continue Reading

Related Articles

Data Platform

Microsoft Fabric vs a Legacy BI Stack (SSIS + SSAS + Power BI): The Migration Case

The most common estate I walk into is not a mess. It is an on-premises SQL Server, a set of SSIS packages built between 2014 and 2019, one or two SSAS cubes, and Power BI bolted on the front. It runs. Finance closes on it. The reason I get called is a symptom — the person who wrote the packages left, the overnight batch now finishes at 07:20 and the plant meeting is at 07:30. "It is old" is not a business case.

16 min read

Data Platform

Microsoft Fabric vs SAP Datasphere: Which One Do You Actually Need

The SAP account team says the analytics answer is SAP Datasphere, because that is where the business semantics already live. Two weeks later the Microsoft team says Fabric, because that is where Power BI, the MES extracts and the 3PL feeds already live. Both are internally consistent, and neither mentions the other except to dismiss it. The IT Head is asked to pick, and picks badly — because the two products solve different halves of one problem.

16 min read

Data Platform

The Hidden Costs of a Microsoft Fabric Migration Nobody Tells You About

The awkward conversation happens in month five, not month one. The platform works. The first three reports are live. Then the finance business partner circulates the actual run-rate against the approved business case, and the number is 30–50% over — not because the partner overran, but because six or seven cost lines were never in the case at all. I sell Fabric implementations. This names the costs my own proposals have to cover.

15 min read

Want to see how MDI solves this in your industry? Explore industry solutions

Is this the challenge you're facing?

Book a 30-minute call. We'll look at your specific operation and tell you what's achievable - plainly and without slides.