Embedding or publishing Power BI reports in SharePoint so non-licensed individuals can view

Note: This, like many O365 things, is rapidly evolving. If you’re aware of better practices or new updates to licensing, feel free to mention it in comments.

I’m currently at SharePoint Fest Seattle where Chris McNulty, Sr. Product Manager for Office 365 and SharePoint at Microsoft, mentioned (as I understand) there could be changes coming to licensing that would allow more people to consume Power BI reports in a friendlier (more affordable) licensing structure. This would be amazing because currently:

I can create reports. People can’t view data in those reports in a secure way because the entire organization isn’t licensed for Power BI per person above the “free” license.

Specifically I, with a Power BI Pro license, can create reports and place those in SharePoint’s new page experience Power BI web parts (in Preview) but other people (with free or without Pro licenses) cannot view them. They see the following:

powerbiviewerror.PNGOf course, to me as the creator and properly-licensed individual, I see the report perfectly embedded as it should be. And not every organization can afford to license every single user appropriately to be able to simply view embedded reports. Especially if consuming reports (not sharing or building) is the only function they need in the Power BI realm.

In this post, I’ll cover:

  • How to embed Power BI reports the normal, easy (but license-exclusive) way
  • Why the webpart (normal, easy way) is cooler than embedding a script
  • How to embed the report in a (less secure) way so that non-licensed or free-license individuals can actually view and manipulate the data

How we’re supposed to embed Power BI reports in SharePoint

  1. From Power BI (app.powerbi.com), open the report you want to embed
  2. Click File –> Embed in SharePoint Online (Preview)
    embedinsharepoint.png
  3. Copy the URL you’re given
  4. Go to your SharePoint new page experience page and add a webpart using the plus sign, selecting Power BI
    pwoerbiwebpart.png
  5. Click “Add Report”
    add report.PNG
  6. Paste the URL and choose a specific page, the ratio and the pane options.
    powerbisettings.PNG
  7. Publish

What’s so great about the webpart versus embedding?

Audience targeting. With the app, we’re able to limit a 20-page report to a single page and remove the navigation pane so we can place the same report on twenty private sites with each seeing the page most specific to them while maintaining the data firewall between each site. With embedding, you have to save each page of the report separately or users will be able to move to the other pages as they please.

Visual customization. In the webpart, we can also give users the option to use the filter pane and can choose a dynamic ratio which resizes nicely. In embedding, we have to use specific dimensions which do not resize well and leave a gray border/margin around your report depending on window size.

Sharing & security. In the webpart, your report is secure and not easily shared aside from screenshots. When embedded, however, it’s simply an email away from showing up in the newspapers or in the hands of competitors. Embedded reports provide social sharing, links and email options and people can also simply take the script from your page’s html and embed it anywhere else:
sharepowerbi

That being said…

How to share Power BI reports with everyone, including those without licenses

  1. From Power BI (app.powerbi.com), open the report you want to embed
  2. Click File –> Publish to web
    publishtoweb.png
  3. In a SharePoint page (or any website on any platform) simply paste the embed code you get into your html. In SharePoint, paste it into a Script Editor web part on a classic page, or add an “embed” webpart/section on a new page in which to paste the script.


You can view the current Power BI licensing options at this link.
PowerBILicensePricing.PNG

8 Replies to “Embedding or publishing Power BI reports in SharePoint so non-licensed individuals can view”

  1. Great post thank you, stopped me swearing at MS and allowed me to share my report with the rest of the business. Two quick Qs for you; my report has filters on it that are visible in the Power BI workspace when published, but I cannot see any filters on the SP version; and if I make any changes to the source report and publish them, should the changes filter through to the SP version or do I need to manually update it with a new link?
    Fab workaround though 🙂

  2. If you embed a report within SharePoint via the last option, users are still unable to share the report, right? Since all sharing possibilities within the report share a SharePoint link for which you need a SharePoint login. Or am I seeing something wrong here?

    1. No, you’re correct. To share externally you’d need O365 and a license that allowed publishing to the web and embedding. Unfortunately this method would allow absolutely anyone with the link or access to the embed page to see the data. But that might be fine for your purposes.

  3. If I have a O365 account, does the publisher/creator need a pro license to publish to a SharePoint Web Part? I don’t have the option for ‘Embed in SharePoint Online’ with desktop free version. And I am guessing the Web Part is view-only?

      1. Thank you for the explanation. This is interesting to know. Sadly, for my situation with a lot of users that haven’t same access rigths, that seems not a real solution for me.

        the only thing to do is to buy the very expensive premium license or the pro licenses

        or looking for a less expensive BI software that can link to Access

  4. Nice how-to-post. There is one thing that I’d like to add to it which people doing this may find helpful. When using the publish to web component in Power BI, the screen warns you that “Once published, anyone on the internet will be able to access the report and all data it contains” This may limit the information people wish to publish.

Leave a Reply

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