Building a report in Power BI Desktop is only half the job. Until you publish it, you're the only person who can see it. This guide covers getting your report into the Power BI Service, picking the right way to share it, keeping the data fresh, and the licensing realities that trip people up the first time they hit "Publish."
Publish to a workspace, not just "the cloud"
When you click Publish on the Home ribbon in Power BI Desktop, you sign in with your Microsoft work account and pick a workspace as the destination. A workspace is a shared container — think of it as a project folder in the Power BI Service that holds reports, semantic models, dashboards, and dataflows, with its own membership and roles.
Two things upload together:
- The report — the visuals, pages, and layout.
- The semantic model (formerly called a "dataset") — the tables, relationships, and DAX measures behind those visuals.
A few rules worth knowing before you publish:
- My Workspace is your personal sandbox. You can publish there, but you generally can't share from it cleanly, so it's a poor home for anything other people need. Use a proper named workspace instead.
- You typically need a Power BI Pro license (or a workspace backed by Premium/Fabric capacity) to publish and to be a workspace member.
- If a report with the same name already exists in the workspace, publishing overwrites it — including the semantic model. That's how you push updates, but it also means careless re-publishing can stomp on a colleague's changes.
If you work in the newer .pbip (Power BI Project) format instead of a single .pbix file, you publish the same way from Desktop. The .pbip format is mainly there for source control — it's a folder of text files rather than one binary.
Pro vs Premium: the licensing decision that controls sharing
This is the part that surprises most first-timers. Publishing is easy; letting other people view the report is where licensing kicks in.
| Scenario | What the author needs | What the viewer needs |
|---|---|---|
| Share a report in a regular workspace | Power BI Pro | Power BI Pro |
| Share content in a Premium / Fabric capacity workspace | Pro (to author) | Free license is enough |
| Just hand someone the file | Nothing (Desktop is free) | Power BI Desktop (free) |
As of 2026, Power BI Pro is roughly $14/user/month and Premium Per User (PPU) is around $24/user/month (always check Microsoft's pricing page for current figures). Capacity-based options — Premium capacity, now part of Microsoft Fabric — are priced per capacity rather than per user, and are the route organizations take when they want a large audience to view reports without buying everyone a Pro seat.
The practical takeaway: if you only need to share with a handful of colleagues who all have Pro, a regular workspace is fine. To reach a broad, free-licensed audience, the content has to sit in a Premium/Fabric capacity workspace.
Three ways to share, from quickest to most polished
Once a report is in a workspace, you have several distribution options. Pick based on audience size and how "finished" you want it to feel.
1. Direct share link
Open the report in the Service, click Share, and generate a link. You can scope it to specific people, your whole org, or people who already have access. This is the fastest option and best for one-off, "take a look at this" moments. Recipients still need the right license (Pro, or free if the content is in Premium/Fabric capacity).
2. Publish an app
A workspace app is the recommended way to distribute to a defined audience. You bundle selected reports and dashboards, write a short description, control which audience sees which content, and publish. Viewers get a clean, read-only experience without seeing the messy workspace internals or your draft pages. When you change something, you re-publish the app to push the update. This is the right choice for anything recurring — a monthly finance pack, an ops dashboard, a marketing scorecard.
3. Embed or export
For lighter needs you can embed a report in a SharePoint page or Teams tab, or export to PDF/PowerPoint for people who just want a static snapshot. Exports lose interactivity, so use them for distribution, not analysis.
Reports vs dashboards: don't confuse the two
These terms get used interchangeably, but they're different objects in the Service:
- A report is multi-page and interactive, built in Power BI Desktop, and bound to exactly one semantic model. This is where filtering, cross-highlighting, and drill-down live.
- A dashboard is a single-page canvas you build only in the Service by pinning individual visuals ("tiles") from one or more reports. Dashboards are great for an at-a-glance summary that pulls from several reports, and they support features like alerts on a tile.
Most teams share reports (or an app of reports). Build a dashboard when you specifically want one consolidated landing page stitched together from multiple sources. If you're still deciding how your underlying tables should be shaped before any of this, our guide to star schema modeling is the right starting point — clean relationships make everything downstream easier to share and maintain.
Keep it current with scheduled refresh
A published report shows the data as of the moment you published — unless you set up refresh. In the Service, open the semantic model's settings:
Workspace → (semantic model) → Settings →
1. Data source credentials — sign in / supply keys for each source
2. Gateway connection — required if data is on-prem or in a private network
3. Scheduled refresh — toggle On, pick days + times, set a failure email
Two things commonly block refresh:
- Credentials — if you imported from a database or an API, the Service needs its own connection info; it doesn't inherit what was cached in Desktop.
- Gateway — if your source is a local file share, on-prem SQL Server, or anything not directly reachable from the cloud, you must install and bind an on-premises data gateway.
Refresh frequency is also a licensing line: Pro allows up to 8 scheduled refreshes per day per model, while Premium/Fabric capacity raises that to 48. (Manual "Refresh now" doesn't count against the limit.) If your data is small and changes nightly, eight is plenty. Note this applies to Import models; reports using DirectQuery or Live connection query the source on demand and don't need an import refresh.
Lock down who sees which rows with RLS
If different viewers should see different slices of the same report — each regional manager sees only their region, say — you don't build separate reports. You use row-level security (RLS).
You define roles with DAX filter rules in Power BI Desktop (Modeling → Manage roles), then publish and assign people or groups to those roles in the Service under the semantic model's security settings. A role's filter is just a boolean DAX expression on a table. For example, to scope a Sales table to the signed-in user's region:
[Region] = LOOKUPVALUE(
UserRegion[Region],
UserRegion[Email], USERPRINCIPALNAME()
)
Every viewer opens the same report but sees only the rows their role permits. Set RLS up early — retrofitting it onto a model that's already widely shared is fiddly, and one shared report with RLS is far easier to maintain than a dozen near-identical copies.
A quick pre-share checklist
Before you send that link or publish the app, run through this:
- The report is in a named workspace, not My Workspace.
- Visuals, titles, and number formats are clean — and a consistent theme is applied (our free theme generator makes that a two-minute job).
- Scheduled refresh is configured and the first refresh succeeded.
- Viewers have the license they need (Pro, or free if the workspace is on Premium/Fabric capacity).
- RLS is in place if anyone should see only part of the data.
- You shared via an app if this is recurring, or a scoped link if it's a one-off.
Don't have a finished report to publish yet? That's exactly what we do. Send Instant PowerBI your raw CSV or Excel data and you get back a finished, fully-modeled, branded Power BI report — built on a proper star schema with the DAX measures already written — ready to open in free Power BI Desktop and publish or share using everything above. Get started and skip straight to the part where you hit Publish.
Frequently asked questions
How do I publish a Power BI report?
In Power BI Desktop, finish your report, click Publish on the Home ribbon, sign in with your Microsoft work account, and choose a destination workspace. Desktop uploads both the report and its semantic model to the Power BI Service, where you can open it in a browser and share it.
Can I share a Power BI report with someone for free?
Not directly through the Power BI Service. To view a shared report, recipients generally need a Power BI Pro license (roughly $14/user/month as of 2026), unless the content lives in a Premium or Fabric capacity workspace, which lets users with only a free license consume it. You can always send the .pbix file itself, which opens in free Power BI Desktop.
What is the difference between a Power BI report and a dashboard?
A report is a multi-page, interactive document built in Power BI Desktop and tied to one semantic model. A dashboard is a single-page canvas you build only in the Power BI Service by pinning tiles from one or more reports. Reports support full filtering and drill-down; dashboards are a curated, at-a-glance summary.
How do I set up scheduled refresh in Power BI?
In the Power BI Service, open the semantic model's settings, configure the data source credentials (and an on-premises data gateway if the source is local), then enable Scheduled refresh and pick the times. Pro allows up to 8 scheduled refreshes per day per model; Premium/Fabric capacity allows up to 48.
Build Power BI reports for a living? Do this part in minutes.
Studio turns a data export and a sentence into a valid .pbip project — TMDL model, PBIR report pages, DAX measures, branded theme. You keep the judgment calls; the clicking is done.
See Studio →