diff --git a/src/services/consumptionFormatter.service.ts b/src/services/consumptionFormatter.service.ts
index 66030e7ce6a4c75ad023e4eb86e6e764b2e37aae..36c32a784e0f51da74ccb45ed2279132b19a8b54 100644
--- a/src/services/consumptionFormatter.service.ts
+++ b/src/services/consumptionFormatter.service.ts
@@ -21,12 +21,11 @@ export default class ConsumptionFormatterService {
     const filledData = []
     let parsingDate = timePeriod.startDate
     let endDate = timePeriod.endDate
-    if (timeStep === 10) {
+    if (timeStep === TimeStep.HALF_AN_HOUR) {
       parsingDate = parsingDate.minus({ minutes: 30 })
       endDate = endDate.minus({ minutes: 30 })
     }
     const dateChartService = new DateChartService()
-    // TODO KO
     while (parsingDate <= endDate) {
       const filtereddata = data.filter(dt =>
         dateChartService.compareStepDate(timeStep, dt.date, parsingDate)
diff --git a/src/services/queryRunner.service.ts b/src/services/queryRunner.service.ts
index d58685b8574cbe00dee4d5633a1c167be66a6609..5e41da6a5bf3909530299ad155132fd18cc3d1f5 100644
--- a/src/services/queryRunner.service.ts
+++ b/src/services/queryRunner.service.ts
@@ -108,6 +108,7 @@ export default class QueryRunner {
   }
 
   private filterDataList(data: any, timePeriod: TimePeriod) {
+    // increase the data timeperiod because the last data for a day is actually stored the next day (00:00)
     if (timePeriod.endDate.day === timePeriod.startDate.day) {
       timePeriod.startDate = timePeriod.startDate.plus({ minutes: 30 })
       timePeriod.endDate = timePeriod.endDate.plus({ minutes: 30 })
@@ -115,8 +116,8 @@ export default class QueryRunner {
         this.withinDateBoundaries(
           DateTime.local(
             entry.year,
-            entry.month === 0 ? 1 : entry.month,
-            entry.day === 0 ? 1 : entry.day,
+            entry.month || 1,
+            entry.day || 1,
             entry.hour,
             entry.minute
           ).setZone('utc', {
@@ -129,13 +130,12 @@ export default class QueryRunner {
     } else {
       const filteredResult = data.data.filter((entry: any) =>
         this.withinDateBoundaries(
-          DateTime.local(
-            entry.year,
-            entry.month === 0 ? 1 : entry.month,
-            entry.day === 0 ? 1 : entry.day
-          ).setZone('utc', {
-            keepLocalTime: true,
-          }),
+          DateTime.local(entry.year, entry.month || 1, entry.day || 1).setZone(
+            'utc',
+            {
+              keepLocalTime: true,
+            }
+          ),
           timePeriod
         )
       )
@@ -144,12 +144,13 @@ export default class QueryRunner {
   }
 
   private mapDataList(data: any, timeStep?: TimeStep): Dataload[] {
-    if (timeStep && timeStep === 10) {
+    // set back every half hour data at -30 minutes so it is displayed as 23:30 instead of 00:00 etc..
+    if (timeStep === TimeStep.HALF_AN_HOUR) {
       const test = data.map((entry: any) => ({
         date: DateTime.local(
           entry.year,
-          entry.month == 0 ? 1 : entry.month,
-          entry.day === 0 ? 1 : entry.day,
+          entry.month || 1,
+          entry.day || 1,
           entry.hour,
           entry.minute
         )
@@ -167,8 +168,8 @@ export default class QueryRunner {
       const mappedResult = data.map((entry: any) => ({
         date: DateTime.local(
           entry.year,
-          entry.month == 0 ? 1 : entry.month,
-          entry.day === 0 ? 1 : entry.day,
+          entry.month || 1,
+          entry.day || 1,
           entry.hour,
           entry.minute
         ).setZone('utc', {
@@ -237,7 +238,6 @@ export default class QueryRunner {
             $eq: timePeriod.startDate.month,
           },
           day: {
-            // $eq: timePeriod.startDate.day, // has to cover 2 days since it finished at 00.00
             $in: [timePeriod.startDate.day, timePeriod.startDate.day + 1],
           },
         }
@@ -451,7 +451,7 @@ export default class QueryRunner {
       return DateTime.local(
         result.data[0].year,
         result.data[0].month,
-        result.data[0].day === 0 ? 1 : result.data[0].day,
+        result.data[0].day || 1,
         result.data[0].hour || 0,
         result.data[0].minute || 0
       ).setZone('utc', {
@@ -479,7 +479,7 @@ export default class QueryRunner {
       return DateTime.local(
         result.data[0].year,
         result.data[0].month,
-        result.data[0].day === 0 ? 1 : result.data[0].day,
+        result.data[0].day || 1,
         result.data[0].hour || 0,
         result.data[0].minute || 0
       ).setZone('utc', {