0
0
Power BIbi_tool~10 mins

Incremental refresh in Power BI - Step-by-Step Guide

Choose your learning style9 modes available
Introduction
Incremental refresh helps you update only new or changed data in large datasets. This saves time and makes your reports faster by not reloading all data every time.
When your sales data grows daily and you want to refresh only the latest days.
When you have a large customer database and only new customers need to be added during refresh.
When your report connects to a slow data source and full refresh takes too long.
When you want to reduce load on your data source by limiting data queries.
When you publish reports to Power BI Service and want efficient scheduled refreshes.
Steps
Step 1: Open your Power BI Desktop file
- Power BI Desktop main window
Your report and data model are visible
Step 2: Select the table you want to enable incremental refresh for
- Fields pane
The table is highlighted for editing
Step 3: Click on the Modeling tab
- Ribbon at the top
Modeling options appear
Step 4: Click on Manage Parameters and create two date parameters named RangeStart and RangeEnd
- Modeling tab > Manage Parameters
Two date parameters are created to define the data range for refresh
💡 Set RangeStart to a date far in the past and RangeEnd to today
Step 5: Go to Power Query Editor by clicking Transform Data
- Home tab > Transform Data
Power Query Editor opens showing your data queries
Step 6: Filter the date column in your table to keep rows where date is after or equal to RangeStart and before RangeEnd
- Power Query Editor > Date column filter
Query filters data between RangeStart and RangeEnd parameters
Step 7: Close and apply changes to return to Power BI Desktop
- Power Query Editor > Close & Apply button
Filtered query loads with date range parameters applied
Step 8: Right-click the table and select Incremental refresh
- Fields pane > Table context menu
Incremental refresh settings window opens
Step 9: Enable incremental refresh and set how many days to store and refresh
- Incremental refresh settings window
Incremental refresh policy is applied to the table
Step 10: Publish your report to Power BI Service
- Home tab > Publish
Report uploads and incremental refresh runs on scheduled refreshes
Before vs After
Before
Full dataset of 10 million rows loads every time refresh runs, taking hours
After
Only last 1 day of data loads during refresh, reducing refresh time to minutes
Settings Reference
RangeStart and RangeEnd parameters
📍 Modeling tab > Manage Parameters
Define the date range for filtering data during refresh
Default: RangeStart = 1/1/2000, RangeEnd = Today
Incremental refresh policy
📍 Table context menu > Incremental refresh
Control how much historical data to keep and how much recent data to refresh
Default: Store 5 years, refresh 1 day
Common Mistakes
Not creating RangeStart and RangeEnd parameters before filtering data
Incremental refresh requires these parameters to filter data dynamically
Always create and use RangeStart and RangeEnd parameters in your query filters
Filtering date column incorrectly or not using parameters in filter
Without correct filter, incremental refresh cannot limit data to the date range
Apply filter on date column using RangeStart <= date and date < RangeEnd
Trying incremental refresh on unsupported data sources or local files
Incremental refresh works only with supported sources like SQL Server, Azure, or Power BI datasets
Use supported data sources and publish to Power BI Service for incremental refresh
Summary
Incremental refresh updates only new or changed data, saving time on large datasets.
You must create RangeStart and RangeEnd date parameters and filter your data query using them.
Incremental refresh works after publishing to Power BI Service and requires supported data sources.