> For the complete documentation index, see [llms.txt](https://docs.fabricplan.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.fabricplan.com/resources/billing-in-fabric-plan.md).

# Billing in Fabric Plan

Fabric Planning uses an active-session, capacity-based pricing model that aligns licensing costs with actual product usage. A session is billed only when a user actively engages with a planning artifact, allowing organizations to avoid fixed per-user license commitments and optimize capacity utilization. A session remains active for 30 days once started.

Key benefits include:

* Pay only for active user sessions.
* Allow occasional users, such as budget reviewers and approvers, to participate without purchasing dedicated licenses.
* Share unused capacity with other Microsoft Fabric workloads.
* Use eligible Microsoft Azure Consumption Commitment (MACC) credits for Fabric capacity.
* Avoid license commitment and administration.

### User roles

Fabric Planning defines three user roles with different capabilities and capacity consumption.

* **Planner** – Builds and manages planning models, configures business rules, creates and administers planning artifacts.
* **Stakeholder** – Enters and approves data, collaborates with business users, creates scenarios, builds reports and dashboards, performs analysis, and manages reference data applications.
* **Viewer** – Access planning artifacts, dashboards, and reports in read-only mode with support for filtering, sorting, and bookmarks.

To know more about user roles, see the [roles ](/documentation/plan/roles-in-fabric-plan.md)section.

## Role-based billing

Fabric Planning uses role-based billing. Capacity consumption depends on the user's role and is billed per active 30-day session. Billing aligns with business roles at different CU-per-hour rates. Automation jobs are billed separately. Additional Microsoft Fabric workloads consume capacity independently.

Use the [Fabric Planning Capacity Estimator](https://community.fabricplan.com/fabric-plan-capacity-pricing/) to estimate capacity requirements for your deployment.

{% hint style="info" %}
Microsoft Fabric services outside Fabric Planning, such as Fabric SQL, OneLake, Power BI XMLA operations, and other native Fabric workloads consume capacity separately.

Reserve additional capacity to support these workloads. An estimated **30% capacity buffer** is recommended, although actual usage varies by deployment.
{% endhint %}

| User role                                        | Sustained rate per hour | 30 day consumption rate |
| ------------------------------------------------ | ----------------------- | ----------------------- |
| Planner FP\&A analysts, modelers, administrators | **1.16 CU/hour**        | **847 CU**              |
| Stakeholder Business users, reviewers, approvers | **0.23 CU/hour**        | **168 CU**              |
| Viewer Executives and report consumers           | **0.05 CU/hour**        | **37 CU**               |

## Session billing

A session starts when a user first interacts with a planning workflow. A separate session is created for each unique combination of user, workspace, and tenant. When a user switches to a different workspace or tenant, a new session is created automatically.

{% hint style="warning" %}
If a user downgrades to a lower capacity, their assigned role remains unchanged and continues to be valid until the current 30-day session expires
{% endhint %}

* A session remains active for 30 days, irrespective of whether the capacity is deleted or paused.
* Billing is based on the highest active role assigned to the user for the tenant and Fabric capacity.
* Sessions are not automatically renewed unless the user starts a new session.

## Job billing

Automation jobs in PowerTable and connected planning instances in Infobridge are billed independently of user sessions.

* Each successful automation job consumes **2 CU**.
* Failed jobs are not billed.
* Job billing applies regardless of the user's role.

For more information, see [PowerTable automation](/documentation/plan/powertable-sheets/concepts/automation.md) and [connected planning in Infobridge](/documentation/plan/infobridge/concepts/connected-planning.md).

### FAQs

**Q:** **What triggers a billing session?**

**A:** A session starts when a user opens or engages with an existing plan item (in edit mode or reading view) or creates a new plan item, assigns data, and saves it.

**Q:** **How long does a session last?**

**A:** Each session runs for 730 hours — equivalent to a 30-day month.

**Q:** **Can a user stop a session before 30 days?**

**A:** No. After a session starts, it remains active for the full 30-day session and cannot be ended manually. If the user's role is upgraded during the session, billing for the previous role stops, and billing continues at the higher role.

**Q:** **What happens when a session ends?**

**A:** When the 30-day period expires, a new session is triggered the next time the user engages with a planning item. The role assigned depends on the action.

**Q:** **What if a user's role changes mid-session?**

**A:** Users can upgrade (e.g., Viewer to Stakeholder, Stakeholder to Planner) but cannot downgrade within an active session. When a user's role is upgraded, the earlier session is closed and prorated, and billing continues at the higher-tier rate.

**Q:** **What if a user works across multiple capacities?**

**A:** Each unique combination of tenant, user, and capacity creates a separate session, billed independently. A user working across two capacities will have two active sessions.

**Q:** **What if multiple workspaces share the same capacity?**

**A:** If the same capacity is assigned to multiple workspaces, the user is billed at the highest role tier active across all workspaces under that capacity.

**Q:** **Are automation jobs billed separately?**

**A:** Yes. Automation jobs are billed at a fixed amount per completed job, regardless of whether a Planner, Stakeholder, or Viewer ran the job. Only successful jobs are billed - failed jobs are not charged.

**Q:** **What happens if the Fabric capacity is paused or deleted?**

**A:** If a capacity is paused or deleted, the billing record for the full session period is written for each active session under that capacity.

**Q:** **What happens if a planning item is deleted mid-session?**

**A:** Active sessions continue to run and are billed through to the end of the 30 days, even if the planning item is deleted.

**Q:** **What if the capacity runs out of credits before the session ends?**

**A:** Sessions continue to be recorded even if the capacity is exhausted through other workloads. There are no credits reserved exclusively for Fabric Planning - billing continues periodically.

**Q:** **What if too many users are assigned to a small-capacity SKU?**

**A:** If the number of active sessions exceeds what the SKU can support, the SKU is effectively overcommitted. This is particularly relevant for smaller SKUs such as F2 and F4, as well as for capacities shared with other Fabric workloads. The number of users assigned to a capacity may need to be dynamically controlled to avoid overcommitting the SKU.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.fabricplan.com/resources/billing-in-fabric-plan.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
