Verified answers and AI instructions
What are verified answers and AI instructions?
Ask an assistant for last quarter's revenue and you will get a number back within seconds. Whether that number is the one your finance team calls revenue depends on a handful of things nobody ever wrote down: which measure counts as revenue, which date the quarter runs on, and whether credit notes come off the total. Verified answers and AI instructions are the two places where you finally write those things down, on the model itself, so the assistant answers the way the business defines things instead of the way the model guesses.
A verified answer is a pin. Someone picks a question people actually ask, ties it to one specific visual or query, and from then on that question returns that result. In Power BI you select a visual, add the phrases that should trigger it, and the pair is saved on the semantic model rather than on the report, so it reaches every report built on that model, the Copilot pane, the standalone chat and any Fabric data agent that uses it. Copilot checks every incoming prompt against those trigger phrases before it writes anything, and on a match it returns the pinned answer with a checkmark and the phrase it matched on.
AI instructions are free text on the same model. You write out what your terms mean, which table to prefer for which kind of question, how a period should be read, and what to do when a question is ambiguous. Microsoft calls the field AI instructions and caps it at 10,000 characters. Google has the same idea on a Looker Explore data agent, where the field is called instructions. Either way it is a text box, and the assistant reads it before it builds a query.
A verified answer is guaranteed, an instruction is only likely
A verified answer is exact. The query behind it was built by a person and checked by a person, and matching the trigger phrase returns that query and nothing else. In exchange, it does not generalise. Microsoft is precise about what still counts as a match: synonyms, a different word order and an extra filter in the prompt all match, but adding or removing a field, swapping a dimension or changing the measure does not. If your trigger phrase is snowboard sales by month, then snowboard sales over time matches and ski bib sales by month does not. The pin holds for the question you pinned and lets go for the one next to it.
An instruction is the opposite trade. It generalises across every question that touches the term you defined, including the ones you never anticipated. What it does not do is guarantee anything. Microsoft's own wording is worth repeating because it is unusually blunt for vendor documentation: AI instructions are unstructured guidance that the language model interprets, and there is no guarantee it follows them exactly. Write an instruction saying revenue always means net of credit notes and it will be followed most of the time, not every time.
Three more differences follow from that, and together they decide which layer a problem belongs in.
Reach. A verified answer covers one question and its close rephrasings. An instruction covers every question that runs into the term you defined.
What breaks it. A verified answer breaks on a rename, on a hidden field, or on a question that adds a dimension. An instruction breaks when a second instruction contradicts it.
What the reader sees. A verified answer arrives with a checkmark and the phrase it matched on. An instruction is invisible to the people asking questions.
The two are not alternatives, they are layers. Instructions carry the vocabulary and the defaults across the whole model. Verified answers cover the twenty questions that come back every week and have to be identical every time.
One ambiguous question, both mechanisms applied
Take a wholesaler with fifty people. Someone types: how much did we sell last month?
That sentence has four decisions hiding in it. Sold could mean ordered, delivered or invoiced. Last month could be the previous calendar month or the last thirty days. The total could be gross, or net of credit notes and discounts. And the model has three date columns that could all carry the period: order date, delivery date and invoice date. An assistant with no guidance picks one combination out of the dozens available, and the number it returns looks exactly as convincing as the right one.
Here is the verified answer version. You take the visual the finance team already trusts, the monthly column chart built on the Net revenue measure over invoice date, and you pin it. Trigger phrases: how much did we sell last month, revenue last month, what was our turnover last month, monthly revenue, sales per month. Anyone who asks one of those, or something close enough to it, gets that chart with a checkmark on it. Ask for one region and the answer still holds, because a region filter that you set up as available to users can be applied straight from the prompt. Ask how much did we sell last month per sales rep and the pin lets go, because that adds a dimension the pinned visual does not have. You are back to a generated answer.
Now the instruction version. In the AI instructions on the model you write:
Revenue, turnover and sales all mean the
Net revenuemeasure, which is invoiced revenue after credit notes and discounts.Use invoice date for all revenue questions. Use order date only when the question says orders, and delivery date only when the question says deliveries.
Last month means the previous complete calendar month, not a rolling thirty days. Our financial year starts in January.
That covers the original question, and it also covers revenue per customer last quarter, which product group grew most this year and every other question that runs into the same three decisions. It costs you three sentences instead of a built and checked visual. What you give up is the guarantee. On the day the model reads it a little differently, nothing on the screen tells the reader.
Most of this work is data work, not AI work
Almost none of this is about the language model, which is why it lands on a data team. It is the modelling discipline you were supposed to have anyway. What changes is the audience. Until now a messy model was a private problem between you and the analyst who worked around it. An assistant reads that model out loud to the whole company, so every shortcut you took comes back as a wrong answer in front of a colleague who has no way to check it.
Name things the way people say them. The generated query is built from your object names. TR_AMT and DIM_GEO_01 tell the model nothing, Total revenue and Sales region tell it everything. Microsoft's guidance for Fabric data agents lists non-descriptive naming among the things that most often go wrong, alongside duplicate measures that all sound like sales.
Take the columns that are not for consumption out of view. Surrogate keys, sort-order helper columns, intermediate measures that only exist to make a report visual behave. An AI data schema lets you hand the assistant a subset of the model, and narrowing it is the first step Microsoft tells you to take. The Microsoft example is a model where Total Revenue, Gross Sales, Net Sales and Sales After Returns all sit next to each other: the assistant picks Gross Sales, the team means Net Sales, and removing the other three from the schema fixes it without a single instruction.
Decide which date carries the period. One date table, related to the facts, with the calendar the business actually uses. Where a fact table has several dates, an instruction says which one is the default. Ambiguous date fields are on Microsoft's list of common failures for exactly this reason.
Map the synonyms. Your team says turnover, the model says revenue. Someone says closers, the model says sellers. Synonyms on the object handle the one-to-one cases. An instruction handles the ones with a condition attached, like a high performer being a rep at 100 percent of target or more.
None of that is prompting. It is a data catalog exercise applied to one model, and if you have already done the work for an AI-ready data programme, you have done most of it.
Who owns a verified answer
A verified answer is a promise with a checkmark next to it, which makes it the only part of this that can fail loudly. Two things go wrong, and both go wrong quietly.
The visual and the pin drift apart. In Power BI the verified answer copies the visual at setup and then lives its own life on the model. Change the report visual, or delete it, and the verified answer keeps returning what it captured. Microsoft says it outright: verified answer visuals are not synced or attached to the visuals on the report page. Two people looking at the same model can end up with two different charts, one from the report and one from the chat.
A rename breaks it silently. Rename a table, column or measure that a verified answer references and you have to reopen the verified answer and save it again before the change takes effect. Hide a field it uses and the verified answer stops returning at all. Copilot does not tell the user the pin failed. It generates a fresh answer instead, without the checkmark, and most readers will not notice which of the two they got.
So every verified answer needs a named owner, and every change to the model needs a pass over the pins that touch it. Whichever tool you are in, maintenance is what decides whether this survives a year of model changes. A pin nobody owns turns into a confidently wrong answer with a green tick on it.
How to know whether it is working
You cannot tell from the demo. Write down thirty to fifty real questions in the words your colleagues use, put the correct answer next to each one, and run the list. Run it again after every model change, every schema change and every batch of new instructions. Score it, and set the bar at what you would expect from a new analyst in their second month.
That is an eval set under a different name, and the vendors have started shipping the plumbing for it. Fabric has a Python SDK for data agents that runs automated evaluations against ground truth question and answer pairs and reports accuracy back to you.
What to watch out for with verified answers and AI instructions
Much of this is still preview. As of September 2026 the Prep data for AI experience in Power BI, which is where AI data schemas, verified answers and AI instructions all live, is a preview feature, and so is marking a model as Approved for Copilot. On the Google side, Looker Explore data agents with their instructions and verified queries are generally available, while the dashboard data agents are in preview. One dependency is worth diarising: Power BI Q&A has to be enabled before the Prep data for AI tabs are even clickable, and Microsoft has announced that Q&A retires in December 2026, with a replacement setting to follow.
A term can only mean one thing per model. Microsoft is explicit that you cannot give the same word two definitions for two audiences. If engineering means clicks when it says usage and product means paying customers, one of them has to give way, or you need two models. That is a governance conversation, not a configuration setting.