Embedding Power BI Dashboards in SharePoint for Organization-Wide Access
Power BI dashboards deliver transformative analytics, but their value depends on broad organizational adoption. Embedding Power BI directly into SharePoint brings data-driven insights to where your teams already work, eliminating the friction of switching between platforms and making analytics consumption effortless for every department.
Why Embed Power BI in SharePoint?
Most organizations invest heavily in building Power BI reports and dashboards, but adoption often stalls because users must navigate to a separate Power BI service portal to view them. Embedding reports directly into SharePoint pages solves this by placing analytics where teams already collaborate. Department home pages, project sites, executive portals, and operational dashboards all become data-informed experiences without requiring users to learn a new tool.
The benefits extend beyond convenience. Embedded Power BI reports utilize SharePoint's permission model and row-level security. This setup ensures that users can only view the data they are authorized to access.
IT also gains centralized governance over both the analytics content and the collaboration platform. Additionally, organizations can lower licensing costs by using Premium or Fabric capacity instead of needing per-user Pro licenses for every viewer.
Power BI Web Part Configuration: Step by Step
The Power BI web part is the recommended method for embedding reports in SharePoint Online. It provides native integration with single sign-on, responsive design, and full interactivity.
Prerequisites
- SharePoint Online: Modern pages are required. Classic pages do not support the Power BI web part. If your organization still uses classic sites, plan a migration to modern SharePoint.
- Power BI licensing: Reports must be published to a workspace backed by Pro, Premium, or Fabric capacity. The publishing user needs a Pro or Premium Per User (PPU) license.
- Permissions: Users viewing the embedded report must have at least Viewer role in the Power BI workspace or the report must be shared with them directly or via an app.
- Tenant settings: The Power BI admin must enable "Publish to web" and "Embed content in apps" settings in the Power BI admin portal.
Adding the Web Part
- Edit the SharePoint page where you want the dashboard. Navigate to the page and click Edit in the top-right corner.
- Add the Power BI web part. Click the + icon in a section, search for "Power BI", and select the Power BI web part.
- Paste the report URL. Copy the report URL from the Power BI service (app.powerbi.com) and paste it into the web part configuration pane.
- Configure display options. Set the page to display (for multi-page reports), enable or disable the filter pane and navigation pane, and set the web part height.
- Publish the page. Save and publish. Users with appropriate permissions will see the live, interactive report.
Report-Level vs. Page-Level Embedding
Power BI reports can contain multiple pages (tabs), and you have two embedding strategies to consider for SharePoint:
Report-Level Embedding
The report is fully embedded with page navigation. Users can easily switch between pages in the embedded web part. This feature is ideal for comprehensive dashboards where users need access to multiple views, including:
- Overview
- Detail
- Trends
All of this is available within a single SharePoint page.
Page-Level Embedding
This feature lets you embed a specific page from a multi-page report. The navigation is hidden, which makes it perfect for focused dashboards on department pages.
Each SharePoint page can show one specific view. You can also embed different pages on various SharePoint pages for a customized experience.
For executive portals, EPC Group typically recommends page-level embedding with a curated selection of the most critical metrics on each SharePoint page. This reduces cognitive load and ensures executives see exactly what they need without navigating through report pages.
Row-Level Security (RLS) Integration with SharePoint Groups
Row-level security is the mechanism that ensures each user sees only the data they are authorized to view. When combined with SharePoint embedding, RLS creates a powerful governed analytics experience where one report serves the entire organization with personalized data views.
How RLS Works with Embedded Reports
When a user opens a SharePoint page with an embedded Power BI report, the Power BI web part sends the user's Entra ID identity to the Power BI service. The service then checks the user against defined RLS roles. It applies DAX filter expressions to limit the data visible to that user. This process occurs automatically, requiring no action from the user.
RLS Design Patterns for SharePoint
- Dynamic RLS with userprincipalname(): The most common pattern. A security table maps user email addresses to data access rules. The DAX filter uses
USERPRINCIPALNAME()to match the current user. Scales well but requires maintaining the security mapping table. - Azure AD group-based RLS: Uses
CUSTOMDATA()in combination with Power BI security groups. Simpler to manage for organizations with well-structured Azure AD groups that map to data access boundaries. - Manager hierarchy RLS: For organizations where data access follows the org chart. Managers see their own data plus all direct and indirect reports. Implemented using parent-child DAX functions against an employee hierarchy table.
- Multi-role RLS: Complex scenarios where users may have different access levels for different data domains. A user might be a regional manager for sales data but have company-wide access to HR metrics. Requires multiple RLS roles with careful testing.
Performance Optimization for Embedded Reports
Embedded reports need to load quickly to keep users engaged. A report that takes 15 seconds to render in SharePoint will be abandoned by most users. EPC Group's performance optimization method aims for load times under 3 seconds for embedded dashboards.
- Reduce visual count: Limit each report page to 6-8 visuals. Every visual generates separate queries, and the Power BI web part renders them sequentially. Use drillthrough pages for detail rather than cramming everything onto one page.
- Use Import mode: Import mode is significantly faster than DirectQuery for most scenarios. If real-time data is needed, consider a hybrid approach with Import for historical data and DirectQuery only for the latest metrics.
- Implement aggregations: For datasets over 100 million rows, define aggregation tables that pre-compute common summarizations. Power BI automatically routes queries to aggregations when possible, delivering sub-second responses.
- Optimize DAX measures: Avoid iterator functions (SUMX, FILTER) on large tables. Use variables to prevent recalculation. Replace calculated columns with measures where possible. Use TREATAS instead of FILTER for virtual relationships.
- Enable query caching: On Premium or Fabric capacity, enable dataset query caching to store query results and serve repeated queries from cache. Especially effective for dashboards viewed by many users with similar filter selections.
- Configure web part height: Set an explicit height on the Power BI web part to prevent layout shift during loading. This improves perceived performance and Core Web Vitals scores on the SharePoint page.
Premium vs. Pro Licensing for Embedding
Licensing is the most critical cost decision for Power BI embedding. The choice between Pro, Premium Per User (PPU), Premium Per Capacity, and Fabric capacity depends on your user count, usage patterns, and feature requirements.
Power BI Pro ($10/user/month)
Every viewer needs a license. Cost-effective for under 250 users. No dedicated capacity, shared resources. Suitable for departmental embedding where viewer count is controlled.
Premium Per User ($20/user/month)
Every viewer requires a PPU license. This license offers Premium features, including:
- Paginated reports
- AI capabilities
- Support for large datasets
The pricing is per user. It is ideal for 250-500 users who need these Premium features but do not warrant capacity pricing.
Premium Per Capacity (P1 from ~$4,995/month)
Dedicated capacity. Viewers need only free Power BI licenses. Break-even vs. Pro typically at 500+ viewers. Ideal for organization-wide embedding. Being replaced by Fabric capacity.
Microsoft Fabric Capacity (F2 from ~$262/month)
The future of Power BI capacity looks promising. It offers a unified analytics platform that includes Power BI. The F64 and higher tiers provide free viewer access, similar to P1.
This platform can scale from small teams (F2) to large enterprises (F2048). It also features a pay-as-you-go option with auto-pause, which helps lower costs for variable workloads.
Fabric Capacity Considerations for Enterprise Embedding
Microsoft Fabric represents the future of enterprise analytics, and organizations planning Power BI embedding should evaluate Fabric capacity as the preferred deployment model.
- Capacity sizing: For embedding, size capacity based on peak concurrent users and query complexity. An F64 capacity typically supports 500-1,000 concurrent viewers with Import mode reports. DirectQuery and complex DAX require higher capacity.
- Auto-scale and pause: Fabric supports capacity auto-scaling to handle usage spikes and auto-pause during off-hours to reduce costs. Configure scale rules based on CPU utilization thresholds.
- Direct Lake mode: Fabric's Direct Lake mode combines the performance of Import mode with the freshness of DirectQuery by reading directly from Delta tables in OneLake. For organizations using Fabric end-to-end, this eliminates scheduled refresh latency.
- Multi-geo considerations: Fabric capacity is region-specific. Organizations with users in multiple geographies should deploy capacity in regions closest to their user base and configure multi-geo settings for compliance requirements.
Governance and Security Best Practices
Embedding Power BI in SharePoint requires governance policies that span both platforms. Microsoft 365 governance should address:
- Workspace governance: Define naming conventions, ownership requirements, and lifecycle management for Power BI workspaces. Orphaned workspaces with embedded reports create security and maintenance risks.
- Certification and endorsement: Use Power BI certification and endorsement features to flag reports that meet quality standards. Only embed certified reports in organization-wide SharePoint pages.
- Sensitivity labels: Apply Microsoft Purview sensitivity labels to Power BI datasets and reports. Labels flow from data source through dataset to report to embedded web part, ensuring consistent classification.
- Access reviews: Quarterly access reviews for Power BI workspace membership and RLS role assignments. Automated alerts when users leave the organization or change roles.
Partner with EPC Group for Power BI and SharePoint Integration
EPC Group has implemented Power BI embedded analytics for healthcare systems, financial institutions, and government agencies. As bestselling author of the Microsoft Press Power BI book and trusted Power BI consulting partner, Errin O'Connor brings deep expertise in enterprise analytics architecture. Our team delivers end-to-end solutions from data modeling and report design through SharePoint embedding, RLS configuration, and Fabric capacity optimization.
Ready to Bring Analytics to Your SharePoint?
Let EPC Group design and implement your Power BI embedding strategy with proper licensing optimization, RLS configuration, and performance tuning.
Frequently Asked Questions
What is the difference between the Power BI web part and embed URL in SharePoint?
The Power BI web part is a native SharePoint Online component that provides seamless single sign-on, respects row-level security, and offers a polished viewing experience within SharePoint pages. Embed URLs use iframe-based embedding that works in both SharePoint Online and on-premises but may require separate authentication. For SharePoint Online, always use the native Power BI web part as it provides better security integration, performance, and user experience. EPC Group recommends the web part for all new deployments.
Do users need a Power BI Pro license to view embedded reports in SharePoint?
It depends on your capacity model. With Power BI Pro licensing, every user who views an embedded report needs their own Pro license ($10/user/month). With Power BI Premium Per Capacity (P SKUs) or Microsoft Fabric capacity (F SKUs), you can share reports with free Power BI users within your organization, dramatically reducing per-user costs for large deployments. EPC Group helps organizations determine the cost-optimal licensing strategy based on user count and usage patterns.
How does row-level security (RLS) work with Power BI embedded in SharePoint?
Row-level security filters data automatically based on the signed-in user's identity. When a Power BI report with RLS is embedded in SharePoint using the native web part, the user's Azure AD/Entra ID identity is passed to the Power BI service, which applies the appropriate RLS filters. This means each user sees only the data they are authorized to view, even though everyone accesses the same report on the same SharePoint page. RLS roles can map to Azure AD groups for simplified management.
What is Microsoft Fabric capacity and how does it affect Power BI embedding?
Microsoft Fabric is a unified analytics platform that includes Power BI, Data Factory, Synapse, and other services under a single capacity model. Fabric capacities (F SKUs) replace Power BI Premium capacities (P SKUs) as the recommended deployment model. F2 starts at approximately $262/month and scales to F2048. For embedding, Fabric capacity allows unlimited viewers within your organization without per-user Pro licenses, provides dedicated compute for better performance, and includes features like Direct Lake mode for faster queries.
How can I optimize Power BI report performance when embedded in SharePoint?
Key performance optimizations include: using Import mode instead of DirectQuery where possible, implementing aggregations for large datasets, reducing visual count per page to under 8, using bookmarks for different views instead of multiple visuals, enabling query caching on Premium/Fabric capacity, optimizing DAX measures to avoid iterator functions on large tables, and configuring the Power BI web part to load a specific page rather than the full report. EPC Group's Power BI performance audits typically improve load times by 40-60%.
