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.3K Product Ideas
 1.3K Ideas Exchange
 1.4K Connect
 1.1K Connectors
 281 Workbench
 2 Cloud Amplifier
 4 Federated
 2.8K Transform
 81 SQL DataFlows
 541 Datasets
 2.2K Magic ETL
 3.1K Visualize
 2.3K Charting
 514 Beast Mode
 25 Variables
 555 Automate
 129 Apps
 408 APIs & Domo Developer
 18 Workflows
 27 Predict
 11 Jupyter Workspaces
 16 R & Python Tiles
 342 Distribute
 84 Domo Everywhere
 257 Scheduled Reports
 1 Software Integrations
 81 Manage
 80 Governance & Security
 2 Product Release Questions
 Community Forums
 41 Getting Started
 27 Community Member Introductions
 75 Community Announcements
 4.8K Archive