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

Data Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more

Reply
Anonymous
Not applicable

DAX for rolling 12 month average of previous 12 months

I have a dataset with date that I join to a calendar table, which gives me the date, month, week, etc...

 

I'm trying to get a 12 month rolling average of sales for the previous 12 months (not counting the current month, so if today is December 12, 2023 I would want the average of the 12 months from December 2022 through November 2023.).

 

I've tried using Max Date to get the final date to be the end of the previous month (in this example November 30, 2022) but I can't get an average formula to work..

 

any help is appreciated.

1 ACCEPTED SOLUTION
Sahir_Maharaj
Super User
Super User

Hello @Anonymous,

 

Can you please try this:

 

1. Calculate the End of the Previous Month

EndOfPreviousMonth = 
EOMONTH(TODAY(), -1)

2. Define the 12-Month Period

StartOfPeriod = 
STARTOFMONTH(DATEADD('Date'[Date], -12, MONTH))

3. Create the Rolling 12-Month Average Measure

Rolling12MonthAvg = 
CALCULATE(
    AVERAGE('Sales'[SalesAmount]),
    DATESBETWEEN(
        'Date'[Date],
        [StartOfPeriod],
        [EndOfPreviousMonth]
    )
)

Should you require any further assistance, please do not hesitate to reach out to me.


Did I answer your question? Mark my post as a solution, this will help others!

If my response(s) assisted you in any way, don't forget to drop me a "Kudos" 🙂

Kind Regards,
Sahir Maharaj
Data Scientist | Data Engineer | Data Analyst | AI Engineer
P.S. Want me to build your Power BI solution? (Yes, its FREE!)
➤ Lets connect on LinkedIn: Join my network of 15K+ professionals
➤ Join my free newsletter: Data Driven: From 0 to 100
➤ Website: https://sahirmaharaj.com
➤ About: https://sahirmaharaj.com/about.html
➤ Email: sahir@sahirmaharaj.com
➤ Want me to build your Power BI solution? Lets chat about how I can assist!
➤ Join my Medium community of 30K readers! Sharing my knowledge about data science and artificial intelligence
➤ Explore my latest project (350K+ views): Wordlit.net
➤ 100+ FREE Power BI Themes: Download Now
LinkedIn Top Voice in Artificial Intelligence, Data Science and Machine Learning

View solution in original post

1 REPLY 1
Sahir_Maharaj
Super User
Super User

Hello @Anonymous,

 

Can you please try this:

 

1. Calculate the End of the Previous Month

EndOfPreviousMonth = 
EOMONTH(TODAY(), -1)

2. Define the 12-Month Period

StartOfPeriod = 
STARTOFMONTH(DATEADD('Date'[Date], -12, MONTH))

3. Create the Rolling 12-Month Average Measure

Rolling12MonthAvg = 
CALCULATE(
    AVERAGE('Sales'[SalesAmount]),
    DATESBETWEEN(
        'Date'[Date],
        [StartOfPeriod],
        [EndOfPreviousMonth]
    )
)

Should you require any further assistance, please do not hesitate to reach out to me.


Did I answer your question? Mark my post as a solution, this will help others!

If my response(s) assisted you in any way, don't forget to drop me a "Kudos" 🙂

Kind Regards,
Sahir Maharaj
Data Scientist | Data Engineer | Data Analyst | AI Engineer
P.S. Want me to build your Power BI solution? (Yes, its FREE!)
➤ Lets connect on LinkedIn: Join my network of 15K+ professionals
➤ Join my free newsletter: Data Driven: From 0 to 100
➤ Website: https://sahirmaharaj.com
➤ About: https://sahirmaharaj.com/about.html
➤ Email: sahir@sahirmaharaj.com
➤ Want me to build your Power BI solution? Lets chat about how I can assist!
➤ Join my Medium community of 30K readers! Sharing my knowledge about data science and artificial intelligence
➤ Explore my latest project (350K+ views): Wordlit.net
➤ 100+ FREE Power BI Themes: Download Now
LinkedIn Top Voice in Artificial Intelligence, Data Science and Machine Learning

Helpful resources

Announcements
Fabric Data Days is here Carousel

Fabric Data Days 2026

Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.

May Power BI Update Carousel

Power BI Monthly Update - May 2026

Check out the May 2026 Power BI update to learn about new features.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.