Programmer Power BI Embedded

Learning Guide: How to Get Started with Power BI Embedded Development

One of the most challenging aspects of developing your own application is adding reporting capabilities. Power BI Embedded gives you the ability to include the capabilities of Power BI while hosting the reports in your application.  This post will cover the Power BI Embedded version and provide a curated set of resources that will both introduce you and get you started in developing analytic solutions within your applications.

Power BI Embedded Analytics

Being able to create and view Power BI reports in your applications allows you to embed remarkable, fully interactive reports and visuals into your applications.  Using the API set that is available, you can brand, create and view reports as if they were native in your application.  Adding the potential of Power BI reporting and analytics, which your customers may already be familiar with, to your application development tool workflow.

This will reduce the required developer resources by automating the monitoring, management, and deployment of analytics while getting full control of Power BI features and intelligent analytics.

As pictured below, there are a number of samples, Power BI Playground – Showcases, that show you how embedded analytics can be used to create compelling analytics that can be added to your applications.

The Samples with code that is available in the Playground Showcase


The following resources will take you through the introduction to the platform, included in the extensive FAQ that should answer many of the most popular questions about the service.

What is Power BI Embedded Generation 2?

The Power BI Embedded team recently released a new version, Power BI Embedded Generation 2, referred to as Embedded Gen2 for convenience. Embedded Gen2 is currently in preview and is available for embedded subscribers to use during the preview period.

You can still create the original version of the Power BI Embedded resource, called Embedded Gen 1, or create a new Embedded Gen 2 resource. During the preview period, you can run both types of Power BI Embedded capacities in parallel, and assign any workspace to either a Gen1 or a Gen2 capacity.


How do we Develop with Power BI Embedded?

You can try the experience by using the free Power BI embedded analytics playground.  This will provide a hands-on experience with sample code or you can embed your own report. One of the biggest benefits is the ability to browse the interactive showcase and see real-world examples of how a Power BI Embedded environment can be used to augment your solution.

Playground to test and play with examples


How to Troubleshoot a Power BI Embedded Application?

One of the most difficult tasks when implementing 3rd party products in your application is to determine what is going wrong. The key to success is a good debugging toolset and workflow. The link below, Troubleshooting your Power BI embedded analytics application, reviews a number of tools, examples, and procedures to help debug your application.

Another key to performance is being able to monitor your Power BI Embedded application. When you have critical applications and business processes relying on Azure resources, you want to monitor those resources for their availability, performance, and operation. The resource links below walk you through the process, how to set it up, and what to look for.


Where Can I Find Power BI Embedded Documentation?

I have worked at Microsoft for 15 years and the thing I am most proud of is the developer documentation and samples. Pictured below are different areas highlighted that can get you started.

There are many areas related to Power BI, but a great way to start is the Documentation landing page. The Tutorials and How-To sections of the documentation I find provide a great deal of real-world value.


Do you need a Power BI license to view embedded reports?

This is probably the hardest part, selecting a Capacity and SKU as it depends on so many factors. Don’t over-provision, but don’t under-provision. You also have the ability, under some SKUs to autoscale. For information about autoscaling in Embedded Gen 2, see Autoscaling in Embedded Gen 2.

Power BI Embedded is shipped within SKU.  Each capacity offers a selection of SKUs, and each SKU provides different resource tiers for memory and computing power.  More information can be found here; Capacity and SKUs in Power BI embedded analytics – Power BI | Microsoft Docs

The type of SKU you require depends on the type of solution you wish to deploy.  As each development can have its own unique requirements, more detailed information is found here How to configure workloads in Power BI Premium – Power BI | Microsoft Docs. This document will provide details on which workloads are supported for each tier.

However, for creating/editing embedded reports inside your application, the end-user does not need a Pro or Premium Per User (PPU) license as the user isn’t required to be a Power BI user at all.

Power BI embedded analytics includes two solutions, Power BI Embedded as an Azure offering and Embedding Power BI as part of Power BI Premium which is a Microsoft Office offer.

You do need a Power BI Pro or Premium Per User (PPU) license or service principal to use REST APIs. To add reports to a Power BI workspace, an analyst needs either a Power BI Pro or Premium Per User (PPU) license or service principal. Check with your representative for exact licensing requirements. See The following link for more information; Frequently asked questions about Power BI embedded analytics – Power BI | Microsoft Docs.

Note: For publishing, you’ll need one Power BI Pro or Premium Per User (PPU) account.


How do Plan for the Power BI Embedded Workload? 

Capacity is a dedicated set of resources reserved for exclusive use. It enables you to publish dashboards, reports, and datasets to users, without having to purchase per-user licenses. It also offers dependable, consistent performance for your content.

Calculating what type of capacity is needed for a Power BI embedded analytics deployment, needs to take into account multiple parameters. The issue many face is that they can be hard to predict, especially for new developments without a track record of the workload.

Some of the things to take into consideration when planning your capacity are:

  • The data models you’re using
  • The number and complexity of required queries
  • The hourly distribution of the usage of your application
  • Data refresh rates
  • Additional usage patterns that are hard to predict.

Note: When moving to production, Power BI embedded analytics requires a capacity (A, EM, or P SKU) for publishing embedded Power BI content.

Source:  See the full article on Power BI embedded analytics capacity planning – Power BI | Microsoft Docs for more information.

The Power BI Embedded Analytics Capacity Planning Tool

There is a PowerShell tool that can be used which is available on GitHub; PowerBI-Tools-For-Capacities/LoadTestingPowerShellTool · GitHub.

The tool is used to create automated load tests against your capacities, and lets you choose which report to test, and how many concurrent users to simulate. The tool generates load on a capacity by continuously rendering each report with new filter values to prevent unrealistically good performance due to report caching.

How to Use Row-Level Security (RLS) with Power BI Embedded

Just as in SQL and Power BI desktop, Row-level security (RLS) can be used to restrict user access to data within dashboards, tiles, reports, and datasets. Different users can work with those same artifacts all while seeing different data.

This can be more difficult when you are developing an application. The good news I that embedding supports Row-level Security!! If you’re embedding for non-Power BI users (app owns data), which is typically an ISV scenario, then this article will help.

There’s an example of authoring RLS, and then consuming that within an embedded application. Our example uses the Retail Analysis Sample which is referenced in the source below.

Source: Using row-level security with embedded content in Power BI embedded analytics – Power BI | Microsoft Docs



I hope this has been a useful guide as you start looking at Power BI Embedded as part of your solution flow.


Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.