Database
[{"_id":1,"Type":"Car","Total":82.03,"DateTime":"20210713T0834"},{"_id":2,"Type":"Car","Total":20.26,"DateTime":"20210827T0834"},{"_id":3,"Type":"Air","Total":50.43,"DateTime":"20210913T0834"},{"_id":4,"Type":"Car","Total":42.03,"DateTime":"20210813T0834"}]
Query
db.collection.aggregate([{$match:{}},{$setWindowFields:{partitionBy:"$Type",sortBy:{DateTime:1},output:{sumOfThePreviousTotal:{$sum:"$Total",window:{documents:[-1,0]}},previousDateTime:{$push:"$DateTime",window:{documents:[-1,0]}}}}},{$set:{"previousDateTime":{"$toDate":{"$first":"$previousDateTime"}},"DateTime":{"$toDate":"$DateTime"},"perviousTotal":{"$subtract":["$sumOfThePreviousTotal","$Total"]}}},{$set:{"dateDiff":{"$dateDiff":{startDate:"$previousDateTime",endDate:"$DateTime",unit:"day"}}}},{"$set":{"percentageIncreasePerDay":{"$cond":{"if":{"$eq":["$dateDiff",0]},"then":0,"else":{"$divide":[{"$subtract":["$Total","$perviousTotal"]},"$dateDiff"]}}}}}])