MICROSOFT POWER BI β€’ POWER BI DESKTOP WORKFLOW

Desktop vs. Service vs. Mobile β€” Understand the difference between Power BI Desktop, Service, and Mobile (conceptual)

Understanding the three pillars of the Power BI ecosystem and how they form a complete analytics pipeline.

Historical Context & Motivation

Before Microsoft unified its analytics offerings under the Power BI brand, business intelligence tools were fragmented across expensive, server-heavy platforms that demanded specialized IT infrastructure and significant DBA involvement. Organizations relied on monolithic reporting solutions like SQL Server Reporting Services (SSRS) or third-party tools such as Tableau and Cognos, each requiring substantial server-side configuration and offering limited mobility. The challenge was clear: how could Microsoft deliver a modern, self-service analytics experience that spanned the entire workflow from data modeling to cloud-based sharing to on-the-go consumption?

The evolution of Power BI traces a trajectory from Excel-based add-ins to a fully integrated ecosystem of three complementary tools. Understanding this history clarifies why Power BI is architected as three distinct yet interoperable components rather than a single monolithic application β€” a design decision rooted in the separation of concerns principle that computer science students will find familiar from software engineering.

2010
Power Pivot Add-In for Excel
Microsoft released Power Pivot as an Excel add-in, introducing the xVelocity in-memory engine (later branded VertiPaq). This columnar compression engine enabled analysts to model millions of rows directly inside Excel, laying the foundation for self-service BI.
2013
Power BI for Office 365 (Preview)
Microsoft introduced a cloud-based BI service tightly coupled with Office 365, allowing Excel workbooks with Power Pivot models to be published and shared through SharePoint Online. This was the first glimpse of the service layer concept.
2015
Power BI Desktop & Service GA
Microsoft launched Power BI Desktop as a free, standalone Windows application and the Power BI Service (app.powerbi.com) for cloud collaboration β€” formally splitting authoring from distribution.
2016
Power BI Mobile Apps
Native mobile applications for iOS, Android, and Windows 10 completed the trifecta, enabling executives and field workers to consume dashboards with touch-optimized layouts, offline caching, and push-notification alerts.
2023–Present
Microsoft Fabric Integration
Power BI became the analytics layer within Microsoft Fabric, a unified data platform. The Desktop–Service–Mobile trichotomy remains, but now sits atop a lakehouse architecture with OneLake storage.

The central question this lesson addresses is architectural: why does Power BI separate creation, distribution, and consumption into three distinct applications? The answer lies in the different personas, connectivity requirements, and computational demands at each stage of the analytics lifecycle β€” a pattern analogous to the Model-View-Controller (MVC) paradigm in software architecture, where responsibilities are cleanly partitioned.

Core Principles & Definitions

The Power BI ecosystem rests on a clear separation of concerns: each of the three components β€” Desktop, Service, and Mobile β€” owns a distinct phase of the analytics pipeline. This mirrors the ETL-publish-consume pattern familiar in data engineering. Power BI Desktop handles Extract-Transform-Load and report authoring; the Power BI Service manages publishing, collaboration, and scheduled refresh; and Power BI Mobile optimizes the consumption experience for handheld devices. Before examining each component in detail, it is essential to internalize the foundational principles that govern their interplay.

1

Author Where You Compute

Heavy data transformations (Power Query M scripts, DAX measure authoring, data model relationships) run locally on the analyst's machine inside Power BI Desktop. This avoids round-trip latency to the cloud and allows development against live or imported data sources without network dependency.
2

Distribute Through the Cloud

Once a report (.pbix file) is ready, it is published to the Power BI Service, which hosts the dataset in a managed Azure backend. The Service handles row-level security enforcement, workspace access control (RBAC), scheduled data refresh via gateways, and dashboard-level alerting β€” all server-side responsibilities.
3

Consume Anywhere

The Power BI Mobile apps act as thin clients that render reports and dashboards with touch-optimized layouts. They support offline snapshots, barcode-scanning for contextual data lookup, and push notifications when KPIs breach thresholds β€” extending BI into the field.
4

Single Source of Truth

All three tools point to the same underlying semantic model (formerly called a dataset). Whether a user opens a dashboard on a phone or drills into a report in a browser, the DAX engine evaluates measures against the same in-memory columnar store, ensuring consistency across form factors.
5

.pbix as the Artifact

The .pbix file is a ZIP archive containing a compressed VertiPaq database, Power Query scripts, report layout JSON, and metadata. It is the primary deployment artifact, analogous to a compiled binary in software engineering β€” authored in Desktop, deployed to Service.
✦ KEY TAKEAWAY
Think of the Power BI ecosystem like a modern CI/CD pipeline. Power BI Desktop is your IDE β€” where you write code (DAX, M), build the data model, and iterate on visuals. The Power BI Service is your deployment server β€” it hosts the artifact, manages access control, schedules jobs, and serves the application to users. Power BI Mobile is the mobile client app β€” a lightweight front-end optimized for consumption. Just as you wouldn't compile code on your phone or deploy from your IDE in production, each Power BI component has its purpose.

Visual Explanation β€” The Power BI Ecosystem

The following diagram illustrates the end-to-end flow of data through the three Power BI components. Observe how the .pbix artifact serves as the bridge between the authoring environment and the cloud platform, and how both the Service and Mobile apps ultimately query the same hosted semantic model.

The three columns represent the three components of Power BI. Data flows left to right: authored in Desktop (violet), published to the Service (cyan), and consumed on Mobile (amber). All three ultimately query the same hosted semantic model.

Notice how each column in the diagram encapsulates a coherent set of responsibilities. The Desktop column is compute-heavy β€” Power Query transformations, VertiPaq compression, and DAX evaluation all run on the analyst's local CPU and RAM. The Service column operates server-side in Azure, managing permissions, orchestrating gateway-based refresh schedules, and composing individual report pages into curated dashboards (which are a Service-only concept). The Mobile column is a thin client: it issues REST API calls to the Service, receives rendered tiles, and layers on device-native capabilities such as GPS-aware filtering, camera-based barcode scanning, and OS-level push notifications.

⚠️ Important Distinction
Dashboards are not the same as reports in Power BI terminology. Reports are multi-page, interactive canvases created in Desktop. Dashboards are single-page collections of pinned tiles from one or more reports, and they can only be created in the Service. This asymmetry is an intentional design choice: dashboards aggregate KPIs across multiple reports, a curation task that belongs in the collaboration layer.

How the Three Components Interact

While this lesson is conceptual rather than mathematical, a rigorous understanding of the interaction patterns among the three Power BI components requires examining the underlying communication protocols, data flow mechanisms, and architectural layers. The relationship between Desktop, Service, and Mobile can be formalized as a three-tier client-server architecture β€” a pattern every computer science student should recognize from distributed systems coursework.

Tier 1 β€” Data Authoring (Power BI Desktop)

Power BI Desktop operates as a thick client. When the user connects to data sources, the Mashup Engine (Power Query) executes M-language scripts to extract and transform data. The cleaned data is then loaded into the VertiPaq engine β€” a columnar, in-memory store that compresses data using run-length encoding and dictionary encoding. The model is persisted as an ABF (Analysis Services Backup Format) file within the .pbix archive. Visuals are described in a JSON-based layout file that references DAX queries. Internally, Desktop spins up a local instance of Analysis Services Tabular on a random port; when you interact with a visual, the rendering layer issues XMLA queries against this local AS instance.

Tier 2 β€” Cloud Platform (Power BI Service)

Publishing a .pbix file to the Service uploads the compressed model to Azure-managed Analysis Services clusters. The Service decompresses and loads the model into shared or dedicated capacity (depending on the license tier β€” Pro uses shared, Premium/Fabric uses dedicated). The On-Premises Data Gateway acts as a secure relay (using Azure Service Bus) for scheduled refresh operations that need to reach on-premises SQL databases, file shares, or other non-cloud sources. API-level, the Service exposes Power BI REST APIs for programmatic content management, and it serves the web front-end at app.powerbi.com as a single-page application (SPA) built with Angular and D3.js-based rendering.

Tier 3 β€” Mobile Clients (Power BI Mobile)

The Mobile apps are native applications (Swift/Kotlin) that authenticate via Azure Active Directory (Entra ID) and call the same Power BI REST APIs that the web SPA uses. However, the Mobile layer adds device-specific capabilities: offline caching (storing pre-rendered tile snapshots in a local SQLite database), push notifications (via APNs/FCM when server-side data alerts fire), and responsive layout adaptation (phone layouts that reflow visuals into single-column stacks). Mobile never performs data transformation or model changes β€” it is strictly a read-optimized consumption layer.

This architectural diagram shows how data sources connect to Desktop via ETL, how the .pbix artifact is published to the Service, how the Data Gateway enables scheduled refresh from on-premises sources, and how Mobile apps consume the Service via REST APIs. Azure AD (Entra ID) unifies authentication across all tiers.

Detailed Feature Breakdown

A comprehensive understanding of the three Power BI components requires examining their capabilities side by side. The following table delineates what each component can and cannot do, highlighting the intentional asymmetries in the architecture. For instance, the ability to create DAX measures exists only in Desktop (and, as a recent addition, in the Service's web editing mode), while dashboard creation is exclusive to the Service. These asymmetries enforce a clean separation of the authoring and curation workflows.

Feature comparison across the three Power BI components
CapabilityDesktopServiceMobile
Connect to data sourcesβœ… Full (150+ connectors)βœ… Limited (cloud sources, dataflows)❌ Not available
Transform data (Power Query)βœ… Full M editorβœ… Via Dataflows❌ Not available
Build data model (relationships)βœ… Full model view⚠️ Limited (web modeling)❌ Not available
Author DAX measuresβœ… Full DAX editorβœ… Quick measures❌ Not available
Design report pagesβœ… Full canvasβœ… Web editing (subset)❌ Read-only
Create dashboards❌ Not availableβœ… Pin tiles from reports❌ Read-only
Schedule data refresh❌ Manual onlyβœ… Up to 48Γ—/day (Premium)❌ Not available
Row-level security (RLS)βœ… Define rolesβœ… Enforce rolesβœ… Inherited from Service
Set data alerts❌ Not availableβœ… Threshold-basedβœ… Push notifications
Offline accessβœ… Local .pbix file❌ Requires internetβœ… Cached snapshots
PlatformWindows onlyAny modern browseriOS, Android, Windows
License requiredFree (no license needed)Pro or Premium/FabricPro or Premium/Fabric

Several patterns emerge from this matrix. First, the authoring capabilities are concentrated in Desktop, with the Service offering a progressively expanding but still limited web-editing experience. Second, the governance and operational capabilities β€” scheduling, alerting, security enforcement, workspace management β€” live exclusively in the Service. Third, Mobile's feature set is consumption-only with additive device-native features. This pattern is consistent with the principle that each component serves a specific persona: the data analyst, the BI administrator, and the business decision-maker.

πŸ“Œ Note on Convergence
Microsoft has been gradually blurring the lines between Desktop and Service. The Service now supports limited report editing, DAX quick measures, and web-based data modeling. However, for production workflows β€” especially those involving complex M transformations or large-scale model optimization β€” Desktop remains the authoritative authoring environment.

Worked Example β€” End-to-End Analytics Workflow

Consider a concrete scenario: a university's enrollment analytics team wants to build a dashboard showing real-time student enrollment figures, broken down by department and semester, with automated alerts when any department drops below a threshold. We will trace this requirement through all three Power BI components to illustrate the workflow.

University Enrollment Dashboard β€” Full Workflow
1
Step 1 β€” Connect & Transform in DesktopThe data analyst opens Power BI Desktop and uses the SQL Server connector to connect to the university's on-premises student information system (SIS) database. In Power Query, they write M scripts to filter out test records, merge the enrollment table with a department lookup, and add a calculated column for enrollment status (Active, Withdrawn, Graduated). The cleaned data is loaded into the VertiPaq model.
A clean, star-schema model with Enrollment (fact), Department (dim), Semester (dim), and Student (dim) tables.
2
Step 2 β€” Build the Data Model & DAX MeasuresIn the Model view, the analyst defines relationships between the fact and dimension tables. They then author DAX measures such as Active Students = CALCULATE(COUNTROWS(Enrollment), Enrollment[Status] = "Active") and YoY Growth % = DIVIDE([Active Students] - [Active Students PY], [Active Students PY]). These measures encapsulate business logic independently of any specific visual.
Reusable DAX measures that produce consistent results regardless of the filter context applied by slicers or cross-filters.
3
Step 3 β€” Design Report PagesThe analyst creates three report pages: an executive summary with KPI cards and a bar chart, a departmental drill-through page with a matrix visual, and a trend page with a line chart showing enrollment over eight semesters. They apply the university's brand colors using a custom theme JSON file and configure mobile-optimized layouts for each page using Desktop's phone layout view.
A polished, three-page .pbix report file ready for publishing.
4
Step 4 β€” Publish to the ServiceUsing the Publish button in Desktop, the analyst uploads the .pbix to a Power BI Service workspace named 'Enrollment Analytics'. The workspace admin configures an on-premises data gateway for scheduled refresh (every 6 hours), assigns row-level security roles so each department chair sees only their data, and pins key KPI tiles to a dashboard. They also create an 'App' for simplified distribution to 200+ stakeholders.
A governed, auto-refreshing workspace with RBAC, a curated dashboard, and a published App accessible via URL.
5
Step 5 β€” Consume on MobileThe Dean of Students installs Power BI Mobile on their iPad and iPhone. They sign in with their university Azure AD credentials, favorite the Enrollment Analytics App, and set a data alert on the Active Students KPI card: 'Notify me if any department drops below 50 active students.' When the next scheduled refresh detects that the Philosophy department has 47 active students, the Dean receives a push notification and can immediately drill into the departmental detail page β€” even while walking between meetings.
Real-time, actionable insight delivered to the decision-maker's pocket, triggering timely intervention.

Strengths & Limitations of Each Component

No architectural choice is without trade-offs. The three-component design of Power BI introduces specific strengths and limitations at each layer. Understanding these constraints is essential for making informed decisions about which tool to use at each stage and for designing workarounds when limitations arise.

Strengths and limitations of each Power BI component
ComponentStrengthsLimitations
Power BI DesktopFull-featured authoring environment; local compute avoids cloud latency; free to download and use; supports 150+ data connectors; full DAX IntelliSense; version control via .pbix files or TMDL with Git integrationWindows-only (no macOS/Linux native); no real-time collaboration (single-user editing); .pbix files can become large (1 GB+ limit on publish); no scheduled refresh capability; requires manual republish for updates
Power BI ServicePlatform-agnostic (browser-based); centralized governance (workspaces, RBAC, audit logs); automated refresh; dashboard composition from multiple reports; embedding via Power BI Embedded APIs; natural language Q&ALimited authoring capabilities vs. Desktop; requires Pro or Premium license for sharing; data model size limits on shared capacity (1 GB); gateway setup for on-prem sources adds complexity; latency on first report load
Power BI MobileNative apps with device-optimized UX; offline caching for disconnected scenarios; push notifications for alerts; barcode/QR scanning; biometric authentication (Face ID, fingerprint); annotation and sharingStrictly read-only (no authoring at all); limited screen real estate for complex reports; offline data is stale (snapshot-based); phone layouts must be manually configured in Desktop; requires same licensing as Service
✦ KEY TAKEAWAY
The three-component architecture reflects a deliberate engineering trade-off between capability depth and deployment flexibility. By concentrating heavy computation in Desktop, Microsoft avoids the complexity of browser-based data modeling (compare how Jupyter notebooks struggle with multi-gigabyte datasets in the browser). By routing all sharing through the Service, they enforce a single governance chokepoint β€” analogous to how a Git server mediates all code distribution even though developers work locally. Mobile, as a thin client, can evolve independently with device-native features without impacting the core analytics engine.

Connection to Advanced Concepts & Microsoft Fabric

The Desktop–Service–Mobile trichotomy is the foundation upon which more advanced Power BI concepts build. Understanding these three components prepares you for topics like deployment pipelines (dev β†’ test β†’ prod promotion of .pbix files within the Service), XMLA endpoints (programmatic access to the Service's Analysis Services engine), and Power BI Embedded (embedding reports into custom applications via iframes and JavaScript APIs). Each of these advanced features leverages the component boundaries established by the three-tier architecture.

Evolution from current three-tier Power BI to Microsoft Fabric integration
ConceptCurrent (Three-Tier)Advanced / Fabric Era
Data StorageVertiPaq compressed model in .pbix (Desktop) or Azure AS (Service)OneLake (lakehouse) with Delta Parquet tables; semantic models reference lakehouse shortcuts
Authoring ToolPower BI Desktop (.pbix files)Desktop + web authoring in Fabric workspace; TMDL (Tabular Model Definition Language) for Git-based version control
ETL PipelinePower Query in Desktop; Dataflows in ServiceData Factory pipelines + Dataflows Gen2 in Fabric; notebook-based transformations via Spark
GovernanceWorkspace RBAC, RLS, sensitivity labelsUnified Fabric capacity governance; Purview integration for data lineage and cataloging
ConsumptionService web app + Mobile native appsSame, plus Copilot AI-powered natural language summaries and Q&A enhancements

As Microsoft Fabric continues to evolve, the boundary between Power BI Service and the broader Fabric platform will blur further. However, the fundamental distinction β€” author locally, govern centrally, consume anywhere β€” will persist. Just as modern web development separates the IDE (VS Code), the CI/CD platform (GitHub Actions), and the client (browser/app), the three-tier analytics architecture is a durable pattern that scales with organizational complexity.

Practice Problems

PROBLEM 1 β€” CONCEPTUAL
Explain why Power BI dashboards can only be created in the Service, not in Desktop. What architectural or design rationale justifies this asymmetry?
PROBLEM 2 β€” BASIC CALCULATION
A company publishes 12 reports to the Power BI Service, each with an average compressed model size of 350 MB. They are using shared capacity (Pro license), which has a 1 GB per-dataset limit and a 10 GB total workspace storage limit. Can all 12 reports fit in a single workspace? If not, what is the maximum number of reports they can host, and what solution would allow them to host all 12?
PROBLEM 3 β€” INTERMEDIATE
A data engineer needs to build a Power BI solution that connects to an on-premises Oracle database, refreshes data every 4 hours, and is accessible to 50 users on their mobile phones. Describe the specific role each Power BI component plays and identify which additional infrastructure is required.
PROBLEM 4 β€” APPLIED
A retail company's analytics team uses Power BI Desktop on Windows machines, but several team members use macOS. The team also wants to enable collaborative report editing, similar to how Google Docs allows multiple authors simultaneously. Evaluate the current Power BI architecture's ability to satisfy these requirements, and propose a practical workflow.
PROBLEM 5 β€” CRITICAL THINKING
The Power BI three-tier architecture maps conceptually to the Model-View-Controller (MVC) pattern in software engineering. Construct a formal argument for this mapping, identifying which Power BI component corresponds to Model, View, and Controller. Then identify at least one way in which the analogy breaks down.

Lesson Summary

The Power BI ecosystem comprises three distinct but interoperable components, each serving a specific phase of the analytics lifecycle. Power BI Desktop is the free, Windows-only authoring environment where analysts connect to data sources via Power Query (M), build star-schema data models, write DAX measures, and design interactive report pages. The output is a .pbix file β€” a compressed archive containing the VertiPaq model and report layout. Power BI Service is the cloud-based SaaS platform at app.powerbi.com that hosts published datasets, enforces row-level security, manages scheduled data refresh (via the On-Premises Data Gateway for on-prem sources), and enables the creation of dashboards β€” curated, cross-report KPI surfaces that are exclusive to the Service.

Power BI Mobile provides native iOS and Android apps for read-only consumption, featuring touch-optimized navigation, offline snapshots, push notification alerts, and barcode scanning. Together, these three components implement a three-tier architecture analogous to a software development pipeline: author locally, govern centrally, consume anywhere. All three tiers query the same semantic model, ensuring a single source of truth. As Microsoft Fabric evolves, this architecture extends into a lakehouse paradigm, but the Desktop–Service–Mobile triad remains the conceptual backbone of the Power BI experience.

Varsity Tutors β€’ Microsoft Power BI β€’ Desktop vs. Service vs. Mobile