Calculating a cumulative total in a sumo card

Hi all

 

I'm posting in ETL/Dataflow as I assume this is where the ultimate answer lies.

 

My end objective is I want to be able to present a simple table outlining my different customer cohorts (cohort is identified based on the month they placed their first order), and their average Gross Profit to us each month since joining.

Currently I can do this month by month, but I want to show this as a cumulative total too (ie per below, cumulative total for Period 2 is Period 1 plus Period 2 gross profit, then Period 3's cumulative total is period 1 plus period 2 plus period 3).

Ideally this is how I'd like it to look:

PeriodCohort
 March 2018April 2018
 Gross ProfitCumulative TotalGross ProfitCumulative Total
156566060
210661575
3571580
4374383
5276386
6278389
7280291
8282293
     
TOTAL82 93 

 

So far I have done a rank and window using magic ETL on gross profit each month by customer (and then a grouping on customer ID and month of order), however this falls down because not every customer orders each month, hence my cumulative total increases and decreases each month based on number of people in the cohort ordering, rather than being a constant increase as I would expect.

 

Any help our thoughts would be appreciated.

 

Thanks

Kieran

Best Answer

  • BrendanH
    BrendanH Member
    Answer ✓

     

    For a running total like that you will need to use an ETL to manually filter the data to the running total time frame, calculate the total and then join that data back to the original.

    Its a pretty manual process so if you have a lot of data it can take a while.

Answers

  • BrendanH
    BrendanH Member
    Answer ✓

     

    For a running total like that you will need to use an ETL to manually filter the data to the running total time frame, calculate the total and then join that data back to the original.

    Its a pretty manual process so if you have a lot of data it can take a while.

  •  Thanks BrendanH.

     

    I ended up doing a SUM group by (on amount charged, grouping by the cohort group and month & year of order) in my magic ETL after doing the rank & window.

    It means I've lost the transactional level detail if I want to drill further into the data, but it's given me good aggregated data to show each cohort's spending by month as well as aggregated over their lifetime buying from us.

     

    Thanks for the help!