Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!View all the Fabric Data Days sessions on demand. View schedule
Hi all,
I have a fairly simple app that links to snowflake to get the data.
Within the snowflake dataset I have a field
CURRENT_TIMESTAMP() AS LOAD_DATE
Which works fine and everytime the PowerBI refreshes the date updates: 17/09/2025 08:32:09.
Is there a way to get this to append, so that every time the data is refreshed a date is recorded and therefore I can track totals over time.
Mnay Thanks
Solved! Go to Solution.
Power BI doesn't store a historical copy of the data. It picks up the most recent data upon refresh. Aside options provided by the other users and if you are on Fabric, you may use a dataflow then load it as append.
Hi @MikeGaunt1986 ,
We’d like to follow up regarding the recent concern. Kindly confirm whether the issue has been resolved, or if further assistance is still required. We are available to support you and are committed to helping you reach a resolution.
Best Regards,
Chaithra E.
Hi @MikeGaunt1986 ,
Thank you @danextian , @rohit1991 , @sivarajan21 for your inputs.
I hope the information provided is helpful. I wanted to check whether you were able to resolve the issue with the provided solutions. Please let us know if you need any further assistance.
Thank you.
Power BI doesn't store a historical copy of the data. It picks up the most recent data upon refresh. Aside options provided by the other users and if you are on Fabric, you may use a dataflow then load it as append.
Are you using microsoft fabric? Easiest approach would be to use Incremental refresh in service.
If you control the Snowflake side:
-- one-time setup
CREATE TABLE FACT_SNAPSHOT AS
SELECT *, CURRENT_TIMESTAMP() AS LOAD_DATE
FROM SOURCE_TABLE;
-- each refresh (could be called from Power BI or a Snowflake Task)
INSERT INTO FACT_SNAPSHOT
SELECT *, CURRENT_TIMESTAMP() AS LOAD_DATE
FROM SOURCE_TABLE;
If you don't control it and have access only upto fabric:
Create a Dataflow with the original query.
In Power Query, add a custom column:
RefreshDate = DateTime.LocalNow()
In Power BI Service, set the dataset storage mode to Append (Dataflow + Incremental Refresh).
This keeps past refreshes.
Please let me know if it works!
Best Regards,
Hi @MikeGaunt1986
Power BI will not append rows by itself.
You need to handle this on the Snowflake side.
Step 1: Create a Log Table
CREATE OR REPLACE TABLE LOAD_LOG (
LOAD_DATE TIMESTAMP
);
Step 2: Insert on Every Refresh
Instead of just using CURRENT_TIMESTAMP() in your SELECT, add an insert step:
INSERT INTO LOAD_LOG (LOAD_DATE)
SELECT CURRENT_TIMESTAMP();
Step 3: Load This Table in Power BI
Import LOAD_LOG into Power BI.
This table will now keep all refresh timestamps as history.
You can visualize refresh frequency and trends over time.
Check out the November 2025 Power BI update to learn about new features.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!