How Much Does Copilot Cost In Microsoft Fabric?

There’s a lot of excitement about Copilot in Power BI and in Fabric as a whole. The number one question I’m asked about Copilot by customers is “How much does it cost?” and indeed there have been two posts on the Fabric blog here and here attempting to answer this question. The point I want to make in this post, though, is that it’s the wrong question to ask.

Why? Well to start off with Copilot isn’t something you buy separately. Every time you use Copilot in Fabric it uses compute from a capacity, either a P SKU or an F SKU, just the same as if you opened a report or refreshed a semantic model. You buy the capacity and that gives you a pool of compute that you can use however you want, and using Copilot is just one of the things you can use that compute for. No-one ever asked me how much it cost in dollars to open a report in Power BI or refresh a semantic model, so why ask this question about Copilot?

Of course I understand why Copilot feels like a special case: customers know a lot of users will want to play with it and they also know how greedy AI is for resources. Which brings me back to the point of this post: the question you need to ask about Copilot is “How much of my Power BI/Fabric capacity’s compute will be used by Copilot if I turn it on?”. Answering this question in terms of percentages is useful because if you consistently go over 100% usage on a Fabric capacity then you will either need to buy more capacity or experience throttling. And if Copilot does end up using a lot of compute, and you don’t want to buy more capacity or deal with throttling, then maybe you do want to limit its usage to a subset of your users or even turn it off completely?

To a certain extent the question about percentage usage can be answered with the Premium Capacity Metrics app. For example, I opened up a gen2 dataflow on a Premium capacity that returns the following data:

I expanded the Copilot pane and typed the following prompt:

Filter the table so I only have products that were produced in the country France

And here’s what I got back – a filtered table showing the row with the Producer Country France:

So what impact did this have on my capacity? Since I know this was the only time I used Copilot the day I wrote this post it was easy to find the relevant line in the “Background operations for timerange” table on the TimePoint Detail page of the Premium Capacity Metrics app:

There are two important things to note:

  • For the 30-second window I selected the operation above used 0.02% of my capacity
  • Copilot operations are classed as “background operations” so their cost is smoothed out over 24 hours. Therefore the operation above used 0.02% of my capacity for 24 hours from a few minutes after the point I hit enter and the operation ran; in this particular case I ran my test just before 16:20 on Friday March 15th and the operation used 0.02% of my capacity from 16:20 on Friday the 15th until 16:20 on Saturday March 16th.

How can you extrapolate tests like this to understand the likely load on your capacity in the real world? With great difficulty. Almost all the Fabric/Power BI Copilot experiences available today are targeted at people developing rather than just consuming, so that naturally limits the opportunities people have to use Copilot. Different prompts will come with different costs (as the blog posts mentioned above explain), a single user will want to use Copilot more than once in a day and you’ll have more than one user wanting to use Copilot. What’s more, going forward there will be more and more opportunities to use Copilot in different scenarios and as Copilot gets better and better your users will want to use it more. The compute usage of different Fabric Copilots may change in the future too. So your mileage will vary a lot.

Is it possible to make a rough estimate? Let’s say you have 20 developers (which I think is reasonable for a P1/F64 – how many actively developed solutions are you likely to have on any given capacity?) writing 20 prompts per day. If each prompt uses 0.02% of your capacity then 20*20*0.02%=a maximum of 8% of your capacity used by Copilot for the whole day. That’s not inconsiderable and I’m sure someone will leave a comment saying I’m underestimating what usage will be.

Which brings me to my last point: should you even see Copilot as being different from anything else you can do in Fabric that consumes compute? Or as an optional extra or additional cost? After all, dataflows consume compute, you can enable or disable dataflows in your tenant in the same way you can enable or disable Copilot, but very few customers disable dataflows because they see the benefit of using them. Turning off dataflows would reduce the load on your capacity but it would also stop your users from being so productive, and why would you do that? If we at Microsoft deliver on the promise of Copilot (and believe me, we’re working hard on this) then the productivity gains it brings to your developers should offset the cost of any extra capacity you need to buy – if indeed you need to buy any extra capacity.

So, to sum up, if you enable Copilot in Fabric you will see additional load on your capacities and you may need to buy more capacity as a result – but the benefits will be worth it. Predicting that additional load is difficult but it’s no different from predicting how your overal Fabric capacity usage will grow over time, as more and more reports, semantic models, notebooks, warehouses and so on get created and used. Rather than doing lots of complex calculations based on vague assumptions to try to predict that load, my advice is that you should use the Capacity Metrics app to monitor your actual usage and buy that extra capacity when you see you’re going to need it.

8 thoughts on “How Much Does Copilot Cost In Microsoft Fabric?

  1. “Therefore the operation above used 0.02% of my capacity for 24 hours from the point I hit enter and the operation ran; in this particular case I ran my test at 16:20 on Friday March 15th and the operation used 0.02% of my capacity until 16:20 on Saturday March 16th.”

    That is slightly inaccurate. The cost will hit starting at the first five minute mark AFTER THE OPERATION COMPLETED. Sorry for shouting but we have been bitten by that a couple times now, and we are not happy. We’re now living in a permanent state of fear that some rogue long dataflow refresh can bring our capacity to a standstill at any time.

  2. Chris,
    Nice writeup and the “right question.”
    I also think Copilot usage will be very intermittment. Right now it’s primarily a developer and analyst tool, not a continual use tool. A developer may ask it to help out once a day or even just a couple of times per week. It depends on their workload. The point is, I think using Copilot in Power BI is more background noise than anything else.

    Of course, if it does develop more end-user features for data analysis and sharing it could pick up use, but we’ll worry about that later.

    Thanks,
    Andy

  3. Hey Chris. Thank you for post. I’ve done similar test on my end, tried to generate the report as well etc. So far, I am reluctant to enable it for users. It’s too unpredictable, and I echo the comment made above, that making it Background operations is making it extremely dangerous, considering that all workloads against Warehouses are also background operations. When this all sums up, we are doomed for 24 hours.

  4. There is an official note that Microsoft is billing for Copilot

    https://blog.fabric.microsoft.com/en-us/blog/announcing-fabric-copilot-pricing-2?ft=02-2024:date
    Copilot in Fabric The input prompt Per 1,000 Tokens 400 CU seconds
    Copilot in Fabric The output completion Per 1,000 Tokens 1,200 CU seconds

    If you’re utilizing Copilot for Power BI and your request involves 500 input tokens and 100 output tokens, then you’ll be charged a total of (500*400+100*1,200)/1,000 = 320 CU seconds in Fabric. It may be difficult to determine the number of Tokens we will use.

    Depends of my Capacity Unit (CU) for specific SKU, and pay-as-you-go (which is hourly cost), F2 is $0.42/hour

  5. This is very helpful for understanding the implications of using Copilot in Service, but I am curious – how does this cost model affect users working with Copilot-based visuals in Desktop? Or is that a question with an obvious answer I’m not thinking of?

Leave a Reply