---
title: Dynamics 365 + Copilot — Getting Your Migrated Data Ready for AI
slug: dynamics-365-copilot-getting-your-migrated-data-ready-for-ai
date: 2026-05-04
author: Raaj
categories: [Microsoft Dynamics 365, General]
excerpt: Dynamics 365 Copilot only delivers when data is clean and mapped to Dataverse. Learn the 6 quality dimensions and prep tasks to make your migration AI-ready.
tldr: "Copilot in Dynamics 365 is now agentic — it acts on your data, not just reads it. Dirty migrated data means AI that hallucinates at scale. Fix master data before cutover."
canonical: https://clonepartner.com/blog/dynamics-365-copilot-getting-your-migrated-data-ready-for-ai/
---

# Dynamics 365 + Copilot — Getting Your Migrated Data Ready for AI


If you're evaluating Dynamics 365 Copilot in 2026, the gating factor is not feature availability. Microsoft's 2026 Wave 1 expands AI across Sales, Finance, Supply Chain, Customer Insights, and Business Central. The real question is whether your migrated data is structured well enough for those features to actually work. If you lift and shift legacy ERP or CRM data into Dynamics 365 without restructuring it, Copilot will not generate insights — it will hallucinate, return blank responses, or confidently present incorrect data to users who trust it.

Copilot is a reasoning engine, not a database. It relies entirely on the semantic structure, relationships, and cleanliness of your underlying data in Dataverse. This guide covers the technical prerequisites required to make legacy data AI-ready before you migrate. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/release-plan/2026wave1/))

## The 2026 Wave 1 Reality: Copilot Is Now Agentic

Copilot in Dynamics 365 is no longer a chatbot that summarizes emails. Microsoft's 2026 release wave 1 moves Copilot from a productivity assistant into an agentic operating layer embedded across finance, supply chain, HR, commerce, and ERP. The company added Copilot agents to sales, finance, HR, and supply chain — systems that don't assist workers so much as act on their behalf by completing tasks, triggering approvals, and making decisions autonomously across enterprise data.

Concrete examples from the release: a Copilot agent for Dynamics 365 Sales autonomously researches prospects, drafts outreach, and updates CRM records without human prompting. Built-in agents including the Sales Order Agent and Payables Agent automate invoice processing, purchase order matching, and sales document creation.

Business Central's **Payables Agent** shows the pattern clearly. It runs autonomously in the background, drafts invoices, identifies vendors, and explains why it suggested certain values. Microsoft still treats vendor creation and draft finalization as high-risk actions that require human approval — which tells you something about the confidence level even Microsoft places on fully autonomous operation. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/business-central/payables-agent))

This shift fundamentally changes the risk profile of your data migration. When AI only generates text summaries, bad data results in a confusing paragraph a human can spot and ignore. When AI becomes agentic — actually executing tasks — bad data causes real damage: wrong pricing applied to orders, duplicate payments processed, outreach sent to the wrong contacts. If your legacy migration brings over duplicate vendor records, stale pricing tiers, or unlinked customer profiles, an autonomous agent will act on all of it at machine speed.

Agentic AI doesn't improve bad data. It acts on bad data, at scale, faster than humans can intervene.

## What AI-Ready Data Actually Means in Dataverse

**AI-ready data** is data that is structured, complete, and mapped to Dataverse tables so that Copilot's indexing layer can retrieve and reason over it.

This matters because of how Copilot finds information. It does not run standard SQL queries against your relational tables. All generative AI-powered experiences — Copilot, Agents, AI Builder — require **Dataverse search**. Dataverse search maintains both structured and unstructured indexes that power AI experiences across Dynamics 365 and Power Platform. ([learn.microsoft.com](https://learn.microsoft.com/en-us/power-apps/user/relevance-search-benefits))

Dataverse Search is enriched with an intelligent semantic layer that understands the business data schema and adds true business data understanding for agents to operate. But this semantic layer can only work with what it's given. If your legacy system stores customer names in free-text fields with inconsistent formatting, the semantic layer has nothing structured to index against.

Here's the architecture you need to understand:

- **Work IQ** is the intelligence layer that powers Copilot. Where Work IQ grounds Copilot in productivity artifacts like files, meetings, and messages, Dataverse intelligence extends this foundation to structured business data, enabling agents to understand and act on your organization's systems of record.
- **Copilot Agents are stateless by design.** They don't remember past interactions unless you give them a memory layer. Dataverse is that memory layer — the enterprise memory and intelligence layer that makes Copilot Agents reliable, auditable, and operational.

> [!WARNING]
> **Dataverse search must be turned on.** If Dataverse search is Off, generative AI experiences that rely on Dataverse will not work. If the right tables and columns are never made searchable, Copilot cannot retrieve them — even though the environment looks AI-enabled. This is a configuration step many migration teams miss entirely. ([learn.microsoft.com](https://learn.microsoft.com/en-us/power-platform/admin/configure-relevance-search-organization))

A lift-and-shift migration that dumps legacy data into Dynamics 365 without restructuring it for Dataverse tables is building on sand. The data exists in the system, but Copilot can't retrieve it, relate it, or act on it. Legacy ETL tools treat Dynamics 365 like a filing cabinet — they push rows from an old SQL database into Dataverse tables without rebuilding the relational graph or configuring searchable columns.

A Dataverse-friendly mapping looks more like this than a flat CSV dump:

```text
LegacyOpportunity.CustomerNo   -> account.accountnumber
LegacyOpportunity.PrimaryRep   -> opportunity.ownerid
LegacyOpportunity.MainContact  -> opportunity.parentcontactid
LegacyQuote.OpptyKey           -> quote.opportunityid
StakeholderJoin                -> connection (role = stakeholder)
```

Microsoft recommends synonyms and glossary definitions for Dataverse tables and columns used as agent knowledge, and warns that multiline text or file backfill can take up to two days if those fields were not configured as searchable before knowledge was added. ([learn.microsoft.com](https://learn.microsoft.com/en-us/microsoft-copilot-studio/knowledge-add-dataverse))

If your migration partner talks only about record counts and API throughput, ask how they handle searchable tables, glossary terms, relationship repair, and data freshness. If they can't answer that, you're buying cloud hosting, not Copilot readiness.

For a deeper breakdown of why traditional ETL approaches struggle with relational mapping in Microsoft's ecosystem, see [SSIS vs Azure Data Factory vs ClonePartner](https://clonepartner.com/blog/blog/dynamics-365-migration-ssis-kingswaysoft-vs-adf-vs-clonepartner/).

## The 6 Data Quality Dimensions Copilot Demands

Microsoft's **Data Prep Report** in Customer Insights grades data quality across pillars including completeness, consistency, uniqueness, accuracy, timeliness, validity, and integrity. The feature is currently in preview — available in US and Switzerland environments as of February 2026 — but the thresholds reflect permanent architecture, not a preview feature. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/customer-insights/data/data-prep-overview))

> [!NOTE]
> **Data Prep Report baselines:** Microsoft's current benchmark requires mapped activities and relationships, at least 100 customer records (preferably 1,000), at least 1 year of transaction history (preferably 2–3), and less than 20% missing values in required fields. Failing these thresholds prevents Copilot from generating insights.

### 1. Completeness

The Data Prep Report requires that essential fields have **less than 20% missing values**. If your legacy CRM has a 40% empty rate for "Industry" or "Annual Revenue," Copilot's segmentation and forecasting features will fail to activate.

In Sales, opportunity summaries pull from fields like `estimatedvalue`, `estimatedclosedate`, `parentcontactid`, and `parentaccountid`. If those are blank, the summary degrades immediately. The same pattern applies in ERP: missing vendor data, missing confirmed ship dates, and missing transaction history leave Copilot with very little to ground on. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/sales/understand-copilot-summaries))

During migration, audit required fields and either backfill them, set defensible defaults, or archive the incomplete records.

### 2. Consistency

If your legacy ERP uses "US," "USA," "United States," and "U.S.A." interchangeably, Copilot treats them as four different regions. This breaks geographic forecasting and territory management.

The same applies to financial dimensions. If dimension values use different naming conventions across legal entities — "SALES-NA" vs "Sales North America" vs "SNA" — Finance Copilot will produce inconsistent financial summaries. Business Central's Dataverse integration relies on table mappings, field mappings, synchronization rules, and coupled records. Inconsistent status values, dimensions, and address formats turn those couplings brittle fast. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/business-central/admin-synchronizing-business-central-and-sales))

Normalize categories, addresses, units, and dimensions before cutover.

### 3. Uniqueness

Duplicate records are the fastest path to Copilot hallucinations. If an agent queries "Acme Corp" and finds three account records with conflicting open opportunities, it will either merge the data incorrectly or fail to provide a definitive answer.

The stakes are higher with agentic features. The **Payables Agent** matches invoices to known vendors and accounting codes — Microsoft notes that vendor matches and account classifications can be inaccurate and improve when vendor and chart-of-accounts data are clean. Duplicate vendor records with different payment terms mean the agent might process payment at net-60 instead of net-30. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/business-central/faqs-payables-agent))

In Sales, duplicates split account history across records and weaken relationship summaries. High-volume legacy systems are notorious for duplicates. See [Why Standard Adapters Fail on High-Volume Data](https://clonepartner.com/blog/blog/why-dynamics-365-migration-tools-fail-at-scale/) for more on handling this at scale.

### 4. Validity

Data must conform to expected formats and business rules in the target Dataverse schema. Legacy systems often allow free-text entry in fields that Dynamics 365 expects as strict option sets or dates. If a text string is forced into a date field during migration, Dataverse will reject it — or store it in a corrupted state the semantic index cannot parse.

Microsoft notes that the product number in Supply Chain Management is also the product number in Dataverse. Invalid UOMs, recycled item IDs, or nonsense dates don't produce smart AI — they produce bad automation. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/supply-chain/pim/product-identifiers))

### 5. Timeliness and Historical Depth

Copilot requires a baseline of historical data to establish trends, but it chokes on irrelevant, decades-old noise. The Data Prep Report looks for **1–3 years of transaction history** to build accurate models. Moving 15 years of closed purchase orders bloats Dataverse storage costs and confuses the AI.

Freshness matters too. Dynamics 365 Sales uses audit history from the last two months for opportunity stage updates. Business Central's scheduled synchronization is job-queue based and does not guarantee real-time consistency. If your pipeline or supplier state drifts for days before sync, Copilot will summarize stale reality with confidence. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/business-central/admin-synchronizing-business-central-and-sales))

Choose your sync pattern based on how current Copilot's context needs to be for each use case. For guidance on defining historical scope, see [What Data Should You Actually Migrate to Your New ERP?](https://clonepartner.com/blog/blog/what-data-should-you-actually-migrate-to-your-new-erp/)

### 6. Relational Integrity

Copilot navigates your business via a graph of relationships. An opportunity must link to an account, a contact, and a product line. Opportunity summaries use quote relationships via `opportunityid`, stakeholder links via the `connection` entity with the `stakeholder` role, and closed opportunity history tied back to the parent account. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/sales/understand-copilot-summaries))

BOMs define the components required to produce a product. If your migration brings over orphaned records — contacts with no parent account, invoices with no associated vendor, BOMs with broken component links — Copilot has data but not context. Preserve every relationship you expect AI to reason about.

## Pre-Migration Data Prep Tasks by Copilot Use Case

Different Copilot features depend on different data. Align your migration transformations with the specific agents your team intends to use.

### Sales Copilot

Copilot in Dynamics 365 Sales draws on data spanning CRM and Microsoft 365 signals — email and meeting recaps — to deliver actionable insights.

**Required cleanup:**

- **Customer master deduplication.** Merge duplicate accounts. Standardize account names, normalize addresses, and ensure parent-child account hierarchies are explicitly defined. Copilot uses these hierarchies to summarize total account health; disconnected subsidiaries produce incomplete summaries.
- **Contact record hygiene.** Every contact needs a valid email, a linked account, and a role or title. Missing stakeholder fields cause Copilot's meeting prep to produce generic filler instead of actionable briefings.
- **Opportunity stage consistency.** Standardize pipeline stages before migration. If legacy stages are "Interested," "Hot Lead," and "Probably Buying" with no clear mapping to Dynamics 365 stages, Copilot's forecasting is useless. Close out stale opportunities — three-year-old "open" records will skew pipeline analysis and confuse the Sales Agent's prioritization logic.
- **Activity history and relationships.** Migrate 1–3 years of emails, calls, and meetings linked to the correct contacts and accounts. Populate `parentaccountid`, `parentcontactid`, `estimatedvalue`, and `estimatedclosedate` on open opportunities. Rebuild quote-to-opportunity links and stakeholder connections. Preserve closed opportunity history so account summaries have real context.

### Finance Copilot

The Finance Agent supports reconciliation, variance analysis, data preparation in Excel, and customer communications in Outlook.

**Required cleanup:**

- **GL account descriptions.** Copilot uses natural language processing to understand your chart of accounts. If your GL descriptions are cryptic abbreviations from a 1990s AS/400 system, Copilot will not understand them. "Account 4100" is meaningless; "Product Revenue – North America" is useful. Expand and standardize descriptions before import.
- **Dimension consistency.** Standardize dimension values across all legal entities before migration. Inconsistent cost center naming breaks cross-entity reporting and makes Finance Copilot's variance analysis unreliable.
- **Vendor master consolidation.** Merge duplicate vendors. Normalize payment terms and banking details. The Payables Agent processes invoices against whatever record it finds first. Note its current constraints: it only processes emails with PDF attachments, skips emails with more than 10 attachments, and handles up to 100 emails per day in batches of 50, with PDFs at 5 MB or smaller and up to 10 pages. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/business-central/payables-agent))

For more on what financial data to move vs. archive, see [What Data Should You Actually Migrate to Your New ERP?](https://clonepartner.com/blog/blog/what-data-should-you-actually-migrate-to-your-new-erp/)

### Supply Chain Copilot

The Supplier Communications Agent reads vendor emails and takes action based on rules defined by the business. AI-powered warehouse picking, inventory rebalancing, and demand planning incorporate price-demand correlation and capacity-to-promise date protection.

**Required cleanup:**

- **Item master enrichment.** Ensure all SKUs have complete descriptions, weight, dimensions, categories, units of measure, and lead times. Missing item attributes prevent Copilot from suggesting alternatives during stockouts or calculating shipping impacts. Make product numbers stable and global where possible — Microsoft recommends avoiding legal-entity-specific identifiers. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/supply-chain/pim/product-identifiers))
- **BOM accuracy.** Validate that all Bills of Materials are active and correctly linked to component items. Broken parent-child relationships cascade errors through capacity planning and production calculations.
- **Supplier consolidation.** Standardize supplier names, email identities, lead times, and purchase-order references. The Supplier Communications Agent needs one canonical supplier record per vendor to match emails to the right PO and detect changes in quantity, price, delivery date, and cancellation.

## Why Migration Is Your Only Window to Fix Master Data

Many IT leaders assume they can lift and shift messy data now and clean it up inside Dynamics 365 later. This is a miscalculation.

Once data lands in production, fixing master data becomes an operational firefight. Users are creating new transactions against dirty records. Integrations are syncing the mess to downstream systems. Sales reps build quotes against duplicate accounts. Every day that passes, the cleanup scope grows.

During migration, you have a controlled environment with no live transactions:

- Run deduplication algorithms against the full dataset
- Normalize naming conventions systematically
- Enrich sparse records from external sources
- Restructure dimensions and categories to match the target Dataverse schema
- Validate every record against Dynamics 365's posting rules before a single user logs in

Post-go-live, these same tasks require change management, scheduled downtime, and careful coordination with live business processes. There is no universal multiplier for the cost difference, but across real migrations the effort jumps significantly once bad master data is in production — and cleanup plans that start after go-live tend to stall indefinitely.

Microsoft's own guidance reinforces this: issues surfaced by the Data Prep Report must generally be fixed on source data outside of Customer Insights, using cleanup tools such as Power Query, and then reingested and reunified. ([learn.microsoft.com](https://learn.microsoft.com/en-us/dynamics365/customer-insights/data/data-prep-overview))

That's Microsoft telling you: fix your data before it enters the system.

Reconnecting integrations after the fact is equally painful. Microsoft notes that reconnecting Business Central integrations through Dataverse can apply default synchronization settings and overwrite existing configuration — the integration layer is easier to design before go-live than to rebuild under pressure. ([learn.microsoft.com](https://learn.microsoft.com/en-gb/dynamics365/business-central/admin-prepare-dynamics-365-for-sales-for-integration))

## Pre-Migration AI Readiness Scorecard

Score your legacy data against these 10 questions before you approve a migration plan. Give yourself 1 point for every "yes."

| # | Question |
|---|---|
| 1 | Do required fields in your customer, vendor, and product masters have less than 20% missing values? |
| 2 | Are entity names (customers, vendors, products) standardized across all source systems? |
| 3 | Have you identified and merged duplicate accounts, contacts, and vendors? |
| 4 | Do all GL accounts have human-readable descriptions? |
| 5 | Are financial dimensions consistent in naming and structure across legal entities? |
| 6 | Do you have 1–3 years of clean transaction history with correct entity linkages? |
| 7 | Is your address data normalized (country codes, state abbreviations, postal format)? |
| 8 | Is Dataverse search enabled in every target environment, with the right tables and columns configured as searchable? |
| 9 | Have you renamed or documented cryptic custom fields with synonyms or glossary terms? |
| 10 | Is your sync architecture fresh enough for each AI scenario, or are you expecting scheduled sync to behave like real time? |

**8–10 "yes":** Ready to pilot Copilot. **5–7:** Fix the gaps before you go live. **0–4:** Do not judge Copilot yet — you're judging your data.

## The ROI Case for AI-Ready Data

Microsoft's own evidence on Copilot productivity is directionally positive but narrower than vendor hype suggests. In a randomized experiment covering more than 6,000 workers at 56 firms, Microsoft Research found half an hour less time spent reading email each week and documents completed 12% faster. An internal Customer Service study found a 12% reduction in average handle time in a low-severity chat scenario. ([microsoft.com](https://www.microsoft.com/en-us/research/publication/early-impacts-of-m365-copilot/))

That is how to read broad "30–40% productivity" claims: as upside in specific workflows with good instrumentation, not as a blanket promise. Microsoft reports up to 50% faster invoice processing and 25–30% faster period-end close in fully deployed setups, but acknowledges most organizations see partial gains due to data readiness gaps and rollout maturity.

The gap between "fully deployed" and "partial gains" is almost entirely a data quality problem. If your sales team spends 15 minutes verifying the numbers Copilot generated because they don't trust the underlying data, the ROI of your AI investment drops to zero.

This isn't a Microsoft-only issue. Salesforce's Data Cloud positioning centers on ingesting, harmonizing, and unifying data to ground AI — the market reality is that changing AI vendors does not remove the data readiness problem. ([salesforce.com](https://www.salesforce.com/news/press-releases/2023/12/14/unstructured-data-ai-search-einstein/))

Organizations that invest in data cleanup during migration capture the full productivity benefit from day one. Those that skip it spend months post-go-live wondering why Copilot's output is generic and unreliable.

## Getting This Right

Treat Dynamics 365 Copilot data readiness as a migration deliverable, not a post-adoption task. Decide which records deserve history, which relationships must survive, which tables and columns must be searchable, and what freshness your sync architecture must guarantee. If you get that right, Copilot starts from trustworthy context on day one.

At ClonePartner, we've completed 1,200+ data migrations, and the pattern is consistent: organizations that treat migration as a data transformation event — not just a data movement event — see dramatically better outcomes from their platform's AI features. We handle Dataverse schema mapping, automated deduplication, relational integrity enforcement, enrichment, and continuous sync so the new Dynamics environment is usable by humans and useful to AI from cutover.

> Migrating to Dynamics 365 and want Copilot to work on day one? Book a 30-minute call with our migration engineers. We'll assess your data landscape and tell you exactly what needs to happen before cutover.
>
> [Talk to us](https://cal.com/clonepartner/meet?duration=30)

## Frequently asked questions

### Does Copilot in Dynamics 365 work if our data is messy?

It will run, but it produces generic, unreliable, or outright wrong output. Copilot's agentic features in 2026 Wave 1 don't just summarize messy data — they act on it autonomously, which means bad data leads to bad decisions at machine speed. Microsoft's Data Prep Report requires less than 20% missing values in required fields just to generate basic AI insights.

### Can we fix data quality after migrating to Dynamics 365?

You can, but it's significantly harder and more expensive. Post-go-live, users are creating new transactions against dirty records, integrations are syncing the mess downstream, and every fix requires change management and coordination with live operations. Microsoft's own guidance says data quality issues must be fixed in the source data and then reingested — migration is the cleanest time to do mass correction.

### How much historical data does Copilot need?

Microsoft's Data Prep Report benchmark is at least 1 year of transaction history, preferably 2–3, plus at least 100 customer records (ideally 1,000). However, historical data must be clean and properly linked — migrating 10+ years of unstructured history does more harm than good. Prioritize recent, high-quality transaction data over sheer volume.

### Is Dataverse mandatory for Dynamics 365 Copilot?

For Sales, Customer Service, and Customer Insights, Copilot runs on apps built on Dataverse — it's required. Business Central uses Dataverse as the connective layer for sync, virtual tables, and integration into the wider Power Platform ecosystem. In all cases, Dataverse search must be turned on and the right tables and columns configured as searchable for Copilot to function.

### Does AI data readiness increase migration cost?

Yes, upfront. Proper cleanup, schema mapping, and searchable column configuration add delivery effort before go-live. But skipping it means paying for Copilot licenses that deliver partial value, plus post-go-live remediation that costs far more than doing it right during migration. The net investment is lower when cleanup happens before cutover.
