How to Embed Power BI Dashboard

Cody Schneider9 min read

Embedding a Power BI dashboard directly into a website, blog, or internal portal is a great way to put your data right where decisions are made. Instead of sending people a link and making them switch contexts, you can bring the insights to them. This guide will walk you through the different ways to embed your Power BI reports and dashboards, helping you choose the best option for your needs.

GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

Why Embed a Power BI Dashboard?

Before getting into the "how," let’s quickly touch on the "why." Embedding isn’t just about making your reports look nice on a webpage, it provides real benefits:

  • Better Accessibility: People don't need to hunt for the right report in their Power BI workspace. By placing it in a tool they use every day, like an internal wiki, SharePoint site, or team app, you make the data more accessible and likely to be used.
  • Contextual Insights: Data is most valuable when it's in context. Embedding a sales dashboard on your CRM's homepage or placing a marketing performance report on your internal marketing blog provides insights exactly when and where your team needs them.
  • Live Data, Not static screenshots: An embedded Power BI report is live and interactive. Users can filter, slice, and investigate data directly within the page, unlike a static image or PDF that's outdated the moment it's created.
  • Consistent Experience: You can provide a seamless brand experience by integrating powerful analytics directly into your own applications or websites without making users feel like they are leaving your environment.

Choosing the Right Embedding Method

Microsoft offers a few different ways to embed your content from Power BI, each designed for a specific scenario. The primary difference comes down to one question: Who is this for, and is the data sensitive?

1. Publish to web (Public)

This is the quickest and easiest method, but it comes with a major security warning. "Publish to web" generates a public link and an embed code that anyone on the internet can access. There is no authentication or security. It is best used for sharing non-confidential data, such as a report on public census data or general industry trends.

  • Pros: Extremely easy to set up. No licensing costs for viewers.
  • Cons: (Completely public and not secure.) Anyone with the link can see your dashboard. It should NEVER be used for internal reports, financial data, customer information, or any sensitive data.

2. Website or portal (Secure Embed)

This is the standard and most common method for sharing reports within an organization. It generates an embed code that requires viewers to sign in with their Power BI account to see the dashboard. If they don't have the appropriate permissions to view the report in Power BI, they won't be able to see it in the embedded view either.

  • Pros: Secure and respects all Power BI security rules and permissions. Perfect for internal use cases like SharePoint, Microsoft Teams, or private company portals.
  • Cons: Requires viewers to have a Power BI account (either Free, Pro, or Premium Per User, depending on the content) and permission to view the report.
GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

3. Embed for your customers (Power BI Embedded)

This is the most advanced and developer-focused option. Known as "Power BI Embedded," it allows you to embed reports and dashboards into your own custom applications for external users who do not have Power BI accounts. This is the solution for SaaS companies that want to offer built-in analytics to their own customers. Your application authenticates the users, not Power BI.

  • Pros: Allows non-Power BI users to view content. Offers deep customization and API control.
  • Cons: Requires development resources (using REST APIs and client SDKs), is more complex to set up, and involves capacity-based pricing (Power BI Embedded or Power BI Premium).

For most day-to-day business users, you’ll be choosing between Publish to web for public data and Secure Embed for internal, private data.

How to Embed a Power BI Report: Step-by-Step

Ready to get started? Here’s a detailed walkthrough for the two most common methods. We'll start with the public option and then cover the secure internal one.

Method 1: Using "Publish to Web" (Publicly)

Use this method only for data you are 100% comfortable making public to the entire world. Think carefully before proceeding.

Step 1: Open Your Report in Power BI Service

Log in to your Power BI account at app.powerbi.com. Navigate to the workspace where your report is saved and open the report you wish to embed. Important: You can only embed reports, not dashboards directly, but a report page can be designed to look and function exactly like a dashboard.

Step 2: Generate the Public Embed Code

With the report open, go to File on the menu bar. From the dropdown, select Embed report > Publish to web (public).

Step 3: Review the Security Warning

A dialog box will appear with a very clear warning about what you're about to do. It will state that the content will be visible to anyone on the internet and that you should not use this feature for confidential information. You must acknowledge this risk before proceeding. Microsoft wants to be sure you understand the implications!

Step 4: Copy the Embed Code

Once you confirm, Power BI will generate a modal with two options: a direct link to the public report and an HTML snippet you can paste into a website (an iframe code). Copy the iframe code under the "HTML you can paste into your blog or website" section.

<iframe title="My Public Report" width="800" height="600" src="https://app.powerbi.com/view?r=..." frameborder="0" allowFullScreen="true"></iframe>

You can also customize the size (e.g., width="1140" height="541.25") before copying.

Step 5: Paste the HTML into Your Website

Take this iframe code and paste it into the HTML of your website, blog post, or anywhere else that supports HTML embedding. Most modern content management systems (like WordPress, Squarespace, or Webflow) have an "HTML" or "Embed" block where you can paste this code directly.

Managing Your Public Embed Codes

If you've published a report and later realize it contains sensitive data, you can (and should) disable the public link. Go to the Settings icon (gear icon) in Power BI Service, then Manage embed codes. Here you'll see a list of all the reports you have published to the web and can delete any specific code to immediately make it inactive.

GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

Method 2: Using a Secure Embed Code (Internally)

This is the best practice for sharing data within your organization. It ensures only authorized individuals can view the report.

Step 1: Open Your Report in Power BI Service

Just as before, log in to Power BI Service (app.powerbi.com) and open the report you want to embed privately.

Step 2: Generate the Secure Embed Code

Go to the menu bar and click File > Embed report > Website or portal.

Note: If you are specifically embedding into SharePoint Online, there is a dedicated option for that which provides a cleaner integration. For all other internal platforms, "Website or portal" is the correct choice.

Step 3: Copy the Secure Embed Code

A dialog box will appear with a link and an HTML iframe code. Unlike the public method, this link is not a security risk on its own. It's simply a URL that directs users to your report within a secure frame. Copy the iframe snippet provided.

Step 4: Paste the Code into Your Internal Site

Paste this iframe code into your company's authenticated portal, like an internal wiki page (Confluence, Notion), a company hub, or any other secure, login-protected environment. When a user visits this page, the iframe will first check if they are logged in to a valid Power BI account. If not, it will prompt them to sign in. If they are signed in but do not have permissions to view that specific report, it will show an error message. It’s that simple and that secure.

GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

An Overview of "Embed for Your Customers" for Developers

While a full tutorial on Power BI Embedded is beyond the scope of this article (it’s a deep, technical topic), it’s useful to understand what it is.

This method is for Independent Software Vendors (ISVs) or developers building an application who want to provide analytics to their customers without forcing those customers to have Power BI licenses. Your app controls the user experience.

The general workflow for this involves:

  1. Setting up a dedicated capacity: You need to purchase Power BI Embedded or Power BI Premium capacity in Microsoft Azure.
  2. Registering an application in Azure Active Directory: This creates a "service principal" that your app uses to authenticate with the Power BI APIs securely.
  3. Using the Power BI APIs: Your application's backend code will call the Power BI REST API to generate a special embed token for each user session.
  4. Using the Power BI client SDKs: In your application's front-end code (e.g., in JavaScript), you use the embed token and the report details to render the dashboard seamlessly within your application's user interface.

This process offers granular control over interactivity, filtering, and the overall look and feel, but it is a genuine development effort requiring technical expertise in both backend and frontend coding.

Final Thoughts

Embedding Power BI reports is a powerful feature for sharing data and making it an active part of your team's workflow. The most critical step is always choosing the right embedding method for your use case - prioritizing security by using the "Website or portal" option for any report that isn't intended for the general public.

While Power BI is an excellent tool for embedding reports you’ve already created, we know that getting all your data connected and turning it into a useful dashboard in the first place is often the biggest hurdle. With Graphed, we’ve created an easier way to get from raw data to actionable insights. You simply connect your marketing and sales sources - like Google Analytics, Shopify, and Salesforce - and then use plain English to ask for the dashboards and reports you need. Our AI builds it for you in seconds, saving you from the hours of manual work typically required in traditional BI tools.

Related Articles

How to Enable Data Analysis in Excel

Enable Excel's hidden data analysis tools with our step-by-step guide. Uncover trends, make forecasts, and turn raw numbers into actionable insights today!