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

The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!

Reply
uj91
Helper I
Helper I

to show percentage difference values in a table without having date column in table visual.

I have a field parameter as below: 

 

All.Diff Values_Search = {
    ("% Change(MoM) CPC", NAMEOF('Reporting.Search'[Diff CPC_Search]), 0),
    ("% Change(MoM) CPM", NAMEOF('Reporting.Search'[Diff CPM_Search]), 1),
    ("% Change(MoM) CTR", NAMEOF('Reporting.Search'[Diff CTR_Search]), 2)

Now Diff CPC_Search is a calculated measure as below 
Diff CPC_Search = IFERROR( ([CPC_Search] - [Combined_Previous Month CPC Value_Search] )/ [Combined_Previous Month CPC Value_Search],0

Further going ahead : 
Combined_Previous Month CPC Value_CC = CALCULATE([CPC_CC],PREVIOUSMONTH('Reporting.CrossChannel'[MonthSortDate_CC]))

Now when i consider the date column in the table the correct value is shown as seen below:

uj91_0-1765536446260.png

Instead of the date column in the above table i want to show it by a dimension (Keywordtext). As soon as i remove the month column from table and pull in the dimesnion the % change column goes blank. 

uj91_1-1765536556611.png

I want the values showing even if date column isnt present in the table. Any suggestions ? 






1 ACCEPTED SOLUTION
v-kpoloju-msft
Community Support
Community Support

Hi @uj91,

Thanks for sharing the details and screenshots that really helped clarify the scenario. Also, thanks to @Ashish_Mathur,@KarinSzilagyi,@DNMAF, for those inputs on this thread. 

The behaviour you are seeing is expected in Power BI. When the Month column is present in the table, each row has a clear date context, so PREVIOUSMONTH() can correctly determine which month to compare against. Once the Month column is removed and replaced with a dimension like Keyword, there’s no longer a row-level date context, so the previous-month calculation returns blank and the % change doesn’t display.

To keep the MoM % working even when the Month column isn’t shown, the measure needs to explicitly determine the current month inside the DAX and then calculate the previous month independently of the visual layout. You can do that by replacing PREVIOUSMONTH() with the following pattern:

Combined_Previous Month CPC Value_Search =
VAR CurrentMonth =
    MAX ( 'Reporting.Search'[MonthSortDate_Search] )
RETURN
CALCULATE (
    [CPC_Search],
    FILTER (
        ALL ( 'Reporting.Search'[MonthSortDate_Search] ),
        'Reporting.Search'[MonthSortDate_Search]
            = EOMONTH ( CurrentMonth, -1 )
    )
)

Then use this updated % Change measure:

Diff CPC_Search =
VAR CurrentValue =
    [CPC_Search]
VAR PreviousValue =
    [Combined_Previous Month CPC Value_Search]
RETURN
IF (
    NOT ISBLANK ( PreviousValue ),
    DIVIDE ( CurrentValue - PreviousValue, PreviousValue ),
    0
)

With this approach, the MoM % values will continue to show correctly even when the table displays Keyword instead of the Month column. This isn’t a limitation of field parameters or the table visual it’s simply how DAX handles time intelligence when date context isn’t present.

Please give this a try and let us know how it goes. Happy to help further if needed.
Thank you for using the Microsoft Fabric Community Forum.

View solution in original post

11 REPLIES 11
v-kpoloju-msft
Community Support
Community Support

Hi @uj91,

Thanks for sharing the details and screenshots that really helped clarify the scenario. Also, thanks to @Ashish_Mathur,@KarinSzilagyi,@DNMAF, for those inputs on this thread. 

The behaviour you are seeing is expected in Power BI. When the Month column is present in the table, each row has a clear date context, so PREVIOUSMONTH() can correctly determine which month to compare against. Once the Month column is removed and replaced with a dimension like Keyword, there’s no longer a row-level date context, so the previous-month calculation returns blank and the % change doesn’t display.

To keep the MoM % working even when the Month column isn’t shown, the measure needs to explicitly determine the current month inside the DAX and then calculate the previous month independently of the visual layout. You can do that by replacing PREVIOUSMONTH() with the following pattern:

Combined_Previous Month CPC Value_Search =
VAR CurrentMonth =
    MAX ( 'Reporting.Search'[MonthSortDate_Search] )
RETURN
CALCULATE (
    [CPC_Search],
    FILTER (
        ALL ( 'Reporting.Search'[MonthSortDate_Search] ),
        'Reporting.Search'[MonthSortDate_Search]
            = EOMONTH ( CurrentMonth, -1 )
    )
)

Then use this updated % Change measure:

Diff CPC_Search =
VAR CurrentValue =
    [CPC_Search]
VAR PreviousValue =
    [Combined_Previous Month CPC Value_Search]
RETURN
IF (
    NOT ISBLANK ( PreviousValue ),
    DIVIDE ( CurrentValue - PreviousValue, PreviousValue ),
    0
)

With this approach, the MoM % values will continue to show correctly even when the table displays Keyword instead of the Month column. This isn’t a limitation of field parameters or the table visual it’s simply how DAX handles time intelligence when date context isn’t present.

Please give this a try and let us know how it goes. Happy to help further if needed.
Thank you for using the Microsoft Fabric Community Forum.

uj91_0-1768054472839.png

% mom numbers coming infalted. 

i have a show top 10 filter dax on the table as follows 

Show Top 10 =
IF([Rank KPI_Top] <= 10, 1, 0)    // Used this on the table visual filter and set to 1 

Rank KPI_Top =
RANKX(
    ALLSELECTED('Reporting.Search'[KeywordText]),
    [KPI Measures_new],
    ,
    DESC,
    DENSE
)


Kpi measure new = 

KPI Measures_new = SWITCH(
    SELECTEDVALUE('Search Insights'[Search Insights Order]),     // Search insights order is a parameter
   0 ,[Total Impressions_Search],
1 ,[Total Clicks_Search],
2, [Total Media Cost_Search],
3 , [CTR_Search],
 4 , [CPC_Search],
 5  ,[CPM_Search]
 )

 

Hi @uj91.,

Thanks for the update, and the screenshots help a lot great progress getting the MoM values working with the dimension. The behaviour you are seeing now makes sense based on the DAX. When you apply a Top-10 filter using RANKX or a visual filter, Power BI removes keywords that fall outside the top group. This reduces the data visible to your measure and often removes keywords from the previous month. Since the MoM measure compares against the previous value, it ends up calculating with a missing/blank prior month, which inflates the % result. That’s why your values jump after applying Top-10.

To keep MoM correct while using Top-10, you will need to ensure the measure still evaluates over all months and all keywords, even if the visual only displays the top group. The usual fix is to wrap your % calculation in ALL or REMOVEFILTERS so it sees full data, for example:

VAR Previous = CALCULATE([CPC_Search], REMOVEFILTERS('Reporting.Search'[KeywordText]))

or introduce a virtual table for ranking that doesn’t affect the MoM calculation. If you want, feel free to share your exact measure you want corrected, and we can help fine-tune the DAX.

Thank you for using the Microsoft Fabric Communiry Forum.

Hi @uj91,

Just checking in to see if the issue has been resolved on your end. If the earlier suggestions helped, that’s great to hear! And if you’re still facing challenges, feel free to share more details happy to assist further.

Thank you.

Hi @uj91,

Just wanted to follow up. If the shared guidance worked for you, that’s wonderful hopefully it also helps others looking for similar answers. If there’s anything else you'd like to explore or clarify, don’t hesitate to reach out.

Thank you.

v-kpoloju-msft
Community Support
Community Support

Hi @uj91,

Thank you for reaching out to the Microsoft Fabric Community Forum. Also, thanks to @Ashish_Mathur, @KarinSzilagyi, @DNMAF, for those inputs on this thread.

Has your issue been resolved? If the response provided by the community member @Ashish_Mathur, @KarinSzilagyi, @DNMAF, addressed your query, could you please confirm? It helps us ensure that the solutions provided are effective and beneficial for everyone.

Hope this helps clarify things and let me know what you find after giving these steps a try happy to help you investigate this further.

Thank you for using the Microsoft Community Forum.

Still not met the requirement. If i find something i will post here and accept that as a solution. 

Ashish_Mathur
Super User
Super User

Hi,

In addition to the suggestions you have already received, do this

  1. Create a Calendar table and build a many to one relationship from the Date column in your Fact table to the date column in the Calendar table
  2. Simplify your measures to
Diff CPC_Search = DIVIDE(([CPC_Search] - [Combined_Previous Month CPC Value_Search]), [Combined_Previous Month CPC Value_Search])
Combined_Previous Month CPC Value_CC = CALCULATE([CPC_CC],PREVIOUSMONTH('Calendar'[Date]))

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

Hi @uj91, the issue is that you're calculating the "% Change Month over Month", so Power BI doesn't know which months you're comparing as it's lacking the date-context if you remove the month + year columns. 

You'll have to rethink what you're trying to show without the date-information.
Are you trying to show

  • the total clicks overall (from the beginning of your tracking until now) + just the growth of the last completed month? (e.g. % growth in november 2025 if you check the report today?)
  • the total clicks of the last completed month + the growth compared to the month prior to that one?
  • something completly different?

You'll need to adjust your formulas accordingly to consider which month(s) exactly you're comparing (e.g. if you have a date slicer by getting the currently visible max-date, then looking up the end of month of that max-date and calculating the clicks of that month specificially to get the growth of that month)



Did I answer your question? If so, please consider marking my response as the ‘Accepted Solution’ - it helps others with the same issue find the answer more easily!

I need percentage difference comapring this month clicks with last month clicks, also  need it fixed for a dimension and not show any date column in table


DNMAF
Responsive Resident
Responsive Resident

Hi @uj91 ,

if I understand your setup right, the table visual has no idea for which month the difference should be calculated. 0% is exactly the result I would expect.

Two options come to my mind:

1) Add a slicer to choose a certain month

2) Add a Month column and change the width of the column to zero

Does that help you?

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! It's time to submit your entry.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.