[Feature] Allow budgeting groups #1420

Closed
opened 2026-02-28 19:43:09 -06:00 by GiteaMirror · 3 comments
Owner

Originally created by @CrazyKidJack on GitHub (Sep 14, 2024).

Verified feature request does not already exist?

  • I have searched and found no existing issue

💻

  • Would you like to implement this feature?

Pitch: what problem are you trying to solve?

There are many times where I don't want to have to assign a specific dollar amount to each category, but rather just to the group.
For example, I may have a group called "groceries" and within that categories for different types of grocery store items. Having the fine-grained categories is helpful to know exactly what i'm spending my money on which can help me make decisions in the moment... but when I'm actually doing my budget, I don't know exactly how many dollars I'm going to spend on produce vs junk food. I just know that total I want to spend say $200 on groceries. If I find I'm spending more than the $200, then I can look at the individual categories to figure out where that money is going and where I might be able to cut back.

Another way to explain: Imagine I put some of my envelopes (categories) into a bigger envelope. And some of the cash in the bigger envelope was not in any of the smaller envelopes? It's just sitting in the bigger envelope on its own, perhaps next to but not inside of the smaller envelopes. That is what I want to recreate.

If multi-level groups were ever implemented, I'd like the same idea to be applied to every level of grouping.

Describe your ideal solution to this problem

I think how it would work is self-explanatory except when multiple levels have budgeted amounts at the same time that do not add up to the same amounts.

I think the top-level group budget (and not the category budgets) should always be the thing that is used for the calculations in the cards at the top of the budget page.

If you don't assign a group budget, it automatically gets set to the sum of its child category budgets.

If you do assign a group budget, then there is the opportunity for a mismatch, which could be handled (I think intuitively) as follows:

In this case I think AB should force the group budget to be greater than or equal to the sum of the category budgets. This would allow users the option to

  • only assign a group budget,
  • assign a group budget and allocate some but not all of that to individual categories,
  • assign all of it to individual categories (which could be done automatically by just not manually assigning a group budget)

This would allow current users to keep using exactly how they have up until now with no change in behavior (if they never assign a budget to a group... then they will always default to equaling the sum of their categories... just like they do now)

But it would also allow users like me to decide, for each group, how specific we want to go with our budgeting independently of how specific we want to go with our spend tracking.

Side Note: I think it would also make sense to allow people to assign groups to a transaction instead of categories.

Teaching and learning

Would probably need to add some documentation to the budgeting docs about the 3 cases:

  • assigning a budget to categories only
  • assigning a budget to a group only
  • assigning budgets to both groups and categories
Originally created by @CrazyKidJack on GitHub (Sep 14, 2024). ### Verified feature request does not already exist? - [X] I have searched and found no existing issue ### 💻 - [ ] Would you like to implement this feature? ### Pitch: what problem are you trying to solve? There are many times where I don't want to have to assign a specific dollar amount to each category, but rather just to the group. For example, I may have a group called "groceries" and within that categories for different types of grocery store items. Having the fine-grained categories is helpful to know exactly what i'm spending my money on which can help me make decisions in the moment... but when I'm actually doing my budget, I don't know exactly how many dollars I'm going to spend on produce vs junk food. I just know that total I want to spend say $200 on groceries. If I find I'm spending more than the $200, then I can look at the individual categories to figure out where that money is going and where I might be able to cut back. Another way to explain: Imagine I put some of my envelopes (categories) into a bigger envelope. And some of the cash in the bigger envelope was not in any of the smaller envelopes? It's just sitting in the bigger envelope on its own, perhaps next to but not inside of the smaller envelopes. That is what I want to recreate. If multi-level groups were ever implemented, I'd like the same idea to be applied to every level of grouping. ### Describe your ideal solution to this problem I think how it would work is self-explanatory except when multiple levels have budgeted amounts at the same time that do not add up to the same amounts. I think the top-level group budget (and not the category budgets) should always be the thing that is used for the calculations in the cards at the top of the budget page. If you don't assign a group budget, it automatically gets set to the sum of its child category budgets. If you do assign a group budget, then there is the opportunity for a mismatch, which could be handled (I think intuitively) as follows: In this case I think AB should force the group budget to be greater than or equal to the sum of the category budgets. This would allow users the option to - only assign a group budget, - assign a group budget and allocate some but not all of that to individual categories, - assign all of it to individual categories (which could be done automatically by just not manually assigning a group budget) This would allow current users to keep using exactly how they have up until now with no change in behavior (if they never assign a budget to a group... then they will always default to equaling the sum of their categories... just like they do now) But it would also allow users like me to decide, for each group, how specific we want to go with our budgeting independently of how specific we want to go with our spend tracking. _Side Note: I think it would also make sense to allow people to assign groups to a transaction instead of categories._ ### Teaching and learning Would probably need to add some documentation to the budgeting docs about the 3 cases: - assigning a budget to categories only - assigning a budget to a group only - assigning budgets to both groups and categories
GiteaMirror added the needs votesfeature labels 2026-02-28 19:43:09 -06:00
Author
Owner

@github-actions[bot] commented on GitHub (Sep 14, 2024):

Thanks for sharing your idea!

This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution).

The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+

Don’t forget to upvote the top comment with 👍!

@github-actions[bot] commented on GitHub (Sep 14, 2024): :sparkles: Thanks for sharing your idea! :sparkles: This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution). The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+ Don’t forget to upvote the top comment with 👍! <!-- feature-auto-close-comment -->
Author
Owner

@CrazyKidJack commented on GitHub (Sep 14, 2024):

I did not select the checkbox for "Would you like to implement this feature?".
That said, I have significant development experience and would be willing to do so. But I would need/want significant assistance getting started navigating the AB code. Once I get going, I code quickly and (I like to think) with high quality... but I always have a hard time getting into other people's code, figuring out how it works, and figuring out the best way to set up the dev environment for that project. It's really a momentum problem. If someone could help guide me to a point where I understand the code base, then I would be more than happy to hop in on this and also other features.

@CrazyKidJack commented on GitHub (Sep 14, 2024): I did not select the checkbox for "Would you like to implement this feature?". That said, I have significant development experience and would be willing to do so. But I would need/want significant assistance getting started navigating the AB code. Once I get going, I code quickly and (I like to think) with high quality... but I always have a hard time getting into other people's code, figuring out how it works, and figuring out the best way to set up the dev environment for that project. It's really a momentum problem. If someone could help guide me to a point where I understand the code base, then I would be more than happy to hop in on this and also other features.
Author
Owner

@wetrustinprize commented on GitHub (Jul 16, 2025):

Would really like to see this in Actual, currently I just have 3 categories to follow the 50/30/20 rule, but I can't have a fine report about my expenses since they are just three categories.

@wetrustinprize commented on GitHub (Jul 16, 2025): Would really like to see this in Actual, currently I just have 3 categories to follow the 50/30/20 rule, but I can't have a fine report about my expenses since they are just three categories.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#1420