๐ณ Recipe ยท Licensing & Cost Optimization
Assign Power BI License to a User in M365
Grant a user access to Microsoft Power BI by assigning the appropriate license via the admin center, Graph API, or PowerShell.
Complexity
Beginner
Impact
licensing + user-onboarding + power-bi + cost-management
Context
Why This Matters
Microsoft Power BI requires a license assignment before a user can sign in and use the service. Common SKUs include Power BI (free), Power BI Pro, and Power BI Premium Per User (PPU). When a user requests access, IT admins must confirm an available license is in the tenant, verify the user's usage location is set (required for license assignment), and assign the SKU.
Run this recipe when:
- A user submits a ticket requesting Power BI access.
- Onboarding a new analyst, BI developer, or report consumer.
- Migrating a user from Free to Pro for sharing/collaboration capabilities.
Expected Outcomes
- The target user has a Power BI license assigned and can sign in to
app.powerbi.com. - The user's
usageLocationis set (required by Microsoft for licensing compliance). - License assignment is auditable in the Microsoft 365 admin center and Entra audit logs.
Risks & Considerations
- Usage location required: License assignment will fail if the user has no
usageLocationset. Always verify or set it before assigning. - License availability: Confirm the tenant has available units of the Power BI SKU. Attempting to assign from a depleted pool returns an error.
- Cost implications: Power BI Pro and PPU are paid SKUs. Ensure the request is approved per your license governance policy before assigning.
- Group-based licensing: If your tenant assigns Power BI via a security group, adding a direct license can create conflicts. Prefer adding the user to the licensing group instead.
- Data residency: Power BI tenant region is fixed at tenant creation. Assigning a license does not change data residency.
Required Permissions
| Permission | Why It's Needed |
|---|---|
| User.ReadWrite.All | Read user object and update license assignments and usage location. |
| Organization.Read.All | Read subscribed SKUs to identify the Power BI SKU ID and available units. |
| Directory.ReadWrite.All | Alternative broader scope for modifying user license assignments in the directory. |
The fastest way to get this done โ just ask Dex. Copy the prompt below and paste it into your Dex conversation.
For IT Admins
Paste into Dex CoAdmin
For End Users
How an employee would ask Dex for help