Database

[{"field1":"value1","created_at":ISODate("2022-01-01T11:42:01Z")},{"field1":"value2","created_at":ISODate("2022-01-01T11:22:15Z")}]

Query

db.collection.aggregate([{$addFields:{created_at:{$dateToParts:{date:"$created_at"}}}},{$group:{_id:{year:"$created_at.year",month:"$created_at.month",day:"$created_at.day",hour:"$created_at.hour",interval:{$subtract:["$created_at.minute",{$mod:["$created_at.minute",15]}]}},count:{$sum:1}}},{$project:{_id:0,count:1,from:{$dateFromParts:{year:"$_id.year",month:"$_id.month",day:"$_id.day",hour:"$_id.hour",minute:"$_id.interval"}},to:{$dateFromParts:{year:"$_id.year",month:"$_id.month",day:"$_id.day",hour:"$_id.hour",minute:{$add:["$_id.interval",15]}}}}}])

Result