You are currently viewing Transitioning from Power BI Premium to Fabric Capacities 

Transitioning from Power BI Premium to Fabric Capacities 

I recently presented at the Power BI & Fabric Manchester User Group on how you can transition from your Premium capacities to Fabric capacities following this blog post back in March 2024. The post announces the retirement of Power BI Premium capacities and the transition to Fabric capacities going forwards. With that in mind, I thought it would be a good idea to document the process and, well, here we are…

Common Questions

When speaking with customers there are definitely some common questions that crop up. I’ll quickly try to address these before moving on.

What is a Fabric Capacity?

In practical terms, a Fabric Capacity is the same as a Power BI Premium capacity. The key difference is how you purchase the capacity. For Power BI Premium these are purchased from Modern Work and for Fabric these are purchased through the Azure portal.

I’m not ready for Fabric, can I stay on Premium?

If you have Power BI Premium you are already “Fabric Ready”. As mentioned in the introduction, we announced the retirement of Power BI Premium Capacities in March 2024. Nearly all* Fabric workloads are available on Power BI Premium capacities. One example I can think of is that AI Skills are only available on a Fabric capacity.

* The list is ever changing so I’d recommend bookmarking this page and monitoring the blog for updates

So how can I transition to Fabric Capacities?

There are two main ways in which you can facilitate this transition.

Manually

The first approach is manually through the Fabric and Azure portals. You will need to first create your corresponding capacity in the Azure Portal. Once this has been created, you can navigate to the Admin portal in Fabric. Under the Fabric Capacity tab of the Capacities settings section of the portal, you can allocate your workspaces to the new capacity via the Assign workspaces button.

On top of assigning the workspaces to the new capacity you will also need to ensure that all capacity settings are copied across. This includes any delegated tenant settings present on the capacity, plus all other capacity settings such as Notifications, Power BI Workloads and Data Engineering/Science Settings.

Depending on how many capacities you have, and how many workspaces you have within those capacities, this could become an extremely time consuming process and could introduce the possibility of settings (or workspaces) being missed.

Programmatically

Now on to the cool part!

For those unfamiliar I would like to introduce Semantic Link and Semantic Link Labs. The links provide more detail but these libraries allow to you to do so many tasks using Notebooks in Fabric. I’ve been lucky enough to be able to work on the functionality that allows customers to programmatically manage and implement the transition to Fabric capacities.

Discovery

You might be thinking “where do I start?” and want to get the lay of the land before completing the transition. Thankfully Semantic Link and Semantic Link Labs have got you covered! Let’s create a new notebook and get started…

Using the following functions in your notebook, you are able to list and store the details for your capacities, workspaces and items within your tenant:

FunctionDescription
list_workspacesLists workspaces for the organization.
list_capacitiesShows the list of capacities and their properties.
list_itemsShows a list of active Fabric and PowerBI items.

What these functions do is provide wrappers around the APIs meaning you can more easily call them via your Fabric Notebooks.

Migration

Once you’ve completed your discovery phase, then you’re ready to complete the transition.

Thankfully the Semantic Link Labs repository contains a helper notebook which provides templates for multiple scenarios. At the point of publishing this post they are:

  • Migrate a single P SKU -> F SKU
  • Migrate a list of P SKUs to F SKUs
  • Migrate all P SKUs to F SKUs
  • Migrate a list of P SKUs to F SKUs; associate each capacity with a specific resource group
  • Migrate a single P SKU (already created F SKU)
  • Migrate a list of P SKUs (already created F SKUs)

I won’t go into too much detail here as hopefully the section names are self-explanatory. I will, however, quickly cover the prerequisites and parameters for executing these functions.

Prerequisites

The helper notebook describes the prerequisites and the table below summarises what’s needed prior to completing the migration.

RequirementDetails
Azure SubscriptionMust have an Azure Subscription
App RegistrationMust register an App
PermissionsContributor role at the scope where the resources will be created, often the subscription level
Azure Key VaultSet up within the Azure Subscription
SecretsSave secrets for the Tenant ID, Client ID (Application ID), Client Secret
Key Vault PermissionsEnsure the user executing the notebooks has “Key Vault Secrets User”
Fabric PermissionsUser should be a tenant admin

Parameters

Depending on the scenario you will need to provide these core parameters

azure_subscription_idThe Azure subscription ID in which the Fabric capacities will reside
key_vault_uriThe key vault uri where your secrets for the App/SPN will reside. e.g. https://MyKeyVault.vault.azure.net/
key_vault_tenant_idAzure Key Vault secret which stores your Tenant ID
key_vault_client_idKey Vault secret which stores your Client ID (Application ID)
key_vault_client_secretAzure Key Vault secret which stores your Client Secret
resource_groupName of the resource group in which the new capacities will reside This can be a dictionary containing a mapping between resource groups and capacities.
capacitiesThe capacity(ies) to migrate from Power BI Premium (including PBI Embedded). Defaults to None which migrates all accessible Power BI capacities to Fabric capacities.

Migration in action

Below is a short video which illustrates the process of migrating a single premium capacity using Semantic Link Labs.

Edit: Due to recent changes with the internal APIs the capacity settings are no longer migrated. You will need to manually copy the settings from the Premium Capacity to the new Fabric Capacity.

What’s next?

Currently this solution only covers migrations where the new capacities are created in the same region. Due to limitations within Fabric at the moment it is not possible to migrate workspaces with non-Power BI items or large semantic models to a capacity in a different region. It is possible to migrate these workspaces but first you will need to remove the “offending” artifacts in the workspace before migrating, and then having to recreate them once the workspace has been assigned to the new capacity. We are currently working on a way to handle this programmatically, but unfortunately we don’t have a timeline on that.

Currently the functions will authenticate using the user who is executing the notebook. We would like to provide solutions that allow you to use a service principal which has the correct permissions on your tenant. Again, like the cross region migrations there is no timescale on this. Plus we are also reliant on the API calls supporting service principals too.

Conclusion

Transitioning from Power BI Premium to Fabric Capacities is a significant step forward. By following the steps outlined in this post, you can ensure a smooth and efficient transition. Whether you choose to transition manually through the Fabric and Azure portals or programmatically using Semantic Link Labs, the process is straightforward and well-documented.

Remember to prepare all necessary prerequisites and complete the analysis of your tenant to avoid any issues during the transition. Embracing Fabric Capacities will not only enhance your data capabilities but also position your organisation for future growth and innovation.

If you have any questions or need further assistance, feel free to reach out in the comments or contact your Microsoft account team.

This Post Has 18 Comments

  1. Maignan

    Thank for all the job done. Do you know why Premium per user licences are excluded form the retirement ? This involve the future of all our datamarts, since we use PPU licence so far, and that datamart are still in preview (for 2 years now !)

    1. David Mitchell

      Hi Maignan,
      Personally I’d think about transitioning your Datamarts to Fabric DW.
      I don’t know what (or when) GA looks like for Datamarts, but you’ll get the benefit of Delta/Direct Lake for your semantic models if you use DW.

  2. Khan

    What are the resources that are present in the resource group

    1. David Mitchell

      Hi Khan,

      The function creates a Fabric capacity (or capacities) in the specified resource group.
      The capacity SKU will be the equivalent to the premium SKU (e.g. P1 -> F64)

  3. Moe

    Hello David,
    I am trying to migrate a P1 to an F-SKU, after i did create some fabric items (Pipelines, notbooks, lakehouses). When trying to migrate i am getting the following error:
    workspace cannot be reassigned because it includes Fabric items or you’re attempting to move them across regions. This is not supported currently. Remove the Fabric items, or move the workspace within the same region, and then try again.

    i thought that the migration of P1 to F-SKU was an automatic process, and we could create fabric items that would be later migrated with no problem. any clarifications?

  4. Neeraj D

    Hi David
    We have an Enterprise Agreement and one Power BI Premium P2 capacity. Our EA is up for renewal at the end of May 2025, which is when we plan to transition to Fabric.

    What would be the equivalent capacity in Fabric in terms of both performance and cost? We want to ensure that we do not exceed the current cost of Power BI P2.
    Thanks
    Neeraj D

  5. Phil

    Great post, thank you for sharing!
    Can you detail the” non-Power BI items” you speak of in the sentence”? Due to limitations within Fabric at the moment it is not possible to migrate workspaces with non-Power BI items or large semantic models to a capacity in a different region”
    Can these ‘non power bi items’ be migrated with the script if they’re in the same region? thank you!

  6. phil

    thank you Phil. Can the non fabric items be migrated or must they all be rebuilt in the f-sku?

    1. David Mitchell

      Hi Phil,
      If they are moving to a capacity in the same region, then that is fine.

      If they’re moving to a new region you will need to manage that separately
      I’d consider creating a new workspace on the capacity in the new region and create the items there (git integration can help with this), then copy the data from workspace A into Workspace B.
      Once you have copied the data you can delete the items in the original workspace.

  7. phil

    thank you David! What happens at the end of the premium subscription to our power bi items? Assuming I haven’t migrated all workspaces to fabric sku? Will they stop refreshing/being viewable?

    1. David Mitchell

      Hi Phil,

      After the grace period, they will be downgraded to pro workspaces.

      If you check out the official blog post here – https://www.microsoft.com/en-us/microsoft-fabric/blog/2024/12/02/automate-your-migration-to-microsoft-fabric-capacities/

      What will happen to my Power BI and Fabric artifacts once I cancel my Power BI Premium capacity and purchase F-SKU capacity?

      You will be able to access your Fabric artifacts for 90 days after P-SKU capacity subscription has ended. During these 90 days, you can migrate your workspaces to your new F-SKU capacity without fear of losing access to your existing work. However, once the workspace is reassigned, all currently active jobs will be canceled. Rerun those jobs after migration. Migration doesn’t impact scheduled jobs.

  8. Drew

    Hi Mitch, thanks for the explanation. Should I expect the URL of apps shared externally to remain the same when I migrate from Premium to Fabric capacity? This is a concern for me with reports shared externally via Embed report > Website or portal, i.e. to named users, external to the organisation. Thx

    1. David Mitchell

      Hi Drew,

      All that changes is the capacity behind the workspace, so all GUIDs for workspaces, items, apps etc will remain the same.

      Thanks

      1. Drew

        Many thanks!

Leave a Reply to David Mitchell Cancel reply