Is it possible to calculate ROAS and WoW change in the same beast mode formula?
I'm working on a pivot table and I want to show the % change of ROAS from last week vs. two weeks ago. My dataset does not contain a 'ROAS' column so I'm trying to calculate it within the WoW beast mode formula. If I breakout the formula below into two parts (LW ROAS vs. 2WA ROAS), the first part will correctly give me last week's ROAS but I'll get blank rows for the latter.
Columns are structured as: Week  SalesROASLW ROAS2WA ROAS (Blank Rows)WoW Difference
Here's the formula that I'm using:
(sum(case when day(date_
)day(CURDATE()) and week(date_
)week(CURDATE()) then sales
end)/ sum(case when day(date_
)day(CURDATE()) and week(date_
)week(CURDATE()) then spend
end)
/
sum(case when day(date_
)day(CURDATE()  INTERVAL 7 day) and week(date_
)week(CURDATE()  INTERVAL 7 day) then sales
end)/ sum(case when day(date_
)day(CURDATE()  INTERVAL 7 day) and week(date_
)week(CURDATE()  INTERVAL 7 day) then spend
end))  1
Best Answer

Hi @ccc123 ,
Here's my video on how to do rates:
and here's my video on time comparisons:
Just for you or anyone who wants to see for future reference
John Le
You're only one dashboard away.
Click here for more video solutions:
1
Answers

@ccc123 without using Domo formulas, sadly I'm having a hard time following the logic since each part of your WHEN statement does not really evaluates to a Boolean value (I know this is not mandatory, but surely helps making it clear for others to understand when you want things to happen or not), could you explain how you'd calculate ROAS and whether this is meant to be responsive to filters or always calculated from the full raw dataset information. If the later, you might be best doing this on a ETL and using a Rank and Window function with Lag to get the LW and 2WA ones.
0 
@marcel_luthi the first part below calculates the last week ROAS and its always calculated from the raw dataset, which is why it almost looks the same except for the 'Spend' and 'Sales'. This part is working correctly and it returns last week's ROAS.
(sum(case when day(
date_
)day(CURDATE()) and week(date_
)week(CURDATE()) thensales
end)/ sum(case when day(date_
)day(CURDATE()) and week(date_
)week(CURDATE()) thenspend
end)The second part below calculates the ROAS from 2 weeks ago, this is the part where I'm having trouble with. I can't seem to find the solution to pull and calculate the ROAS from two weeks ago.
sum(case when day(
date_
)day(CURDATE()  INTERVAL 7 day) and week(date_
)week(CURDATE()  INTERVAL 7 day) thensales
end)/ sum(case when day(date_
)day(CURDATE()  INTERVAL 7 day) and week(date_
)week(CURDATE()  INTERVAL 7 day) thenspend
end))  1The '/' you see between the two parts is part of the WoW difference formula along with the '1'.
"(current value/past value)1".
Any articles or videos you recommend to do this with rank and window function? I'm fairly new to domo so I have idea what those are.
0 
Hi @ccc123 ,
Here's my video on how to do rates:
and here's my video on time comparisons:
Just for you or anyone who wants to see for future reference
John Le
You're only one dashboard away.
Click here for more video solutions:
1
Categories
 All Categories
 1.2K Product Ideas
 1.2K Ideas Exchange
 1.3K Connect
 1.1K Connectors
 273 Workbench
 Cloud Amplifier
 3 Federated
 2.7K Transform
 78 SQL DataFlows
 524 Datasets
 2.1K Magic ETL
 2.9K Visualize
 2.2K Charting
 433 Beast Mode
 22 Variables
 510 Automate
 114 Apps
 388 APIs & Domo Developer
 8 Workflows
 26 Predict
 10 Jupyter Workspaces
 16 R & Python Tiles
 331 Distribute
 76 Domo Everywhere
 255 Scheduled Reports
 65 Manage
 65 Governance & Security
 1 Product Release Questions
 Community Forums
 40 Getting Started
 26 Community Member Introductions
 67 Community Announcements
 4.8K Archive