diff --git a/packages/desktop-client/src/components/budget/report/ReportComponents.tsx b/packages/desktop-client/src/components/budget/report/ReportComponents.tsx
index 00f2c6c5f21a69dc7f0d892367e5187665ab553d..5a9fd4b9e6913d381fcf742db85ecaad96d05ecc 100644
--- a/packages/desktop-client/src/components/budget/report/ReportComponents.tsx
+++ b/packages/desktop-client/src/components/budget/report/ReportComponents.tsx
@@ -163,6 +163,12 @@ export const CategoryMonth = memo(function CategoryMonth({
   const [balanceMenuOpen, setBalanceMenuOpen] = useState(false);
   const triggerBalanceMenuRef = useRef(null);
 
+  const onMenuAction = (...args: Parameters<typeof onBudgetAction>) => {
+    onBudgetAction(...args);
+    setBalanceMenuOpen(false);
+    setMenuOpen(false);
+  };
+
   return (
     <View
       style={{
@@ -225,10 +231,9 @@ export const CategoryMonth = memo(function CategoryMonth({
             >
               <BudgetMenu
                 onCopyLastMonthAverage={() => {
-                  onBudgetAction?.(month, 'copy-single-last', {
+                  onMenuAction(month, 'copy-single-last', {
                     category: category.id,
                   });
-                  setMenuOpen(false);
                 }}
                 onSetMonthsAverage={numberOfMonths => {
                   if (
@@ -239,16 +244,14 @@ export const CategoryMonth = memo(function CategoryMonth({
                     return;
                   }
 
-                  onBudgetAction?.(month, `set-single-${numberOfMonths}-avg`, {
+                  onMenuAction(month, `set-single-${numberOfMonths}-avg`, {
                     category: category.id,
                   });
-                  setMenuOpen(false);
                 }}
                 onApplyBudgetTemplate={() => {
-                  onBudgetAction?.(month, 'apply-single-category-template', {
+                  onMenuAction(month, 'apply-single-category-template', {
                     category: category.id,
                   });
-                  setMenuOpen(false);
                 }}
               />
             </Popover>
@@ -351,11 +354,10 @@ export const CategoryMonth = memo(function CategoryMonth({
             <BalanceMenu
               categoryId={category.id}
               onCarryover={carryover => {
-                onBudgetAction?.(month, 'carryover', {
+                onMenuAction(month, 'carryover', {
                   category: category.id,
                   flag: carryover,
                 });
-                setBalanceMenuOpen(false);
               }}
             />
           </Popover>
diff --git a/packages/desktop-client/src/components/budget/rollover/RolloverComponents.tsx b/packages/desktop-client/src/components/budget/rollover/RolloverComponents.tsx
index 28f2553fe7e283dec78ab322cd53dd124a907134..7c4a9ff8cf11f2ab8a4209cbe582907ca0ceaf04 100644
--- a/packages/desktop-client/src/components/budget/rollover/RolloverComponents.tsx
+++ b/packages/desktop-client/src/components/budget/rollover/RolloverComponents.tsx
@@ -158,6 +158,11 @@ export const ExpenseCategoryMonth = memo(function ExpenseCategoryMonth({
   const [balanceMenuOpen, setBalanceMenuOpen] = useState(false);
   const [hover, setHover] = useState(false);
 
+  const onMenuAction = (...args: Parameters<typeof onBudgetAction>) => {
+    onBudgetAction(...args);
+    setBudgetMenuOpen(false);
+  };
+
   return (
     <View
       style={{
@@ -221,7 +226,7 @@ export const ExpenseCategoryMonth = memo(function ExpenseCategoryMonth({
             >
               <BudgetMenu
                 onCopyLastMonthAverage={() => {
-                  onBudgetAction?.(month, 'copy-single-last', {
+                  onMenuAction(month, 'copy-single-last', {
                     category: category.id,
                   });
                 }}
@@ -234,12 +239,12 @@ export const ExpenseCategoryMonth = memo(function ExpenseCategoryMonth({
                     return;
                   }
 
-                  onBudgetAction?.(month, `set-single-${numberOfMonths}-avg`, {
+                  onMenuAction(month, `set-single-${numberOfMonths}-avg`, {
                     category: category.id,
                   });
                 }}
                 onApplyBudgetTemplate={() => {
-                  onBudgetAction?.(month, 'apply-single-category-template', {
+                  onMenuAction(month, 'apply-single-category-template', {
                     category: category.id,
                   });
                 }}
diff --git a/upcoming-release-notes/3092.md b/upcoming-release-notes/3092.md
new file mode 100644
index 0000000000000000000000000000000000000000..889716c3f58c2a8102c5e75cc23687b955885853
--- /dev/null
+++ b/upcoming-release-notes/3092.md
@@ -0,0 +1,6 @@
+---
+category: Bugfix
+authors: [sleepyfran]
+---
+
+Correctly dismiss pop-over when using the copy last month's budget feature