Despite all the articles and videos available, no such aspect of Power BI (and maybe Microsoft Fabric) gets people more confused than licensing. All these articles and videos explain, re-phrase, correct, and sometimes wrong what’s available on the official site(s) from Microsoft:
One of my favorite articles about all this is from my friend Nikola Ilic. You will find his take on licensing here: https://data-mozart.com/buy-me-a-gym-power-bi-licensing-demystified/
With this article, I want to provide a different perspective on components like a workspace, a shared capacity, per-user licensing, and, most important - capabilities (capa… WTF). I think with the advent of Microsoft Fabric. It’s important that we all have to have an understanding of the licensing. The reason is simple: a new kid is in town - Fabric capacities. Because of this, I want to add my share about licensing, hopefully for the better.
Before I delve into some of the licensing details, I travel back in time, not that much, but a little more than four years (dear future reader, today is Thursday, 17th of August 2023).
I’m on the 4th of April 2019; for a short moment, Microsoft announced the General Availability (GA) of the new Power BI workspace experience read about this here: https://powerbi.microsoft.com/en-us/blog/announcing-new-workspace-experience-general-availability-ga/. It’s possible that you do not remember the Power BI workspace experience before that date, meaning the old workspace experience. Do not care; consider that era the dark ages of Power BI workspaces.
Since that day, I imagine the workspace and the licensing (or, more precisely - the capacity) as two separate things, the workspace is a container, and the capacity is a set of capabilities (like a flux compensator docked to a car). The below image shows what I imagine when I talk about licensing:
From my experience, the confusion starts the moment when the talk is about Power BI Pro licensing because, most of the time, the word capacity is not mentioned. Still, the power of a shared capacity fuels the workspaces. It’s like driving on a train, where a single locomotive pulls many coaches (workspaces from different tenants).
I consider a workspace being a container. This container stores artifacts (I assume this will be the last article where I will call artifacts artifacts), like datasets, reports, dashboards, etc. Depending on the licensing (the capacity), additional artifacts can be created, e.g., with Premium Per User or Premium (Per) Capacity it’s possible to create a datamart. With the advent of Fabric capacities, more artifacts can be created, like notebooks, warehouses, or lakehouses.
I imagine a capacity as a set of capabilities. One capability that we all love is the Power BI dataset. When discussing the dataset, we refer to the vertipaq engine that allows us to analyze huge amounts of data. This engine we know from SQL Server Analysis Services Tabular (SSAS Tabular), Azure Analysis Service, or Power Pivot in Excel. Depending on the licensing (meaning different types of capacities), different capabilities are available, like large(r) datasets, the xmla endpoint, and many others. Being more agnostic, it’s also valid to say: a capacity provides compute to artifacts stored in the container (remember - the workspace). We also must not forget the second engine that is available with the Shared capacity, the mashup engine that executes our Power Query queries, and last but not least, the engine which renders the data visualizations. And there are even more compute engines, e.g., the one triggering data alerts we build with the dashboard artifact. Different types of capacities bring even more compute engines, e.g., the SQL compute engine that lets us combine SQL with datamarts.
Now, with Microsoft Fabric we gain access to more compute engines that we can use with the respective artifacts in our workspaces.
Money, money, money - it's all about the money
Now, how do we pay for this?
When we want to use the capabilities, we have to pay. This payment is either on a per user basis or on per capacity basis:
The larger the circle, the more capabilities, the more expensive.
This is maybe the most simple calculation.
Power BI Pro
number of users * price per Power BI Pro License * 12 = equals the yearly amount
If users have a M365 E5 license assigned, these users already have a Power BI Pro license. Keep this in mind.
A fact that should be no surprise, a user with a PRO license can not publish a report into a workspace docked to a Premium Per User license.
Premium Per User
Simple maths reloaded:
number of users * price per Premium Per User License * 12 = equals the yearly amount
Nevertheless, this is a little more tricky. Depending on your requirements, only a fraction of your users may require the capabilities of the Premium Per User backed capacity.
Beware: the Premium capabilities are tied to the capacity. Accessing content inside a workspace that is “docked” to a PPU capacity requires a Premium Per User license. If you are wondering if each and every one of your users require a PPU license, the answer is simple:
- if all workspaces are “docked” to a Premium Per User capacity: YES
- if some of your users are happy with the capabilities of a Shared capacity: NO
Users who have a PPU license assigned can access content from a Shared and a Premium capacity.
An image and some some subtleties about the Free User license
The image shows what I can do with a given individual license. I tried hard to viusalize that a user with a Premium Per User can contribute/consume to/from all types of capacities. I hope the above visual clarifies that it REQUIRES a Premium Per User license if a user wants to consume content from a capacity “docked” to Premium Per User licensing. Next to these amazing Premium capabilities (start every morning with a mental list of these capabilities), one thing requires an individual license. Because of this, it requires money. This is not tied to a Premium capability like the XMLA endpoint or a Fabric notebook.
I love all the Premium capabilities, but the thing I love the most is - sharing. When you want to share a report with your colleagues, co-workers, or the entire organization, you need at least one Pro license. This license is required to publish the report to a Power BI App workspace. A Power BI App workspace is a workspace that is not “My workspace.”
A user not gifted with an individual Pro or Premium Per User license can only publish the pbix file to his personal workspace, “My workspace.” Because it’s impossible to create a Power BI App from the content of My workspace, I say sharing requires money.
I often hear: “We have Premium, but now my users are asked to upgrade to Pro - why?” Users with a Free license can access content (Power BI content) for free (no paid individual license is required) when they are accessing a Power BI App. If users are accessing the content directly from inside the workspace a Pro license is required.
One exception is that if a workspace is “docked” to a Premium capacity, users with the Viewer workspace role assigned can access workspace content with a Free license.
I think now that Per User licensing is covered Per Capacity licensing will be simple. You pay a price, You get some decent amount of metal (some call this metal virtual cores) this metal is good to serve thousands of user with thousands of datasets, refreshing each dataset dozens of times per day.
You think this can not be true, it is. I witness this wonder each and every day, except the weekend (okay, sometimes at the weekend as well).
Ah, it’s not that simple (of course not), except from paying the money. The metal comes with different sizes, it’s up to you to find the proper metal. But please be aware that each report creator or at least the one who is doing the publishing needs to have a Pro license.
Yes, you are right, it’s possible to create a “pipeline” that is serving 100s of workspaces with a single Pro license, by “throwing” the pbix into a Azure DevOps pipeline that is utilizing Power BI Rest APIs. Please be aware that
- I do not consider the one-Pro license efficient because pipeline development must be funded. Development of new features and support of users will be delayed.
- I do not consider the one-Pro license effective because thin report development approach will not be possible.
- I’m not interested in becoming part of a team that is aiming for a one-Pro license development/environment.
Licensing in the age of Fabric
If you understand Power BI Premium licensing, you understand Fabric licensing.
Basically, it’s the same, but there are two differences, one is subtle, and one is tremendous. Before I will cover these differences, I think it’s necessary to understand this phrase:
… Power BI Content …
In the not-so-dark age, the age before Fabric, but after the dawning of workspaces with the new experience, everything in a workspace was considered “Power BI Content.” It’s still a workspace, but if it is docked to a capacity with Fabric capabilities like notebooks, pipelines, lake houses, and warehouses, this content is not considered Power BI content.
In this new era (I call it the era of #itzybitzy (I use this term until I find a better one that is a word of pure Power)), users can create content without requiring a Power BI Pro license. This is cool, even if it will make calculations not necessarily more simple. Because people want to answer questions like how many report creators and how many dataflows (Gen1) developers do we need for our Fabric project.
But now, the differences
- the subtle one is, Fabric capacities smaller than F64 require Power BI Pro licenses even if Power BI content is accessed via a Power BI App. From a Power BI Content point of view, an F32 is a capacity docked to Pro licensing,
- the tremendous one is, Fabric capacities can be paused. I consider this enormous. This will allow us to “throw” metal to a problem but pause it when a given task is accomplished, like doing data engineering and/or data science. Please be aware the F[x] capacities are more expensive than the comparable P[x] capacities when they are weaving their magic 24/7.
I have to admit that I’m very excited about the smaller F[x] capacities because they will allow the needed metal for a specific problem.
Thank you for reading! Weave magic, and may your Fabric always be golden!