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

Score big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount

Reply
qixue
Frequent Visitor

How to calculate average growth %?

I have a dataset in below format:

 

Date         Sales Amount

2017/1/1  1,000

2017/1/1  5,000

2017/1/2  7,000

...

 

So my growth % on 1/2 = (7000-6000)/6000

 

Similarly, I will have growth % for each day. Now I want to show the average growth % by year and by month. How to achieve it? Thank you!

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi @qixue,

 

You can try to use below formula to calculate the DoD growth %:

Measure:

 

DoD Growth = 
VAR current_Date =
    MAX ( 'Table'[Date] )
VAR current_amount =
    SUMX ( FILTER ( ALL ( 'Table' ), [Date] = current_Date ), [Amount] )
VAR previous_amount =
    SUMX ( FILTER ( ALL ( 'Table' ), [Date] = current_Date - 1 ), [Amount] )
RETURN
    DIVIDE ( current_amount - previous_amount, previous_amount, 0 )

 

 

>>Similarly, I will have growth % for each day. Now I want to show the average growth % by year and by month. How to achieve it? 

You can create a summary table with 'dod growth', then wirite a measure to calcuate the average. After these steps, create a table visual with different date column as the group, you can switch hierarchy levl to get the different average of current level.

 

Calculate table:

 

Summary table =
VAR summaried =
    SUMMARIZE ( 'Table', [Date], "Total Amount", SUM ( 'Table'[Amount] ) )
RETURN
    ADDCOLUMNS ( summaried, "DOD Growth %", [DoD Growth] )

Measure:

 

 

AVG DoD = AVERAGE('Summary table'[DOD Growth %])

10.PNG11.PNG

 

Regards,

Xiaoxin Sheng

 

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

Hi @qixue,

 

You can try to use below formula to calculate the DoD growth %:

Measure:

 

DoD Growth = 
VAR current_Date =
    MAX ( 'Table'[Date] )
VAR current_amount =
    SUMX ( FILTER ( ALL ( 'Table' ), [Date] = current_Date ), [Amount] )
VAR previous_amount =
    SUMX ( FILTER ( ALL ( 'Table' ), [Date] = current_Date - 1 ), [Amount] )
RETURN
    DIVIDE ( current_amount - previous_amount, previous_amount, 0 )

 

 

>>Similarly, I will have growth % for each day. Now I want to show the average growth % by year and by month. How to achieve it? 

You can create a summary table with 'dod growth', then wirite a measure to calcuate the average. After these steps, create a table visual with different date column as the group, you can switch hierarchy levl to get the different average of current level.

 

Calculate table:

 

Summary table =
VAR summaried =
    SUMMARIZE ( 'Table', [Date], "Total Amount", SUM ( 'Table'[Amount] ) )
RETURN
    ADDCOLUMNS ( summaried, "DOD Growth %", [DoD Growth] )

Measure:

 

 

AVG DoD = AVERAGE('Summary table'[DOD Growth %])

10.PNG11.PNG

 

Regards,

Xiaoxin Sheng

 

Ashish_Mathur
Super User
Super User

Hi,

 

Share a dataset/download link of your file and also show your expected result.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

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