Database
[{type:"Call Back",status:"Pending",due_date:ISODate("2021-08-18T05:40:59.007+00:00")},{type:"Site",status:"Pending",due_date:ISODate("2021-09-18T05:40:59.007+00:00")},{type:"Call Back",status:"Completed",due_date:""},{type:"Meet",status:"Pending",due_date:ISODate("2021-11-18T05:40:59.007+00:00")}]
Query
db.collection.aggregate([{"$addFields":{"status":{"$cond":{"if":{$gt:["$due_date",new Date()]},"then":"Overdue","else":"$status"}}}},{$group:{_id:"$status","Call Back":{$sum:{"$cond":{"if":{$eq:["$type","Call Back"]},"then":1,"else":0}}},"Meet":{$sum:{"$cond":{"if":{$eq:["$type","Meet"]},"then":1,"else":0}}},"Site":{$sum:{"$cond":{"if":{$eq:["$type","Site"]},"then":1,"else":0}}}}},{"$group":{"_id":null,"docs":{"$push":{k:"$_id",v:{"Call Back":"$Call Back","Meet":"$Meet","Site":"$Site"}}}}},{"$addFields":{"docs":{"$arrayToObject":"$docs"}}},{"$replaceRoot":{"newRoot":"$docs"}}])