Cloud Data Platforms Data Engineering Microsoft Fabric

Dynamics 365 to Microsoft Fabric: Complete Migration Guide

Dynamics 365 to Microsoft Fabric: Complete Migration Guide
Microsoft Fabric Data Engineering Cloud Data Platforms

Dynamics 365 to Microsoft Fabric: Complete CRM and ERP Migration Guide

⏱️14 min read
Microsoft Fabric · Data Engineering
Architecture diagram showing Dynamics 365 CE and Finance and Operations connecting to Microsoft Fabric via Dataverse Link to Fabric and Azure Synapse Link, with data flowing into OneLake Delta Parquet format

Two paths, one destination: Dataverse Link to Fabric (no-ETL shortcut) and Azure Synapse Link (export to your own storage) both land Dynamics 365 data in OneLake - the architecture determines which is right for your organisation.

Moving Dynamics 365 to Microsoft Fabric is now the standard path for organisations that want to unify CRM and ERP data with their broader analytics estate - without building and maintaining custom ETL pipelines between systems that should never have been separated. The mechanism that makes this possible, Dataverse Link to Fabric, is in general availability and received a significant upgrade in June 2026: low-latency sync now reduces data freshness from up to two hours down to under 15 minutes for most environments.

This guide covers every available migration path - Dataverse Link to Fabric, Azure Synapse Link for Dataverse, and what to do if your organisation is still running the now-decommissioned Export to Data Lake or BYOD - with precise steps, genuine trade-offs, and the architectural decisions that determine whether your Dynamics 365 data arrives in Fabric clean and usable or becomes a long-term maintenance liability.

📣 Feature Status

Dataverse Link to Fabric is generally available. The low-latency sync engine reached GA on June 9, 2026, with rollout completing mid-to-late July 2026. Export to Data Lake was deprecated November 1, 2024, and fully decommissioned March 25, 2025. If you are still on BYOD or a legacy export path, migration is overdue.

Why Organisations Are Moving Dynamics 365 to Microsoft Fabric

Dynamics 365 generates some of the most operationally significant data in any organisation - sales opportunities, customer service cases, finance transactions, inventory movements, purchase orders, and HR records. The problem has always been that this data lived in an operational system designed for transactional throughput, not analytical depth. Getting it out for reporting meant either tolerating Power BI's DirectQuery latency against live Dataverse, running scheduled exports that were often hours stale, or building custom pipelines that had to be maintained every time a Dynamics schema changed.

Microsoft Fabric changes the equation structurally. By linking Dynamics 365 directly into OneLake - Fabric's unified data lake - organisations can run Power BI semantic models, Fabric notebooks, Spark-based transformations, and AI agents against live operational data without any custom pipeline between Dynamics and the analytics layer. The data stays in Dataverse under Dataverse governance; Fabric reads it through shortcuts rather than copies. This is not a migration in the traditional sense - it is an integration that removes the gap between the operational and analytical estates.

"The fastest way to lose analytical trust in a Dynamics 365 deployment is to let the reporting layer fall hours behind the operational system. Fabric Link closes that gap structurally rather than by tuning a pipeline."

Three specific pressures are driving adoption in 2026. First, the decommissioning of Export to Data Lake in March 2025 forced every organisation still on that path to move - and most chose Fabric Link over rebuilding on Azure Synapse Link from scratch. Second, the June 2026 low-latency sync GA brought Fabric data freshness to under 15 minutes, making it viable for near-real-time operational dashboards that Export to Data Lake never supported at reasonable cost. Third, Microsoft's Copilot investments in both Dynamics 365 and Fabric are substantially more powerful when both systems share a data layer - an agent that can read and write Dataverse, and analyse that data through Fabric's compute layer, operates without the context loss that happens when operational and analytical systems are separate.

Understanding the Dynamics 365 to Microsoft Fabric Architecture

Before choosing a migration path, it helps to understand what Dynamics 365 actually consists of from a data perspective, because the architecture differs between product families and determines which integration approach applies.

Dynamics 365 Customer Engagement (CE) applications - Sales, Customer Service, Field Service, Marketing, Customer Insights - store data natively in Microsoft Dataverse. Dataverse is the platform layer, and CE apps are essentially structured tables and business logic on top of it. Because CE data is already in Dataverse, it is directly accessible via Dataverse Link to Fabric with no additional configuration beyond enabling the link.

Dynamics 365 Finance and Operations (F&O) - Finance, Supply Chain Management, Commerce, Human Resources - uses a separate data architecture. F&O does not store data natively in Dataverse; it has its own database. However, it is integrated with Dataverse via the Dual-write and Virtual Entities features. To include F&O tables in a Fabric link, you must explicitly add them through the "add tables" option after creating the initial link - they are not auto-selected the way CE tables are.

Dynamics 365 Business Central is a separate product with its own architecture and does not use Dataverse natively. Business Central data requires a different integration approach - typically through Business Central APIs, OData feeds, or a Data Factory pipeline - and is outside the scope of Dataverse Link to Fabric.

Dataverse Link to Fabric: The No-ETL Migration Path

Dataverse Link to Fabric is Microsoft's preferred integration method for moving Dynamics 365 data into Microsoft Fabric. It requires no ETL pipeline, no data duplication into external storage, and no custom transformation code. When you create a Fabric link from Power Apps, Dataverse creates shortcuts from the Dataverse data lake directly into OneLake - meaning the data stays inside the Dataverse governance boundary, and Fabric reads it via those shortcuts rather than maintaining its own copy.

No-copy architecture
Data remains in Dataverse storage. Fabric accesses it through OneLake shortcuts rather than importing or duplicating it. This eliminates the storage cost and governance complexity of maintaining two copies of the same operational data.
Delta Parquet format
Dataverse replicates data in Delta Parquet format - the native format for Fabric Lakehouses, Warehouses, and DirectLake semantic models. No format conversion is needed; the data is analytics-ready the moment the link is established.
Under 15-minute latency (post June 2026)
The low-latency sync engine, generally available from June 2026, reduces incremental sync from up to two hours to under 15 minutes for most observed cases. Finance and Operations throughput increased to over 1 million records per hour per table.
Automatic lakehouse and SQL endpoint
Dataverse automatically generates an enterprise-ready Fabric Lakehouse, SQL analytics endpoint, and Power BI dataset for your Dynamics data - without any manual Fabric item configuration required from the data team.
Workspace Identity and Service Principal authentication
As of the 2026 update, Fabric Link supports Workspace Identity and Service Principal authentication alongside organisational account credentials - enabling automated, non-interactive deployments and CI/CD pipelines for production environments.

One limitation specific to CE environments: when linking a Dynamics 365 CE environment, all Dataverse tables are included in the link - there is no table-level selection for the CE portion. You can subsequently stop syncing specific tables to reduce storage costs via the Manage tables option, but the initial setup is all-or-nothing for CE. Finance and Operations tables, by contrast, are not auto-selected and must be added manually - giving F&O more granular control from the start.

Azure Synapse Link for Dataverse: When You Need More Control

Azure Synapse Link for Dataverse is the older integration path and remains fully supported. Where Dataverse Link to Fabric keeps data inside the Dataverse governance boundary, Azure Synapse Link exports data to your own Azure Data Lake Storage Gen2 account, giving your team full control over the storage infrastructure, retention policies, and data lake organisation.

Synapse Link supports two storage modes. The first exports data in CSV format with no transformation - the lowest-cost option with the least transformation effort to read raw, but requiring your own pipeline to make it analytics-ready. The second enables the Delta Lake option, which runs Microsoft-managed notebooks to create Delta tables in Synapse or a Fabric Lakehouse, producing the same Delta Parquet format as Fabric Link but with the data residing in your own ADLS Gen2 account rather than Dataverse-managed storage.

Synapse Link is the right choice in three specific scenarios: when your organisation requires data to reside in storage you own and control for compliance or audit reasons; when you need to integrate Dynamics data with non-Microsoft data sources in the same pipeline before it reaches Fabric; or when your Fabric capacity is constrained and you want to manage Lakehouse storage costs independently of Dataverse storage billing.

Fabric Link vs Azure Synapse Link: How to Choose

Dimension Dataverse Link to Fabric Recommended Azure Synapse Link
Data movement No copy - shortcut in OneLake Exports to your ADLS Gen2 account
Storage ownership Dataverse-managed, Dataverse billing Your own Azure storage account
ETL pipeline required ✓ None ✓ None (Delta option) / CSV requires your own pipeline
Latency (post June 2026) Under 15 minutes (low-latency sync) Configurable; similar with Delta option
CE table selection All tables - no selection at link creation Selective - choose specific tables
F&O table selection Selective via "add tables" option Selective
Output format Delta Parquet (native Fabric format) Delta Parquet or CSV
Auto-generated Lakehouse ✓ Yes - automatic ✗ Manual configuration required
Compliance - data residency Data stays in Dataverse boundary Data in your ADLS - full control
Microsoft roadmap priority ✓ Primary investment path Supported but secondary
Best for Most organisations - simpler, faster, lower cost Strict data residency, ADLS control needs

For most organisations evaluating how to migrate Dynamics 365 to Fabric in 2026, Dataverse Link to Fabric is the correct choice. It requires less infrastructure, produces analytics-ready data faster, and sits on Microsoft's primary investment path. Azure Synapse Link remains valid when regulatory or compliance requirements mandate that data reside in storage your organisation owns and controls.

Migrating Dynamics 365 Finance and Operations to Microsoft Fabric

Finance and Operations data integration with Fabric is the most technically involved path because F&O does not store data natively in Dataverse. The integration relies on the Dual-write feature, which synchronises F&O entities into Dataverse tables in near-real time, making those tables visible to the Fabric link.

Alternatively - and this is the more commonly used path for analytics - F&O tables can be added directly to an existing Dataverse Fabric link via the "add tables" option in Power Apps. This requires that the Dataverse environment is linked to the F&O environment, which is a prerequisite typically established during the Dynamics 365 setup rather than during the Fabric migration. When you add F&O tables, change tracking must be enabled for each table in F&O before synchronisation will work.

Key F&O tables commonly linked to Fabric

The most analytically useful F&O tables for Fabric integration include General Ledger journals and postings (GeneralJournalEntry, LedgerJournalTrans), sales and purchase order headers and lines, inventory tables (InventTable, InventSum), vendor and customer master data (VendTable, CustTable), and budget and forecast entities. Each must have change tracking enabled before being added to the link - enabling change tracking on a large table can take time on initial sync and should be planned for, not done immediately before a go-live.

⚠️ Important

For Finance and Operations apps, data is partitioned by year in OneLake by default - all Parquet files are split by year. The initial sync duration depends on data volume and can range from minutes to several hours for large tables. Plan the initial sync window accordingly and do not schedule it immediately before a critical reporting period.

Migrating Dynamics 365 Customer Engagement to Microsoft Fabric

Dynamics 365 Customer Engagement migration to Fabric is the simpler path because CE data is native Dataverse. Sales opportunities, accounts, contacts, leads, service cases, activities, and all custom entities created in your CE environment are already Dataverse tables and are immediately available to the Fabric link without any additional integration step.

The significant architectural decision for CE environments is the all-or-nothing table selection at link creation. When you create a Fabric link from a CE-heavy Dataverse environment, all tables - including system tables, audit tables, and metadata tables - are included by default. This can generate substantial Dataverse storage consumption, particularly in large environments with many custom entities and extensive audit logging. The post-link step of reviewing and stopping sync on high-volume, low-analytical-value tables is not optional for cost management - it is a required part of the implementation.

For organisations running Dynamics 365 Customer Insights (the CDP product), the tables required for Customer Insights are automatically included in the Fabric link if Customer Insights is installed in the same environment. This makes the unified customer profile available in Fabric for cross-source customer analytics without any additional configuration.

Legacy Migration: Export to Data Lake, BYOD, and Data Export Service

Three legacy integration services have been deprecated and require migration if still in use. Each has a different target path:

Export to Data Lake - decommissioned March 25, 2025
Deprecated November 1, 2024 and fully decommissioned March 25, 2025. A one-time extension to February 15, 2025 was available. If your organisation is still referencing Export to Data Lake configurations, those connections are non-functional. Migration path: Dataverse Link to Fabric (preferred) or Azure Synapse Link for Dataverse.
BYOD (Bring Your Own Database)
BYOD exports F&O data to an Azure SQL Database on a scheduled basis. It still functions but is not recommended: it requires manual setup, does not scale well for large data volumes, lacks Delta format output, and is not on Microsoft's long-term roadmap. Migration path: Azure Synapse Link for Dataverse with F&O tables selected.
Data Export Service
An older service that exported CE/Dataverse data to an Azure SQL Database. Deprecated and replaced by Synapse Link and Fabric Link. Migration path: Dataverse Link to Fabric, which provides the same CE data in analytics-ready Delta Parquet format without the Azure SQL intermediate layer.

For any of these legacy paths, the migration is not just a technical switch - it typically requires rebuilding downstream Power BI semantic models or pipelines that were reading from the old export destination, because the data format, table names, and schema conventions differ between the legacy exports and the Delta Parquet tables produced by Fabric Link. Budget time for semantic model updates alongside the technical migration.

Step-by-Step: How to Migrate Dynamics 365 to Fabric via Dataverse Link

The following steps cover creating a new Dataverse Link to Fabric from a Power Apps environment that includes CE data, with F&O tables added separately.

Step 01
Verify prerequisites
Confirm you have a Fabric-capacity-backed workspace (any F-SKU), System Administrator rights in the Power Apps environment, and Fabric Workspace Admin or Member role. The Fabric capacity and the Dataverse environment must be in the same Microsoft Entra tenant.
Step 02
Open Power Apps and navigate to Link data
Sign in to make.powerapps.com, select your environment from the top-right environment picker, then choose Link data from the left navigation panel.
Step 03
Create a new Fabric link
Select + New link → Fabric link. In the connection setup wizard, choose your authentication method - Workspace Identity or Service Principal is recommended for production environments over an organisational account. Select the target Fabric workspace and Lakehouse, or allow Dataverse to create a new Lakehouse automatically.
Step 04
Add Finance and Operations tables (if applicable)
After the initial link is created, select Manage tables to open the table management pane. If your environment is linked to a Dynamics 365 F&O environment, the "add tables" option will be available. Select the F&O tables required for your analytics workloads and confirm that change tracking is enabled for each in F&O before proceeding.
Step 05
Unlink high-volume, low-value tables
For CE environments, review the full table list and stop syncing system tables, audit tables, and any custom entities not required for reporting. Use the Manage tables pane to uncheck tables you do not need. This step is critical for managing Dataverse storage consumption and keeping the Lakehouse organised.
Step 06
Monitor the initial sync
View the status of each table by selecting Manage tables - the status column shows Initial sync in progress, Active, or Error. Large tables with millions of records may take several hours for the initial sync. Do not build Power BI semantic models or Fabric notebooks against these tables until their status is Active.
Step 07
Validate in the Fabric Lakehouse
Open the auto-generated Lakehouse in your Fabric workspace. The Dynamics 365 tables appear as Delta table shortcuts. Run a T-SQL or Spark query against one or two key tables to validate row counts and schema against the source. Check the SinkModifiedOn column to confirm the sync timestamp is within expected latency.
Step 08
Build semantic models and reports
Create Power BI semantic models using DirectLake mode against the Dynamics 365 tables in the Fabric Lakehouse. For cross-source analytics - combining Dynamics data with warehouse, financial, or IoT data - create Fabric Lakehouses that join the Dataverse shortcuts with other OneLake data, then build the semantic model over the joined layer rather than directly over the shortcut tables.

Power BI and AI on Dynamics 365 Data in Fabric

The strategic value of connecting Dynamics 365 to Microsoft Fabric extends well beyond replacing a data export job. Once Dynamics data is in OneLake, it becomes part of the shared analytical estate that all Fabric workloads - Power BI, Spark notebooks, Data Warehouse, Real-Time Intelligence, and AI agents - can access without duplication.

For Power BI, the immediate benefit is DirectLake semantic models. Rather than importing Dynamics data into a Power BI dataset on a refresh schedule, a DirectLake model reads directly from the Delta Parquet files in the Fabric Lakehouse. Combined with the low-latency sync introduced in June 2026, this means a Power BI report on sales pipeline, service case volume, or inventory levels can reflect Dynamics transactions from within the last 15 minutes - at no additional compute cost beyond the Fabric capacity already consumed by the Lakehouse.

For AI and Copilot, the integration is more architecturally significant. Microsoft's Copilot in Dynamics 365 and Copilot in Fabric are more capable when they share a data layer. An AI agent that needs to read a customer's open service cases, analyse historical purchase patterns, and trigger a Dynamics workflow based on the analysis can do all three within a single governed boundary - reading from OneLake, computing in Fabric, and writing back through Dataverse - rather than crossing three separate API boundaries with separate authentication and rate limits.

Governance, Security, and Compliance After Migration

The no-copy architecture of Dataverse Link to Fabric means that Dataverse's own security model governs access to the data. Row-level security defined in Dataverse does not automatically propagate to Fabric - users accessing the Fabric Lakehouse directly can read all rows in the linked tables regardless of their Dynamics 365 role assignments. This is a critical governance point that often surprises teams migrating from Export to Data Lake, which had the same limitation.

The practical implication: access to the Fabric Lakehouse containing Dynamics shortcuts should be governed through Fabric workspace permissions, not assumed to inherit Dataverse row-level security. Sensitive Dynamics entities - employee records, financial postings, customer PII - should have their Fabric workspace access restricted to the same population that would have access in Dynamics, and any Power BI reports exposing this data should implement their own row-level security at the semantic model level.

For organisations in regulated industries - healthcare, financial services, government - confirm that your Fabric capacity region matches the data residency requirements for the Dynamics data you are linking. Dataverse and Fabric capacity must be in the same tenant, but need not be in the same region; cross-region data access should be reviewed against any data sovereignty obligations before enabling the link in production.

Common Mistakes When Connecting Dynamics 365 to Microsoft Fabric

Building reports before initial sync completes
Tables in Initial sync status contain incomplete data. Power BI semantic models or Fabric notebooks built against them will produce incorrect results that persist in published reports until someone notices. Always wait for Active status before building downstream assets.
Linking all CE tables without reviewing storage impact
In large CE environments, linking all Dataverse tables can add significant Dataverse storage consumption, which is billed separately from Fabric capacity. Run a storage audit immediately after initial sync and unlink tables with high row counts that serve no analytical purpose.
Assuming Dataverse row-level security carries into Fabric
It does not. Anyone with Fabric Lakehouse access can read all rows in linked tables. Govern Fabric workspace permissions carefully and implement row-level security in semantic models for any sensitive Dynamics entities.
Forgetting to enable change tracking on F&O tables
Finance and Operations tables require change tracking enabled in F&O before they can sync to Fabric. Adding an F&O table to the Fabric link without change tracking enabled will result in the table sitting in a perpetual pending state with no clear error message.
Using SinkModifiedOn to measure data latency
SinkModifiedOn reflects when the record was last written to the Dataverse data lake, not when the original transaction occurred. For long-running F&O transactions, a record may be synced multiple times within a short window, making SinkModifiedOn an unreliable latency measure. Use it as an operational signal, not as a latency SLA metric.
Not planning for schema changes
When a Dynamics developer adds or removes a column on a Dataverse entity, the Fabric shortcut schema changes too. Downstream semantic models or notebooks that reference the removed column will break. Establish a schema change notification process between the Dynamics team and the Fabric/data team before going live.
Microsoft Fabric Consulting
Planning a Dynamics 365 to Microsoft Fabric migration?
Numlytics helps enterprise teams assess their Dynamics 365 data estate, design the right Fabric integration architecture - Dataverse Link, Synapse Link, or hybrid - and build the governance frameworks that keep Dynamics data accurate and secure in OneLake.
Get Free Proposal →

Conclusion: Choosing the Right Path to Migrate Dynamics 365 to Fabric

The decision to migrate Dynamics 365 to Fabric is now less a question of whether and more a question of which path and when. Export to Data Lake is gone. BYOD is deprecated and unfit for modern analytics or AI workloads. The two viable paths - Dataverse Link to Fabric and Azure Synapse Link - are both in active development, but their roadmap priority differs markedly: Microsoft's primary investment is in Fabric Link, and the June 2026 low-latency sync update is the most tangible evidence of that.

For most organisations, Dataverse Link to Fabric is the correct starting point. It requires the least infrastructure, produces analytics-ready data the fastest, and creates the shortest path between a Dynamics transaction and a Power BI report or a Copilot agent response. Azure Synapse Link remains valuable when data residency requirements mandate storage ownership, but that is a compliance-driven exception rather than the general case.

Numlytics specialises in Microsoft Fabric migration and has worked with enterprise teams across the US, UK, Australia, and UAE to connect Dynamics 365 estates to Fabric - from initial architecture decisions through to production go-live, semantic model build, and ongoing data quality monitoring. If your team is evaluating the migration or has already started and hit an obstacle, speak with a certified Fabric consultant and receive a scoped proposal within 24 hours.