Copilot readiness: a checklist for your Power BI data model
Copilot readiness means your Power BI semantic model describes itself clearly enough that Copilot picks the right table, measure and filter for a plain-language question. In practice it comes down to licensing, a clean star schema, business names and descriptions, one definition per KPI, the Prep data for AI settings, security, and a scored set of real questions. The checklist below covers each, in the order I work through them.
On this page
- What Copilot readiness means, and why now
- Step 1: check licensing and settings first
- Step 2: a model structure Copilot can follow
- Step 3: business names, descriptions and AI instructions
- Step 4: measures, and one definition per KPI
- Step 5: use Prep data for AI in Power BI
- Step 6: security and data quality
- Step 7: test with real questions before rollout
- An AI readiness assessment, or do it yourself?
- FAQ
What Copilot readiness means, and why now
Copilot in Power BI reads your semantic model to answer questions. It does not know that Amt_2 is invoiced revenue or that the second date table is the one finance uses; it infers that from names, descriptions and relationships. Microsoft is direct about what happens otherwise: without preparation, Copilot can misinterpret the data and return generic or inaccurate results.
The timing matters because Power BI Q&A, the older natural-language box, is being retired in December 2026, and Microsoft points people to Copilot as the replacement. If anyone in your company uses Q&A visuals today, they will need an alternative, and the preparation is the same either way.
Even a well-prepared model won't make Copilot predictable to the letter. Microsoft's own guidance says these preparation features can't ensure a specific output every time, because the AI is nondeterministic. So the aim of readiness work is to make the correct answer the obvious one, and to know how often Copilot gets your questions right.
Step 1: check licensing and settings first
It's easy to spend a week on the model and then discover the workspace sits on shared capacity, so I check this before anything else:
- The workspace is on a paid Fabric capacity (F2 or higher) or Power BI Premium (P1 or higher). Per Microsoft's Copilot requirements, a Pro or Premium Per User licence alone is not enough, and trial capacities are not supported.
- The tenant setting that lets users use Copilot and other Azure OpenAI features is on. It is on by default, but admins often switch it off while they decide.
- The capacity is in a supported region. If your tenant sits outside the US or EU data boundary, your admin also has to decide on a setting that allows processing outside your region.
- Someone has decided who pays for the capacity and how much Copilot usage it can absorb. My Power BI pricing guide covers how capacity fits next to per-user licences.
Step 2: a model structure Copilot can follow
Copilot chooses better among a few clearly related tables than among dozens of loosely related ones. Check for:
- A star schema: fact tables for transactions, dimension tables for customers, products and dates, joined by one-to-many relationships.
- One date table, marked as the date table and related to every fact table that has dates. Turn off auto date/time if it is on.
- Relationships that filter in one direction unless there is a clear reason, and no ambiguous paths where a question could reach a table two ways.
- Correct data types: dates as dates, amounts as decimals, codes as text.
- Keys, sort columns and technical helper columns hidden from report view.
- No unused tables left over from earlier versions.
Take a hypothetical distributor whose model holds an Orders table, an Invoices table and a Shipments table, each with its own date column and its own copy of the customer name. A question about sales to one customer last quarter can then be answered three ways, from three tables, and Copilot has no way of knowing which one finance considers correct. Pulling the customer into one dimension and pointing all three tables at one date table removes that choice.
Much of this overlaps with what makes a report fast, so if your model is also slow, the same work pays twice. I wrote about the speed side in how to fix a slow Power BI report.
Step 3: business names, descriptions and AI instructions
This step has the biggest effect on the answers, and it is unglamorous. For every visible table, column and measure:
- Use the name people say out loud. Net Revenue, not Measure 7 or SUM_amt_EUR.
- Write a short description: what it calculates, in which currency, and what it leaves out. Copilot reads these. Power BI can also draft measure descriptions with Copilot, which saves typing, though each draft still needs a person who knows the business to check it.
- Group measures in display folders by subject.
- Remove near-duplicates. If Revenue, Revenue New and Revenue (2) all exist, Copilot has three candidates for every revenue question.
Then write the AI instructions, which are part of Prep data for AI. This is a short text on how your business talks: which measure someone means when they say turnover or sales, when your fiscal year starts, that an active customer is one with an order in the last 90 days, which region names cover which countries. Keep it factual. It should read more like a glossary than a prompt.
Step 4: measures, and one definition per KPI
Copilot answers best when the number someone asks for already exists as a measure it can pick, instead of something it has to assemble from raw columns. Building a sum on the fly is where it is most likely to drift, for instance adding up a column that already holds a percentage, or ignoring a filter that every finance report applies. So the checklist here is about giving it finished building blocks:
- Every number people ask about exists as an explicit measure. If the only way to get gross margin today is a calculation inside one visual, Copilot cannot find it.
- Each KPI has one definition in the model. If finance and sales calculate margin differently, decide which one the model carries, or name both clearly (Gross Margin, Gross Margin Before Freight) and say in the AI instructions which is the default.
- Ratios and averages are measures, never columns that get summed.
- Common time comparisons exist as measures: year to date, same period last year, change against last month.
- Format strings are set, so percentages show as percentages and amounts carry their currency.
Expect this step to surface disagreements. It is not unusual to find that two departments have reported different margins for a year without noticing, and that is worth knowing whether or not you ever switch Copilot on.
Step 5: use Prep data for AI in Power BI
Power BI groups the Copilot-specific settings under Prep data for AI, which you can author in Power BI Desktop and in the service. It was still marked as preview when I wrote this.
- AI data schema. Select the subset of tables and fields Copilot should use. Leaving out staging tables and rarely used columns removes wrong choices before Copilot can make them.
- Verified answers. Link a report visual to trigger phrases, so a common question returns a visual that a person has checked.
- AI instructions. The business glossary from step 3.
- Approved for Copilot. A setting on the semantic model in the service that marks it as prepared. Microsoft notes that the change usually shows in under an hour, but can take up to 24 hours when many reports use the model.
Verified answers suit the ten or so questions that make up most of the traffic. For a sales team that could be revenue this month against target, the top customers, and pipeline by stage.
Step 6: security and data quality
- Row-level security is set up and tested for every role that will use Copilot. A report shared with five managers can get away without it; a chat box that anyone can type into cannot.
- Workspace roles and build permissions are reviewed, so nobody gets access to a model just because it now has a chat attached.
- Duplicates, missing keys and orphan rows are found and fixed, in the source or in Power Query. Copilot will happily add up duplicated invoices.
- Scheduled refresh runs reliably, and someone hears about it when it fails.
Data quality problems were there before Copilot, of course. The difference is that a person reading a report might notice a strange total, while a typed question gets a confident sentence back with the strange total inside it.
Step 7: test with real questions before rollout
Write down 20 to 30 questions your team really asks, with the correct answer to each from an existing report. Ask Copilot every one of them in the Copilot pane in Power BI Desktop, and score the answers. Where an answer is wrong, the How Copilot arrived at this detail shows which fields it used, and that usually points straight at the name or relationship to fix.
Two practical details from Microsoft's Copilot overview and the Prep data for AI page. Copilot caches responses: the same prompt on an unchanged model within a rolling 24 hours returns the cached answer, so change the prompt or refresh the model when you retest. And changes made in Prep data for AI can take a few minutes to show up, so close and reopen the Copilot pane after saving.
What score is good enough? Microsoft doesn't publish a threshold, and I wouldn't trust one that ignored your questions. My own bar is practical: every question covered by a verified answer comes back right, and every wrong answer on the rest can be traced to a specific fix, or to a question you decide Copilot should not be asked. If a group of questions keeps failing after the model is cleaned up, leave those in a normal report page and tell users so.
Keep the scored question list and rerun it after every model change. For your data, it is the only measure of Copilot readiness that means anything.
An AI readiness assessment, or do it yourself?
A team with a capable Power BI developer can work through this checklist alone; most of it is careful housekeeping. An outside review helps when the model was inherited, when no one is sure which definitions are right, or when management wants a written answer on whether the data is ready before paying for capacity.
That is what my AI readiness assessment covers: a review of the semantic model, DAX, naming, definitions, data quality and security, with the quick fixes applied and a ranked list of the rest. The sales pipeline example shows the modelling standard I check against. If you also want people to ask questions outside Power BI, for example inside a client portal, the same model work is the base for a conversational analytics assistant.
Frequently asked questions
What is Copilot readiness?
Copilot readiness is the state where your Power BI semantic model, licensing and security let Copilot answer plain-language questions correctly. It covers a paid Fabric or Premium capacity, a clean star schema, clear names and descriptions, one definition per KPI, the Prep data for AI settings, row-level security and a tested list of real questions. Most of the work sits in the model.
Does Copilot in Power BI work with a Pro licence?
Not on its own. Copilot needs the report or model in a workspace on a paid Fabric capacity (F2 or higher) or Power BI Premium (P1 or higher). A Pro or Premium Per User licence alone is not sufficient, trial capacities are not supported, and the Copilot tenant setting has to be enabled. Microsoft's Copilot requirements page lists the current conditions.
What happens to Power BI Q&A?
Power BI Q&A is scheduled to be retired in December 2026, according to Microsoft's announcement, and Copilot is the suggested replacement. Existing Q&A visuals will stop working. If your reports use Q&A today, find those visuals now, check your licensing for Copilot, and prepare the semantic model so the replacement answers at least as well as the old feature did.
How long does it take to prepare a Power BI model for Copilot?
It depends on the state of the model. A small, well-built star schema mostly needs names, descriptions and AI instructions, which is a short job. An inherited model with duplicate measures, several date tables and no security takes longer, because the definitions have to be agreed before anyone can write them down. Testing with real questions adds time either way.
What is an AI readiness assessment?
An AI readiness assessment, as I offer it, is a technical review of whether your data and Power BI layer can be read correctly by Copilot and similar tools. It checks the semantic model, DAX, naming, KPI definitions, data quality and security, applies the quick fixes, and lists the rest by impact. It is not an AI strategy or change-management programme.
Can Copilot give wrong answers on a prepared model?
Yes. Microsoft states that preparing data for AI can't ensure a specific output every time, because the AI is nondeterministic. Preparation makes the correct field the likeliest choice and reduces errors, but it does not remove them. That is why a scored list of real questions, rerun after every change, belongs in any Copilot rollout.