Blog

Insights & ideas

Stay ahead with expert articles, industry trends, and actionable insights to help you grow.

Microsoft Power Platform licensing: What’s changed in 2025 and how it affects you
10 mins read
May 19, 2025

Microsoft Power Platform licensing in 2025

Licensing rules are tighter, enforcement is stricter, and the risks are real. This post explains what’s changed, where teams slip up, and how to stay compliant without breaking your apps or your budget.

Read more
“I just want to build and share apps. Why is licensing so hard?”

If you’ve ever said this or heard it from someone on your team, you’re not alone. In 2025, licensing remains one of the most frustrating parts of working with Power Platform. It’s a constantly recurring topic in community forums like Reddit, Slack threads, and internal support channels, discussed by admins, creators, and even casual users.

The system is full of fine print, scattered across admin centers, with policies that quietly shift from one month to the next. And just when you think you’ve figured it out, boom, an app fails to launch due to a missing license.

The frustration is real. One admin put it bluntly on Reddit:

“I’ve been in the Microsoft 365 Admin Center, Azure AD, Power Platform Admin Center… and I still can’t figure out how to assign a license to a user.”

So why bother trying to make sense of it?

Because Microsoft is now enforcing licensing rules particularly around API usage, multiplexing, Copilot access, and entitlement compliance.  

Licensing is no longer just a back-office detail. It now directly affects whether your apps run properly or slow down dramatically mid-process.

In 2025, Microsoft has tightened the regulations on compliance, especially around how requests are tracked, who’s licensed, and how apps are built. But if you know where to look, there’s more clarity too: they’ve finally provided better tools to help you stay ahead.

This post kicks off our new series on Power Platform licensing. If you’re in IT operations, managing Power Platform environments, or supporting citizen developers, this one’s for you.

What are Power Platform licensing options in 2025?

In 2025, Microsoft offers three main premium licensing options for Power Platform:

  • Per App Plan: Best for single, focused apps. Includes one app and one portal per user. Lacks built-in consumption tracking, so admins rely on custom monitoring.
  • Per User Plan: Ideal for power users and admins. Grants access to unlimited apps and environments, making it easier to manage at scale.
  • Pay-As-You-Go: Great for pilots or variable usage. Billed through Azure, but requires extra setup and ongoing oversight.

Choosing the right model depends on your usage patterns, scalability needs, and how much visibility you require.

Wait, isn’t Power Platform free with M365?

Yes and no.

Microsoft 365 plans (like E3 and E5) include Power Apps, but only for standard connectors like SharePoint or Outlook. The moment you introduce Dataverse, SQL, or custom APIs, you’ve stepped into premium territory.

And here’s the catch: read-only access to premium data? Still requires a premium license.

Why is my automation suddenly slowing down? The hidden cost of exceeding licensing limits

If your flow is throttling, your app is stuck, or your chatbot has gone quiet, the culprit might not be a technical bug — it might be your licensing.

Fragmented admin centers = Fragmented visibility

One major reason automations break or slow down is that teams unknowingly exceed API or capacity limits. This often happens because the fragmented admin experience makes it difficult to get a clear, centralised view of what’s being used and what’s licensed.

Licensing and usage insights are spread across multiple portals:

  • Licenses are assigned in the Microsoft 365 Admin Center
  • Group-based licensing is managed in Entra ID
  • Usage data lives in the Power Platform Admin Center

No single place gives you the full picture, so IT teams are forced to piece together licensing status and consumption manually.

You might be using features that aren’t actually covered

It’s common to assume that Power Apps are “free” with Microsoft 365. But once you start using premium connectors, Dataverse, or custom APIs, you’ve stepped into premium territory, and that can lead to access issues or performance slowdowns if the right licenses aren’t in place.

Power Platform = Multiple products, each with their own licensing rules

What makes it harder is that Power Automate, AI Builder, and Copilot Studio all come with separate entitlements and limitations. Even though they’re part of the same ecosystem, each requires different types of licenses, usage monitoring, and setup practices.

  • Power Automate offers per-user and per-flow plans. Flows tied to individual accounts often fail when roles change or users leave. Using service accounts with Per Flow licenses can improve reliability. Also: every API call now counts toward your usage limits, background processes included.

AI features = New licensing surprises

  • Copilot Studio is not bundled with most Power Apps plans by default. If your bots use custom plugins, external data sources, or generative AI, you may need extra capacity or Azure billing.
  • AI Builder credits are included in some plans, but they’re limited, and they run out fast if you’re using features like form recognition or prediction models at scale.

Bottom line: If your automations are slowing down, it’s probably not random. It’s likely a licensing boundary you didn’t know you crossed.

To stay compliant and maintain performance, operations teams need to be fluent in both legacy and modern models, a growing challenge for anyone managing Power Platform at scale.

What are some common licensing pitfalls?

You don’t need to be an expert in every detail of Microsoft’s SKU catalogue, but you do need to know where teams get tripped up. These are the biggest traps we’re seeing in 2025:

Multiplexing

What it is: Multiple users interact with an app using a single licensed account, often via embedded tools, shared portals, or apps embedded in Teams or SharePoint.

Why it’s risky: Microsoft explicitly forbids it, and yes, they’re checking. This is a fast track to non-compliance.

Request enforcement

Every. Single. API. Call. Counts.

That means background syncs, Power Automate flows, and even system-generated updates all contribute to usage limits. And when those limits are exceeded, restrictions like throttling or flow suspension kick in.

How can I audit my team before Microsoft does?

Start with mapping user roles and needs before assigning licenses. Who’s building apps? Who’s using them? Which connectors are involved? This upfront planning helps avoid deployment issues later.

Here’s our recommended approach:

  1. Map app dependencies

Make a list of who’s using what. Understanding which users rely on which apps and connectors helps prevent disruptions and supports better license planning.

  1. Track requests

Mark usage spikes and high-risk flows. Monitoring API consumption helps you identify patterns, avoid overages, and spot potential performance or compliance risks.

  1. Watch for multiplexing

Shared accounts are a red flag. Using a single licensed account to serve multiple users violates Microsoft’s licensing terms and can trigger audits or enforcement actions.

  1. Audit license assignments

Ensure users have the right entitlements. Regularly reviewing who has what license helps close gaps, prevent over-licensing, and maintain compliance.

  1. Plan for scale

Anticipate growth before it breaks your budget. Projecting future app usage and user needs lets you adjust licensing proactively and avoid costly surprises later.

What tools can I use to monitor my team’s Power Platform usage?

Power Platform Admin Center

It helps you get a detailed breakdown of:

  • Request volumes per user/app
  • API usage across environments
  • Gaps between license assignment and actual usage

Access is available to environment and tenant-level admins with appropriate roles (such as Power Platform admin or Global admin). To get meaningful insights, ensure that telemetry and usage reporting are enabled and your environments are correctly configured.

Azure Monitor integration

You can connect your Power Platform environment for real-time insights. Set alerts when nearing request limits or use it to prove compliance during audits. This integration is available to admins with Azure and Power Platform access, and requires environment-level configuration along with proper permissions to set up diagnostics and monitoring rules.

Licensing simulators

Microsoft has introduced calculators to model license needs based on usage and app scope. These tools are available to administrators and licensing managers with appropriate access to the Power Platform Admin Center or Microsoft licensing portals, and are most effective when accurate usage data and app requirements are already mapped out. Use these early before rollout, not after failure.

A little prep goes a long way in staying compliant and avoiding surprises.

Make licensing work for your team

Licensing may never be simple but with the right strategy and regular health checks, it’s manageable. Whether you're launching your first app or scaling across teams, clarity is key to staying compliant and avoiding surprises.

You don’t need to know every rule, just how to navigate the essentials. Stay informed and stay in control.

If you’re not sure which license is best for your team, contact us to discuss your use cases.

Up next in our Power Platform licensing series:

  • Power Platform Licensing within D365 & M365
  • Staying ahead of connector changes in Power Platform
  • Request management made easy: How to stay within limits
  • Scaling without breaking your budget

Soft blue and white gradient background with blurred smooth texture
Filter
Industry
Technology
Solution category
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
My Journey with CI/CD in Power BI: A Personal Tale of Transformation Part 2
May 6, 2024
3 min read
My Journey with CI/CD in Power BI: A Personal Tale of Transformation Part 2
Read more

Implementing This Miracle: If I were to start all over again, I'd tell you this:

A) Get cozy with Git, simulate real-world scenarios as a team during a demo session, and document/record everything.

To better prepare for collaborative development, we crafted a scenario in which multiple developers would work simultaneously on the same file, aiming to rehearse a range of actions we had previously encountered. This included creating different measures at the same time and then merging these into a single file, adding, removing, or modifying visuals and integrating those changes, reverting to a previous version to serve as the basis for new features, and managing version transitions between DEV, TEST, and PROD branches. Through this exercise, we sought to simulate and navigate the complexities of real-world collaboration, enhancing our team's ability to handle various project management tasks efficiently.

  1. Commit early and often, and
  2. Treat your commit notes like a diary of your project's life. Writing comprehensive commit descriptions will enhance clarity and facilitates easier navigation through the project's history for both you and your teammates.
  3. Branch Carefully! Always verify you're working on the correct branch to avoid unintended changes in the wrong areas of your project.
  4. And never forget the power of communication. Despite the technical tools at your disposal, effective teamwork hinges on constant communication to ensure alignment and collaboration.

These practices didn't just make our projects better; they made us better developers and teammates.

B) Bumps Along the Way: Sure, we faced our fair share of surprises.

Challenges Encountered Since Adoption:

Despite the myriad benefits, several challenges have emerged since adopting source control in Power BI, particularly given the preview status of this feature. I'm going to highlight the few most common ones.

  1. Custom Visuals Compatibility: Custom visuals used in reports need to be installed separately by each collaborator. Don't forget to let your colleagues know which custom visual you added to your dashboard as its name won't show up only the following error message which is a bit hard to dechypre.
CI/CD

2. Merge Conflicts and Code Loss: Situations have arisen where accepting both changes during a merge resulted in lost code, highlighting the need for careful conflict resolution (screenshot from another blogpost describing the issue).

blogpost

3. File Opening Issues After Merge: Conflicts within the data model, such as incorrect relationship settings, can prevent files from opening, necessitating reversion to previous versions.

unable to open

4. Infinite Semantic Model Refresh Loops in PBI Desktop: Unexplained delays in model refreshes post-merge, extending for hours, indicate potential issues with large semantic models.

+1) Data is not stored in repos: It’s good to keep in mind that data is not stored in the Repo, only semantic model and report related code is stored, you still need to refresh your data on Power BI Service.

Conclusion: This journey of integrating CI/CD and source control into our Power BI workflows has been one of the most rewarding experiences of my professional life. It wasn’t just about making our projects more efficient; it was about transforming our team into a more cohesive, capable, and confident unit. As we look to the future, I’m excited about the possibilities that lie ahead, ready to tackle whatever comes our way with a smile and a git commit.

My Journey with CI/CD in Power BI: A Personal Tale of Transformation Part 1
April 23, 2024
3 min read
My Journey with CI/CD in Power BI: A Personal Tale of Transformation Part 1
Read more

Hello, friends! Today, I'm diving deep into my own adventure with Continuous Integration (CI) and Continuous Deployment (CD) in the realm of Power BI—a journey marked by trials, triumphs, and a lot of learning along the way. For so long, CI/CD in Power BI felt like trying to fit a square peg in a round hole. With a mix of third-party tools and makeshift solutions, my team and I navigated through a maze of compliance and administrative hurdles, often feeling lost in a sea of approvals and support tickets to try introduce a potential CI/CD solution or workaround. Then came May 2023, and with it, a beacon of hope: Power BI project files. This was more than just a feature; it was a revolution that promised to redefine how we approached our projects.

The Before Times: Rewind to before this pivotal change. My team, like many others working in data analytics within complex, multinational landscapes, struggled immensely with the lack of source control in Power BI. Our attempts at version control felt archaic—think "save as" with date and version stamps—and far from agile (shared folders on SharePoints or OneDrive). We were a team longing for simplicity and efficiency but found ourselves bogged down by the limitations of our tools.

A Game Changer: Power BI Project Files: Then, the game changed. The introduction of project files (.PBIP) wasn't just an update; it was a lifeline. This wasn't about saving our projects as mere files; it was about evolving them into living, breathing entities, organized within folders that spoke the language of our data stories through JSON (not ideal, but still an enormous improvement) .

Getting Our Hands Dirty: Embracing this new world, we ventured into the depths of Git with VS Code and Azure DevOps.

Each Power BI file became its own project, its own repository. This structure, while logical, required us to rewire our brains, to rethink our approach to collaboration and version control. Our workflow transformed, becoming more streamlined yet demanding a new level of diligence and precision.

The Rocky Road: It wasn't all smooth sailing. Adopting Power BI project files and integrating Git introduced us to a host of challenges. Merge conflicts became our nemesis, and the occasional quirks of a preview feature tested our patience. But with every stumble, our resolve grew stronger. The benefits—oh, the benefits!—far outweighed the occasional headaches. We were building something resilient, transparent, and infinitely more manageable.

Looking Ahead with TMDL: The next big step ahead is the introduction of TMDL. Storing your semantic model in TMDL (preview feature since the March 2024 update) transforms the code into a format that's not only human-readable but also intuitively organized, making every element—be it measures, tables, or columns—distinctly easy to identify in separate blocks. This clarity significantly simplifies the process of resolving merge conflicts and tracking changes, making the whole experience more straightforward.

Looking Ahead with TMDL

Why This Matters: The move to source control in Power BI has been nothing short of transformative. It brought clarity to our development process, made our end products more reliable, and, most importantly, it strengthened our team's bond. We learned to communicate more effectively, to trust in our collective skills, and to embrace the inevitable learning curve together.

To be continued...

How to overcome org-wide writers' block
March 14, 2024
6 min read
How to overcome org-wide writers' block
Read more

Every quarter we have three Objectives that will help us improve as an organisation. This can vary from Software Development practices to improving (or rather: re-hauling) our finance reports, but more will be written on these Objectives later.

This quarter, one of our Objectives is to start and cement having a company-blog. This has been a recurring topic since the beginning of the organisation - although I've consciously put it to rest in the past years as we've been so focused on cementing the core team.

Last year, we started focusing on our marketing efforts and naturally, the topic of the blog has arisen. Initially, I thought that with Judit, our marketing and sales assistant, we can just put our heads together and churn out a bunch of posts, but then realised we need to get the "troops on the ground" to provide inputs - at least the backbone of a post to stand a chance of sounding novel and not just being "yet another corporate blog."

I knew it's not going to be easy to get a bunch of consultants knee-deep in project-work to get their focus and time allocated to writing blogs. What a perfect opportunity to make this a Q1 objective!

A reality check

I naively thought it'd be sufficient to call out the Q1 objective and have a brainstorming session about our social media usage and post ideas and off we go: blog posts will be sprouting left and right.

Six weeks later, the end of the quarter is nearing, and we have 0 posts.

So what can I do to get our smart and eager colleagues to exert discretionary effort to create a blog post - let alone, get into the habit of writing and maintaining a blog.

I resorted to the following basic management (leadership?) tactics in yet another Dojo agenda point. (Dojo: The forum held weekly for the development of our internal operations.)

Start with why

We talked with the team about what's the purpose of writing a company blog and why it matters in the professional services industry:

It's so easy for anyone to say they are experts in a particular topic but what speaks volumes is if we provide insight into our expertise.

Plus, it also makes it possible to create more meaningful "noise" on LinkedIn and social media.

Not the least, we maybe help fellow Power Platformers, consultants and end-users alike by publicly sharing knowledge bites that proved to be useful for us.

Provide context and address concerns

After having talked about the why, I showed an example of what good looks like (eg. https://www.ycombinator.com/blog/how-to-maintain-engineering-velocity-as-you-scale or https://www.faire.com/blog/) and asked the team if they have any questions, concerns.

The main message here was:

don't worry too much, just get started, we are not writing War and Peace here

Make it easy to start

Next, we talked about how we "don't need to start from scratch", a lot of what we do is documenting, so why not use those as a starting point for blog posts.

We have the following areas to go to for inspiration and starting points:

Wiki

Last year we started making good use of our Azure DevOps wiki sites and it's increasingly becoming an internal go-to resource. Why not just use some of the more useful entries to turn them into external-facing material?

Internal Comms

Not as often, but we do rely on written internal comms - such as our strategic goals, one-pager vision statement, competencies. We can turn these into blog posts that talk about us as an organisation, how we work and where we are heading.

Our clients are increasingly looking for "cultural fitness" when selecting a partner, so I'll be happy to share this openly. This may even help with recruitment and on-boarding.

Ways of Working

We are extensively using Azure DevOps, GitHub and generally the whole Microsoft eco-system to manage our work. I appreciate it's not straight-forward to design the toolkit at our disposal in a way that makes it ergonomic for every member of an organisation. We have lots of lessons learned in this place and our current Ways of Working is pretty well documented.

When we built our internal systems, it would have been great to understand like-minded companies' architecture. The toolkit we use definitely shapes us as an organisation (think: socio-technical complex systems), hopefully gives us a competitive edge, but sharing our good (and sometimes not-so-good) practices may benefit others with similar challenges.

Knowledge Sharing Sessions

We regularly hold knowledge sharing sessions, internal demos - lot of which is already documented - with a little effort and obfuscation, these can be easily turned into external-facing materials.

These will provide great insight into what are the areas that interest us and what challenges we face as a team in our projects.

Brainstorm

Prior to the Dojo, I asked that each PO is present or delegates a team member so we have the right coverage. I asked each team to gather post ideas based on the above and take them back to the team and select one which they will work into a full-fledged post in the coming two weeks.

Lead with example

I had to admit, I wasn't comfortable writing blogs myself (I had one attempt when taking a gap-year and travelled to India). Those that worked closely with me, know I'm not much of a writer.

But I had to be the "tip of spear that will break the ice", so here I am writing the inaugural blog post.. :)

Where to next?

Accountability and Follow-up

Hopefully, by now the message has landed with the team that this is something, we'll crack on with and asked the team whether they can get behind this. The jury's still out to see how many posts will be written by the end of the month.

We've put in a check-in for next to see how the teams are progressing with the single selected topic and see if we can help them overcome and doubts or concerns, they may have.

What we didn't do

Carrots or sticks

We quite consciously avoid tying performance evaluation or bonuses against our quarterly objects (very much in line with OKR principles) - hence we will not mandate a blog quota or tie it to any bonuses. I'd much rather have a few of our team members produce quality posts, then have everyone write poor ones out of sheer necessity

Emphasize how writing improves structured thinking and deep understanding

In hindsight, we could have talked about how writing helps improve one's understanding, and this is a great way to deepen one's knowledge.

So you may ask, why blogs? Why not YouTube videos and/or Podcasts? Don't worry, we'll get there eventually :)

Sorry, no items found with this category

Ready to talk about your use cases?

Request your free audit by filling out this form. Our team will get back to you to discuss how we can support you.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Stay ahead with the latest insights
Subscribe to our newsletter for expert insights, industry updates, and exclusive content delivered straight to your inbox.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.