You have published your Power BI report and want to share it with others. Now you see that you can share it through basic sharing, workspaces, Apps, publishing to web, Power BI embedded, and SharePoint online. The wide range of this variety of methods for sharing makes it confusing to choose the suitable method. I have done some conference sessions so far explaining the difference between methods in detail, and I feel this is a vital need to know before sharing content with users. In this article, you will learn about all the different methods of sharing, the pros and cons of each, and scenarios in that you can use each method for. At the end of this article, you can choose the best sharing mechanism for sharing your Power BI reports. To learn more about Power BI, read the Power BI book from Rookie to Rock Star.
What Sharing methods will be covered here
In this article, you will only hear about sharing methods that are interactive and cloud-based. We won’t talk about sharing the *.pbix file with others, that is a method of sharing, obviously, but it is not what we consider a proper sharing method. We won’t talk about exporting a Power BI report into PDF and sharing it with others because it is not interactive. We won’t discuss taking screenshots of the Power BI report and sharing it with others. Also, we won’t talk about sharing through on-premises solutions with the Power BI report server. In this article, we just focus on cloud-based, interactive methods of sharing Power BI reports. This article only covers below methods of sharing:
- Basic Sharing
- Workspace
- Power BI App
- Publish to Web
- Embed in SharePoint online
- Power BI Embedded
- Secure Embed
Basic Sharing for Dashboards and Reports
This is one of the most common ways of sharing Power BI content. However, it is not always the best way of sharing. Basic Sharing is a very simple and easy-to-use method. You can simply click on the Share button in the dashboard or report and then share it with other users.
This method of Sharing gives users three levels of access: Read-only, Re-share, and Build.
By default, when you share a Power BI dashboard with this method, then the report and the data set will be shared as well. However, you can go to Manage Permission and set up permission for every item if you want.
Users can easily click on the “Shared with me” section of their profile, and they will see all reports and dashboards shared with them from there.
This method of sharing has some pros and cons;
Advantages of Dashboard Sharing
Dashboard sharing is the most basic way of sharing content in Power BI. This method is quick and easy to set up. You don’t need to have a lot of steps to set up sharing of the dashboard. The ability to share it very quickly makes this method the most common method of sharing for testing.
If you have created a Power BI content and want to share it with others easily just for Testing, one of your first options in Dashboard sharing.
Disadvantages of Dashboard Sharing
Dashboard sharing is simple; however, it has many drawbacks, which make it hard to be used in production. I do not recommend using this method to share Power BI content with users in a production environment because of the reasons mentioned below;
No Edit Access
With Dashboard sharing, you cannot specify edit access. For end users, you never want to give edit access; however, if you are working with a team of developers and you want to provide them with access to edit the content, you cannot do that with dashboard sharing. You have to use other sharing methods, which will come later in this article.
Share Objects one at a time
You can only share one dashboard at a time. What if you wanted to share hundreds of dashboards? You must go to each dashboard and share items individually. Sharing every dashboard would add a lot of maintenance overhead to your work. The best would be having all contents under a group and sharing it with others at once.
To read more in detail about basic sharing, read this post.
Workspaces
Workspaces are created to cover the main two limitations of basic sharing; Edit access and sharing multiple objects. With a workspace, you can share as many items as you want in that workspace at once. You can also decide the access level of the workspace to be either Edit or Read-Only (through four access levels). Workspaces, because of these two features, are heavily used as collaborative development environments.
You can have four levels of access; Admin, Member, Contributor, and Viewer.
Workspaces also have advantages and disadvantages. Let’s check these out:
Advantages of Workspaces
Sharing multiple Contents with the Team
You may have shared a dashboard with a couple of your colleagues in your organization, but after a few weeks, a need for a new dashboard comes up, and you share that dashboard with them. A couple of months later, another team member asks for access to a Power BI dataset to create a report and share it with others. Power BI workspaces enable you to share content (dashboard, report, and data set) with all group members. You don’t need to share each dashboard with each user; groups made it easy for you.
Sharing all types of objects
The dashboard only allows sharing the Power BI report, dashboard, and dataset. However, sharing through the workspace allows all the content to be shared. This includes but is not limited to; Dataflows, Datasets, Datamarts, Dashboards, Reports, Metrics, Paginated Reports, etc.
Multiple Workspaces
It is hectic when you are part of multiple teams, and each team has its own dashboards, reports, and datasets. Your “shared with me” section in Power BI will be hundreds of items, and find something. There would be a problem. Power BI workspaces create a separate environment for all members of the group. You can easily switch between workspaces in Power BI.
Isolated User/Group Administration
When you share content with an individual in the organization, if that person leaves the company or is replaced by someone from another team, you have to remove sharing from a previous user account and assign it to the new user account. The best practice is to share content with groups. And members of Workspaces then easily can be managed by an administrator. Power BI workspaces can be shared with Office 365 groups. Once you use a group in Power BI, it is only an admin’s task to add/remove members.
Best Developer Environment
You need an environment to share multiple Power BI content for a team of developers. Everyone needs to have edit access to the content provided by the team. Power BI workspace is the perfect solution for the development environment. You can create a workspace as a development environment and then share it with other developer team members with Edit access. Then you all have access to the same content in your development workspace.
Power BI workspace is the perfect solution for development environment
Disadvantages of workspace
Workspaces are useful because of the reasons above. However, there are some drawbacks.
Not suitable for End Users
Workspaces are not suitable for sharing content with end users. You may wonder why that is. You can give users of the workspace read-only access to the content. However, this is half of the requirement. In an end-user sharing environment, one of the primary requirements is to have the development and user environment separated from each other.
Assume that you have created a workspace and shared it with end users. If you suddenly make changes in the workspace while they are using it, then their view of the world breaks and changes.
With one workspace your development, and user environment are the same.
You cannot use one workspace to be shared between developers and users. Creating multiple workspaces also brings another challenge. To overcome this challenge, we use Apps on top of the workspaces for sharing the content with the end users.
Complications for the workspace structure
Setting up a good workspace structure is a challenge. A workspace structure that covers the development, user needs, and deployment structure. I have explained in another article what are things to consider for setting up a workspace structure. This is more of a caution than a limitation. Use workspaces with care, and make sure you have a good setup.
Power BI Pro or PPU
Creating Power BI workspaces, or even being part of it (even as a Viewer access level), requires a Pro or PPU option and is not part of a Power BI free user account. However, it is possible to create an app for the workspace in a premium capacity and assign free Power BI users to it. This limitation is one of the main reasons this is not the most cost-effective option for sharing the content with the end users.
To learn more about Workspaces, read this post.
Power BI App
Workspaces are a great way of sharing content with users, but when it comes to having a development and user environment, then managing multiple workspaces is not the best method. Power BI App is the solution for multiple environment approach. With Power BI App, your development environment (workspace) and user environment (App) is isolated. Power BI App also can be a cost-effective option for organizations with a large user base.
Creating an App for a workspace is very simple.
Users can easily access it through the “Apps” section of their Power BI account.
Apps are great sharing methods for multiple environments and the best way of sharing for users in a production environment. however, apps also have pros and cons, as below.
Pros and Cons of Power BI Apps
Advantages of Power BI Apps
Separate Environments for Developer and End-user
This method’s most beneficial is having two separate environments; an environment for developers to edit the Power BI content in a collaborative workspace and another environment for end users to consume the report. End users will be able only to view the reports, and developers will be able to make changes.
Power BI App is the best solution to have an Isolated developer and end user environment.
A cost-effective option for a large user-base
If you have thousands of users and want to share Power BI content with them securely, then sharing with options that rely on per-user licensing is not cost-effective. A Power BI workspace can be assigned to a premium workspace, and then if you create an App on top of it, the app’s users can be FREE Power BI users. This is a big help for organizations with a large user-base. You can purchase a capacity, and as long as it can cover the load of the users over the Power BI content in the service, you get free users using it.
This option is one of the most common reasons why many organizations use the Power BI App combined with workspaces to share the Power BI content.
Controlling multiple Power BI content
Similar to the workspace, the Power BI app allows you to share multiple dashboards, reports, and datasets simultaneously. Controlling multiple contents means less maintenance overhead compared to dashboard sharing, which is one dashboard at a time.
External Sharing
Another great benefit of the Power BI app is the ability to integrate that with Azure B2B services and provide external sharing. If you want to share Power BI content with people outside your company, you can do that with a combination of Azure B2B and the Power BI app.
Cons of Power BI Apps
Power BI App is one of the best and the most common methods of sharing in Power BI, There is a small thing that you need to be careful though.
Changes in the Dataset Apply immediately.
Power BI app separates developer and end-user environments, and the changes in a report in a workspace don’t affect the end user until you update the app. However, this functionality doesn’t work with the dataset in that way. The Power BI app and the workspace are sharing same datasets, so any changes on the schedule refresh or structural changes will apply to both.
If you want to learn more about Power BI Apps, read this post.
Publish to web
Sometimes, you don’t need a secure way of sharing, you may search for an easy and free way of sharing, and your content is not confidential or sensitive. Publish to web is your friend in such a situation. This is the only free way of sharing in Power BI, but be aware that this method is not secure.
Publish to web method gives you an embed code, which you can use on any web page to embed the Power BI report in it.
The embedded content, through this way, would be available for anyone who has access to that page. Publish to web is a free way of sharing, and if you think about using this method, here are some security thoughts worth reading beforehand;
Security Thoughts on Publish to web?
What You Share is for Everyone!
The first thing you might think of is usually security. How can you manage security on this? The short answer is there is no security here. The report is shared through the web or email with EVERYONE. So everyone who has the link or embeds code can access the report. They cannot edit it. But they can view it with no restrictions.
Users can share it with others!
A report published on the web has a share section at the right-bottom hand-side. Everyone can share this report with anyone else through all social media channels; Facebook, Twitter, and LinkedIn sharing the link directly! This method of sharing is not secure. I only recommend sharing the data you want to publish a public report on your company or organization’s website.
The report is PUBLIC. Not only to those with the Link
Yes, you read it right. This report is not shared only with those with the link. It is shared globally on the internet. A search engine such as Google can search for a report. All the reports with Publish to web links are available there. You must double-check that the report and data don’t reveal confidential information.
All Report Pages Are Visible
If you have a report with 10+ pages, it will be visible to browsers. You can not limit which pages you want to show and which you don’t. For example, the above report has more than one page, and you can view it. I recommend creating different reports if you want to restrict some pages and share them separately.
What If the report has Row-Level Security applied?
If you have a report with the Row-Level security applied to it, you won’t be able to create a “Publish to web” link.
All Report Pages Are Visible
If you have a report with multiple pages, it will be visible to browsers. You can not limit which pages you want to show and which you don’t. For example, the above report has more than one page, and you can view it. I recommend creating different reports if you want to restrict some pages and share them separately.
Publish to Web is only recommended for public data sharing in your organization website with the public. There is no security option for Publish to Web; this method should not be used for reports of the confidential data of businesses.
To learn more about Publish to Web, read this post.
Embed in SharePoint Online
If you are using SharePoint online as a portal for document management and some other reasons already, then consider using Embed in the SharePoint Online feature of Power BI reports. This method is secure, and you can share the report only with the Power BI users you want.
Power BI content can be easily embedded into a SharePoint online page:
Managing security and sharing for this content needs to be done in two different places then: SharePoint Site, and Power BI.
This method also has pros and cons, as mentioned below;
Advantages and disadvantages of Embedding in SharePoint Online
Like all other methods, this method also has pros and cons.
Advantages of Embed in SharePoint Online
One portal for all content
With SharePoint online, you can share other documents as well. Why not use it for all other documents and the Power BI report? You can have one portal, which is the central sharing portal for your Office 365 tenant. Users usually love integrity.
Embedding is simple
Unlike Power BI Embedded, embedding in SharePoint online is easy. You just get the URL and embed it into a Power BI object in SharePoint online. You don’t need to write a single line of code for that purpose, but with Power BI Embedded, you need a developer.
Disadvantages of Embed in SharePoint Online
Power BI Service Golden Plate is missed
One of the great aspects of Power BI components is the service. If you use SharePoint embedded, users will use that as the portal for reports. Power BI Service has many exciting features which may not be well used in this scenario, such as Alerts, feature dashboards, the dashboard itself, Q&A, and many other items. Users can still log in to the Power BI service and see the report, but the experience you created for them with SharePoint online would not be there.
Two places for managing permissions
At the time of writing this post, you need to manage permission in Power BI Service and also in SharePoint online. This would take some time for maintenance and reconciliation to check whether those people who have access to the page are always permitted to read the report.
To learn more about Embed in SharePoint online, read this post.
Power BI Embedded
Sometimes you want to embed the Power BI content into your custom application, and you want the content to be secured. In most cases, you want to leverage the custom user management of your current application than Power BI accounts. Power BI embedded gives you all of these features. The only side effect of that is the need for a web developer.
Power BI Embedded uses an API that we call Power BI REST API, and it has many great features for interacting with Power BI content. Users can easily access reports just through your application
Pros and Cons of Power BI Embedded
With Power BI Embedded, you get a fully customizable solution. You can do whatever you want inside your application with Power BI content. You can embed reports, dashboards, tiles, and even Q&A. You can interact with those elements from the web page.
Power BI Embedded can work without the need for Power BI accounts. If you have a set of users without accounts or your users are not part of a single company, then Embedded can be a huge advantage.
Power BI Embedded implementation needs a web developer. It is not just about one-off embedding your first content; every change after that, or every new functionality you add to your application, needs a web developer’s touch.
Another big advantage of the Power BI Embedded is the ability to scale up or down on some SKU capacities and bring the costs down while keeping the performance high.
To learn more about Power BI Embedded, read this post.
Secure Embed
This method combines good things from two methods; Publish to web, and Power BI Embedded. However, Secure Embed is neither Publish to web Nor Power BI Embedded. It is getting good things from both worlds! Using Secure Embed, you can share your reports through a web portal with just a few clicks. However, unlike Publish to Web, the Secure Embed is a secure method of sharing, that only authorized users will have access to the data. As a result, this method also supports row-level security-enabled reports.
Advantages and disadvantages of Secure Embed
Like all other methods, this method also has pros and cons.
Advantages of Secure Embed
Sharing with Only a Few Clicks. No Developer Needed
As you have seen in this post, I haven’t written a single line of code; it works by using the Secure Embed option easily. All you need to do is use the URL output of the Secure Embed or embed the HTML code on a webpage you want. Unlike Power BI Embedded (which needs a developer touch), this method is very simple to implement.
Secure Sharing
Looking at the title of this method of sharing, “Secure Embed,” you probably guessed it. You have also seen in this post, through an example, how the content is secured for only those users who are authorized to see the content. Unlike Publish to web, this method is a secure method of sharing.
Row-Level Security is Supported
Publish to web method doesn’t support row-level security because there is no concept of the user logging in because no login is required. However, using Secure Embed, only authorized users will have access to the report, and as a result, row-level security is possible.
Disadvantages and Limitations of Secure Embed
Some Limitations of Power BI Embedded about the content to be shared applies. For example, ArcGIS Maps is not currently supported.
Secure Embed, at the moment, doesn’t support dashboards or paginated reports.
Another significant limitation of Secure Embed is that it won’t work with custom applications’ user setups. If you use the Secure Embed method, you must use Power BI user accounts. If you want to use a custom applications’ user base, then your better choice will be Power BI Embedded.
To learn more about Secure Embed, read this post.
Comparing all methods of Sharing
So far, you’ve learned in summary what every method does; now let’s see their difference all in one place:
Cheatsheet of Which Method to Choose?
Basic Sharing | A fast and quick method of sharing for testing reports and dashboards |
Workspace | A great option for collaborative development environments between Power BI Developer teams |
Power BI App | The best option to share reports with end users in a user environment that is isolated from the developer environment |
Publish to web | The free method of sharing, which is best for public data sets where the nature of data is not confidential |
SharePoint Online | A good choice when SharePoint online is the current portal for users in the organization |
Power BI Embedded | An option to bring Power BI content into your application, especially when user management can be done in the custom application. |
Secure Embed | Sharing simply and securely in SharePoint on-premises or a custom web application without the need for a web developer |
To read more in detail about each method, click on the links below;
Awesome post! I especially like the pros and cons of each method.
Very Nice and Useful Information ,
Thanks a lot Reza Rad
Hi Reza,
great summary!
There is one drawback of Apps that we perceive, and it is the inability to favorite individual objects within the App. You can only favorite the entire App, but not a particular report or dashboard from it, which is quite limiting, given that some Apps can have a substantial amount of reports within them.
Thanks
Thanks Radek for your comment.
great feedback. I will let the product team of Power BI know about these. would be handy feature to add
Cheers
Reza
here is an idea about it. make sure you vote for it. I just did myself:
https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/31117642-add-favorite
once votes get high enough, Power BI team will put that in their backlog
Cheers
Reza
Thanks Reza – one thing that isn’t mentioned is what type of licenses are required for each. Can you elaborate more on that?
Hi Tad,
you do need Pro, or premium licensing for all of these methods except Publish to web (which is free), and power bi embedded (which is different licensing plan)
Cheers
Reza
nice!
Very much like the summary, especially the power BI app vs content pack part.
Just wondering when product team can add in the “self-service” thing…
Great article, Reza! A slightly different solution, but have you tried PowerBI Robots? We’re currently using it at our company to schedule and automatically send PDFs with reports to several degrees of management. It lacks Power BI’s native interactivity but gets the job done.
Hi Jack.
Correct. This article talks only about ONLINE and INTERACTIVE methods of sharing. So sharing through PDFs or PowerPoints or sending *.pbix files are not listed 🙂
Great compilation of information. One thing missing is an assessment of the “new” app workspace experience currently in preview. There are significant changes to that workspace model, particularly regarding security (i.e. there is no “read only” option). For now, users can choose which workspace type they want, but may the “new” workspace may be the only option in the future.
Hi Andrea
Yes, I’m in the process of updating my blog posts on Workspace first, and then this one 🙂
Hi,
I am starting to roll out Power BI at my place of work and have found that as a pro user i can create a new workspace in the workspace preview then upload a report to this space and add non pro users access to view this report and have no issue with those free users accessing the report. When i have tried this with the old workspace set up they are told they need a pro license.
Does anyone know if this is a bug or if the new workspace’s allow ‘free users’ not pro users access to reports they have been granted permission to view.
Thanks
Hi Jordan
You can add free accounts to WS, but when they try to access the workspace, they will be asked to either upgrade their account or try pro for free to get the 60 days trial access. alternatively, you can have a premium capacity, and then share with free users
Cheers
Reza
Reza, Good Post !
Excellent information. Clear and informative.
Hi Reza,
This is what i was looking for quite some time. being a new user of Powerbi, it is always confusing to understand the available sharing options.
Thanks for the post!
😊
Thank you….very helpful
Very simple clear and useful !
I know this article is not about sharing the .pbix file. But I currently have a desktop version of Power BI and I have built a report with the data source coming from SharePoint lists. Can I share the .pbix file with others in the organization who do not have a pro license? We do not want to publish to the BI service as there is no collaboration needed, just would like to make sure a license is not needed for this kind of sharing
Hi Manu
publishing to the service is not just for collaboration, it is for hosting it also.
if you don’t want to use the Power BI service for hosting, then you can use the Power BI report server.
However, using any of these methods, the sharing won’t be a free feature.
Cheers,
Reza
Hi Reza,
My end users don’t have BI Pro version and neither they are interested to buy Pro license, hence I can not share with them reports directly. As an alternative I was thinking of sharing with them .pbix file as an attachment, however I dont want them to give access to dataset. Do we have any workaround by which if we share the entire file as an attachment with end user, they can only view reports and cannot access dataset (which was loaded from Excel/other sources). Thanks. Parag
Hi Parag
the only way that you can share a PBIX file to others, and they cannot modify your data model is to use LIVE CONNECTION in your Power BI file. which means your Power BI file does not have the data model, it is connected to SSAS or another Power BI file which is the data model.
Using another Power BI file as the data model won’t work for your scenario, because your users would need to have Power BI licenses to connect to that shared model.
but you can have a local SSAS or Azure AS as the data model, with Power BI live connection to that. as long as your users have access to SSAS or AAS, they would be fine.
Cheers
Reza
This post is wonderful and very very helpful.
What could also help if it can be clarified, what are the licencing and service needs in each solution. because cost also is a mjor factor in comparision.
Hi Priyanka
Please check out my post about Power BI licensing here
Cheers
Reza