diff --git a/packages/desktop-client/src/components/reports/reportRanges.ts b/packages/desktop-client/src/components/reports/reportRanges.ts
index 52a79c1d2113810d76a1a51d340c31d02b59d9db..588c56291e1ba4c524872657f22e61e9cb9d9468 100644
--- a/packages/desktop-client/src/components/reports/reportRanges.ts
+++ b/packages/desktop-client/src/components/reports/reportRanges.ts
@@ -48,7 +48,7 @@ export function validateEnd(
   let dateEnd;
   switch (interval) {
     case 'Monthly':
-      dateEnd = end + '-31';
+      dateEnd = monthUtils.getMonthEnd(end + '-01');
       subDays = 180;
       break;
     case 'Yearly':
diff --git a/upcoming-release-notes/2556.md b/upcoming-release-notes/2556.md
new file mode 100644
index 0000000000000000000000000000000000000000..62f0799fd44c4c8f86f5e0d778897214c1abb4e9
--- /dev/null
+++ b/upcoming-release-notes/2556.md
@@ -0,0 +1,6 @@
+---
+category: Bugfix
+authors: [carkom]
+---
+
+Custom Reports: Fix bug where month endDate is saving as a non-date variable.