Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Python | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Python | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA | Python |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA | Python
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Databricks | Power Apps | Power Automate |
Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables | Power Apps | Power Automate
Power BI | Power Apps | Power Automate | SQL | VBA | Python | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables
Power BI | Power Apps | Power Automate | SQL | VBA | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
LEARN THIS HANDS ON
Microsoft Fabric & Power BI
Most Dutch SMEs who moved to Microsoft Fabric can point to one annoying line in the invoice: a steady €300–400 per month that nobody can really explain. The pattern is familiar – a handful of “small” hourly copy jobs that run 24/7, plus some overly generous refresh schedules – and it quietly adds up. This article shows where that money is really going and how night‑time pausing and incremental loads stop the leak without breaking your reports.
Take a mid‑sized logistics company running Fabric in an F2 or F4 capacity:
The team thinks they’re careful:
Yet every month, the Fabric bill shows a persistent extra few hundred euros in capacity usage. The culprits are mostly:
We’ll walk through six concrete cost drivers in this scenario and the fixes that actually move the needle.
Fabric billing for Data Factory (pipelines and Dataflows Gen2) is tied to:
In our logistics scenario, the team has:
Orders table from Azure SQL.Those jobs run:
If each run scans tens of millions of rows and writes to Delta tables, that’s a non‑trivial amount of capacity time. Multiply by 24 runs per day and 30+ days per month, and you get exactly the “mysterious” €300–400 leak.
You can quantify this in Fabric:
You’ll usually see:
If your capacity is often above recommended utilization thresholds at night, you’re paying for compute nobody is using.
Fabric capacities can be paused and resumed on demand. For pay‑as‑you‑go SKUs, pausing stops compute charges while keeping your artifacts (lakehouses, warehouses, semantic models) intact. Storage continues to accrue, but that’s usually the cheaper part.
For our SME, the realistic usage pattern is:
A simple pattern that teams actually live with:
This only works if you:
You can automate pausing/resuming with Azure PowerShell and a scheduled task or Azure Automation. The key is using the Fabric capacity management APIs.
Example PowerShell script to pause a capacity by ID:
# Requires Az.Accounts and Az.Resources modules
param(
[Parameter(Mandatory = $true)]
[string]$SubscriptionId,
[Parameter(Mandatory = $true)]
[string]$ResourceGroupName,
[Parameter(Mandatory = $true)]
[string]$CapacityName
)
Connect-AzAccount
Select-AzSubscription -SubscriptionId $SubscriptionId
$capacity = Get-AzResource -ResourceGroupName $ResourceGroupName -Name $CapacityName -ResourceType "Microsoft.Fabric/capacities"
if (-not $capacity) {
throw "Capacity not found."
}
$capacity.Properties.state = "Paused"
Set-AzResource -ResourceId $capacity.ResourceId -Properties $capacity.Properties -Force
Write-Host "Capacity $CapacityName paused."
You’d pair this with a matching script that sets state = "Active" and schedule both via:
Effect on our scenario:
The second big leak is full refresh behavior:
Orders table every hour.Fabric supports incremental patterns both in pipelines and Dataflows Gen2. You don’t get automatic change tracking for every source, but you can design incremental behavior using:
LastModifiedDate).In Dataflows Gen2, you can:
LastModifiedDate).This reduces:
For the hourly Azure SQL copy, a typical pattern is:
LastModifiedDate) in a small control table or a Fabric lakehouse/warehouse.LastModifiedDate is greater than the stored watermark.Example SQL query used in a Copy activity source (for Azure SQL Database):
DECLARE @LastWatermark datetime2 = @WatermarkValue; -- passed via pipeline parameter
SELECT OrderId,
CustomerId,
OrderDate,
LastModifiedDate,
Status
FROM dbo.Orders
WHERE LastModifiedDate > @LastWatermark;
You then:
@WatermarkValue into the query via a pipeline parameter.LastModifiedDate to your watermark store.Effect on our scenario:
Even with Direct Lake, semantic models have refresh behavior that costs compute:
In the logistics scenario, the team configured:
OrderDate.This is often unnecessary:
For most SME workloads, a realistic pattern is:
Configure this in the Power BI workspace (Fabric) under Datasets → Scheduled refresh:
Effect on our scenario:
Notebook and Spark job usage is another quiet cost driver:
Fabric’s Data Engineering workload charges based on:
In our SME scenario, the data engineer might:
Short‑lived jobs:
Session discipline:
Right‑sizing Spark:
These changes don’t alter functionality but prevent background compute that quietly inflates the bill.
The last hidden cost is capacity sizing itself.
Fabric capacities have:
Our logistics SME picked an F4 capacity “for safety” and then:
If you’ve implemented:
You might find that:
Use the capacity metrics:
When you change capacity size:
Effect on our scenario:
Before:
After:
LastModifiedDate watermarks.The result is exactly what you want from "Your Fabric Bill Explained in Euros": the vague €300–400 leak becomes a set of specific, controllable knobs.
If you only do one thing this week, do this:
Once those hourly copy jobs stop re‑scanning your lakehouse around the clock, your Fabric bill will start making sense – and you’ll have room to invest in the workloads that actually help the business.
This article reflects a growing need for SME data teams to actively manage Fabric capacity, refresh patterns and incremental loading so they stop paying for always-on pipelines and oversized workloads that add cost but no value.
Professionals who want to apply these patterns to their own data can explore Excelgoodies' Microsoft Fabric & Power BI programme - taught live by instructors, with certification awarded once a real project is running at work.
Insights compiled through ongoing industry research and discussions within the Excelgoodies Analytics Community.
Microsoft Fabric
New
Next Batches Now Live
Power BI
SQL
Power Apps
Power Automate
Microsoft Fabrics
Azure Data Engineering