Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Join us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.

Reply
ctmullins
Advocate II
Advocate II

Is anyone successfully using Incremental Refresh?

I was excited to see that the PBI Service supports incremental refresh.  So I dug into it.

 

Got everything configured according to the documentation.  Worked great - refresh times plummeted.

 

But - my data quickly became a mess.  

 

Why?  Because the Incremental Refresh engine has no knowledge of the concept of a Primary Key.  It just blindly loads rows of data that fall into your defined date range.

 

So it's unusable for me.  Pity.

 

Swing and a miss, Microsoft.

5 REPLIES 5
Anonymous
Not applicable

Hi @ctmullins ,

Based on the testing, incremental refreshes will not mess up the data. Incremental refresh extends scheduled refresh operations by providing automated partition creation and management for semantic model tables that frequently load new and updated data.

The filter on the date column is used to dynamically partition the data into period ranges in the Power BI service. Incremental refresh isn't designed to support cases where the filtered date column is updated in the source system. An update is interpreted as an insertion and a deletion, not an actual update.

vjiewumsft_0-1734594334036.png

You can also view the following document to learn more information.

Incremental refresh for semantic models in Power BI - Power BI | Microsoft Learn

Troubleshoot incremental refresh and real-time data - Power BI | Microsoft Learn

 

Best Regards,

Wisdom Wu

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

ctmullins
Advocate II
Advocate II

Thanks - so do your fact tables include rows that get updated?  Mine do.  In my testing, the engine was loading the fresh rows, but not deleting the prior versions of those rows (again, based on a PK).  The documentation mentions nothing at all about primary keys, and my testing confirms that there is no notion of replacing a row with its current, updated version.

Hi @ctmullins,

if the date values relevant for incremental refresh can change, then it's way more complicated. Power BI is not able to track these changes and will indeed mess up data in a simple setup.

You might be able to utilize the "Detect data changes" setting. You'd need to add a [last changed] column to the fact table. And you'd need to make sure to always trigger the incremental update in the correct date ranges by updating [last change] accordingly.
It's a bit more complicated, but it's still possible to make it work this way.

AMeyersen
Resolver III
Resolver III

Hi @ctmullins ,

 

incremental refresh works very well for me.
A common mistake I encountered several times is confusion about >= RangeStart and < RangeEnd. The equal sign must occur exactly once in the filter statement, otherwise data becomes inconsistent.

Another pitfall is using incremental refresh on dimension tables. Although it is possible, it's usually very tricky to get the logic right. Therefore I'd absolutely recommend to only use incremental refresh on fact tables.

Whenever I avoided these two pitfalls, incremental refresh worked extremely well.

Anonymous
Not applicable

I have seen multiple successful Incremental Refresh projects. Ours are based on a Fact table where the partitions are like a InvoiceDate or OrderDate or Inventory???Date. The CDC date column is a ModifiedDate or UpdateDate and we have no issues with duplicate rows from primary keys

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.