Xiphe / budgetbudget

🧮 make financial decisions with confidence
https://budgetbudget.app
GNU General Public License v3.0
92 stars 7 forks source link

Document Income categories setting #32

Open ghost opened 4 years ago

ghost commented 4 years ago

To me it wasn't quite obvious, what the goal of this page is. After playing around and creating a budget, I understand that one should select the primary income category from money money.

Bildschirmfoto 2020-04-20 um 21 44 40

Questions remain such as:

Xiphe commented 4 years ago

Fully agree that this setting needs more explanation. I did not focussed on that for the initial release and the new budget view currently is just a reuse of the settings.

before stable release I would like to have a more dynamic onboarding that explains the different settings and also some stuff that might make sense to setup in MoneyMoney.

Also the setting itself should have a ? button I guess.

As to your questions.

Context: I'm building this with "Four Simple Rules For Successful Budgeting" from YNAB in mind.

Normally when a positive transaction happens on a category, that money stays in the category and can be spend.

image

It can be moved "To Budget" by budgeting a negative amount

image

Now other categories can make use of this money

image

While this works it is not optimal since income from a job (and similar) is supposed to be distributed across the other categories.

Thats what this setting is for. It directly makes the amount available across all other categories via "Available Funds"

image

how does the field "available in 0/1/2/3 months" work?

This is about the "Age Your Money" rule. When I get my paycheck at the 30th of April I might want to distribute this money staring May (available in 1 month) and not use it to cover spendings I did on April 2nd. Or I might even plan further ahead and start using the money from April in June (available in 2 month). Any higher number does not make sense to me personally but who knows :)

what if I do not have a fixed income and/or it's weekly, biweekly, etc.?

I just realised that the label is misleading. It's about the month in which the money is available (this, next, ...) and not about a timespan (available in 30days). Will try to come up with a more clear name.

I personally also do not have fixed income and am using "available in 0" to have the money available in the running month.

do I only select my primary income category or should I select all of them?

Depends as described above. I'd aks myself "Will I spend this money in this exact category?" If the answer is yes, I'd not treat it as income.

Xiphe commented 4 years ago

I'll add more explanation to the setting before beta and a better "create new budget" onboarding before stable (https://github.com/Xiphe/budgetbudget/issues/35)

jakob11git commented 4 years ago

This is about the "Age Your Money" rule.

Shouldn't this be achieved by the user budgeting for upcoming months (if possible)? Not sure if making the money only available for budgeting up from a certain date helps with aging your money. Or is there another reasoning for this?

Oh, and a related question: What about the categories for transfers between my accounts? How are they handled? Because right now, while the app works in general for me, the numbers don't come out right and I'm wondering why. Ok I have seen #33 now. I'll probably just have to wait and try again later :)

Xiphe commented 4 years ago

Hey @jeifour

Yeah, you're probably right concerning the Age your money rule. I personally don't see a reason why one would choose to have s.th. other then 0 or 1 as value in available in. Maybe I'll just switch it to a "this month", "next month" selection.

Concerning the transfers: If you right-click on the Balance, you can choose to "rollover" the category balance even when it's negative. That should help with the numbers. And then with #33 it should be able to ignore or hide the category. Personally I think hiding/collapsing makes most sense since the transfer category should eventually zero-out most of the time. And since BB has no way to enforce that it might make sense to have an eye on it as the user.

jakob11git commented 4 years ago

Thanks for the answer @Xiphe

You're right BB has no way to enforce that the transfer categories are zeroed-out. Would it maybe be therefore a good idea to just automatically budget as much money in a transfer category as is needed so that is balance is always zero?

Ideally of course, that should happen anyway if the user has all their accounts inside of MM, but for various reasons that might not always be the case. Not only because of unsupported banks (the user could always create a manual account to reconcile that issue), but also because I might be transferring assets, or exchanging currencies.

Let's say I send some Yen from my Japanese account to my German account, then it'll get converted to Euros in the process. And as multi-currency budgets are kind of impossible, even though I have recorded both transactions in MM, only one of them can be in a single budget at one time. So while I still have the same amount of buying power in total (minus some fees), my Euro budget gained money, and my Yen budget lost some. If BB would make it so that the transfer category's balance inside my budget is automatically set to zero by budgeting the appropriate amount of money, then the numbers should all add up.

Just a suggestion, maybe I'm overlooking something here.

Xiphe commented 4 years ago

@jeifour. You're my first sponsor! Thanks a lot!

I think these are really good ideas that I have not seen in "the other approaches", yet. I'd argue that If a transaction will not be balanced out with a future second transaction, then it's not a transfer.

For example When I use an ATM outside of Germany, they always charge me 5-ish€ fees. So My bank account has an outgoing transaction of 305€ while my cash account only has an income of 300€. I would budget that as 300€ transfer & 5€ atm-fees.

Other example would be moving money to a "off-budget" account (a depot/portfolio for example). Since the other account is not part of the budget. I would not treat it as a transaction but have a "savings" category where I deliberately budget that money.

As with your Yen-Example, I have a similar situation where I have one budget for my Freelance-Business and one for my Personal expenses. When I "transfer" money between them I have a "personal money" category in my Freelance Budget that I treat similar to other monthly spendings. In my personal Budget I treat that as Income. If currencies change along the way It should be ok since the amounts are not closely linked.

Please let me know If that helps or if you have additional thoughts to it.

I find the Idea of "auto-assigning" categories really interesting. In my Freelance Budget I don't Zero-Out the global "to Budget" and use that as a buffer so that I can see how much money I have for the next Months. For some of the categories that means I'll just budget the amount I've spend the month. Could help if that's done automatically.

Again thanks for your thoughts. I'll let that sink in a bit and probably move it in a separate issue.

jakob11git commented 4 years ago

Yep sorry for going off-topic here, moving these thoughts would probably be best.

I'd argue that If a transaction will not be balanced out with a future second transaction, then it's not a transfer.

Yes, true. I guess initially my issue here came from trying to take my current MM categories and just creating a BB budget (a BBB?) with them. As the budget is only working off a subset of all the accounts inside of MM, categories that are zeroed out there might not be in BB. I'm not sure yet what I personally think would be the best solution to this, but the user considering their budgets when assigning categories in MM might be ultimately the better one.

Let's take my example again: I could create a "Currency Exchange Incoming" category and a "Currency Exchange Outgoing" category, with the former one being treated as income. Seems like that could work out well, I would just need to budget for all outgoing transfers then.

Could help if that's done automatically.

Not sure how you're planning to go about the UI, but having some way to quickly (be it via shortcuts, buttons, etc.) take some actions like that could be very handy indeed. Not sure if it needs to be completely automated, but some stuff like this would be helpful for fast budgeting:

use that as a buffer so that I can see how much money I have for the next Months

Oh definitely. In my case, I always try to guesstimate how much money I'll need in a certain category for that month, and budget accordingly. (+ all the things that aren't paid monthly, I try to keep track of them in a spreadsheet and budget monthly amounts so that I have enough left when they in my budget when they have to be paid)

That also means budgeting for multiple months in advance, basically my version of an emergency fund. Or as you said "aging your money". That already works well with the current version of BB. The only thing I'm missing a bit is an overall "money left to budget" display. Right now it's calculated for each month, so I have to go to the last month in my budget that has any money already budgeted in it and look at the number there. Depending on how many months in advance you're budgeting, this number can be a bit hidden from view right now.

I also think it would probably help with navigating if you wouldn't be able to see any months that are before the budget start date and more than 2 months further than you have already started budgeting. So if I still budget for May, and haven't yet put money into my June budget, then everything starting from July wouldn't need to be shown.

Xiphe commented 4 years ago

Concerning the transfer categories let me know how this works out for you


Moved the (now called) "Quick Actions" here: https://github.com/Xiphe/budgetbudget/issues/45


The only thing I'm missing a bit is an overall "money left to budget" display.

I don't understand this one.

The "To Budget/Overbudgeted" amount in the budget header is supposed to display exactly that. The income category settings is supposed to directly assign "income" to this. And when you assign a negative amount in a category it also appears here. I try to keep this value at 0 in my "private" budget (Following the "Give Every Dollar a Job" rule).

I'd interested in how you understand & use this.


I also think it would probably help with navigating if you wouldn't be able to see any months that are before the budget start date

jep also found that (ref https://github.com/Xiphe/budgetbudget/issues/22)

jakob11git commented 4 years ago

I try to keep this value at 0 in my "private" budget (Following the "Give Every Dollar a Job" rule).

Same here. But it‘s not the „Give Every Dollar a Job this month“ rule, so that‘s why I was asking about an overall / global number, for when I have budgeted some months in advance. Let‘s say I have 500€ in total to budget now in May, and I budget 100€ each month for May up until September. Then May‘s budget would display 400€ left to budget, June‘s budget would show 300€, etc.

But now that I‘m thinking about this, rather than making one global value out of this, it might be even better to just take into account the budgeting that is happening in other months, too. Because in my example, there‘s not actually 400€ left in May, or 300€ left in June, as I have already budgeted that money in future months. If these values would just reflect how much money is actually left, that‘d make them more meaningful for me.

That said, the current way these work is also ok with me. It was more that they functioned in a way that was unexpected to me.

Xiphe commented 4 years ago

I'd argue that if you have 400€ left to budget in May, then you have not "given that money a job". If you want this money to be available as a global buffer without an explicit category like "food" I'd reflect that with a "for future months" / "emergency found" category and assign the 400€ there.

Then in June you assign -100€ to the buffer category and now have 100€ available in to Budget.

You could also make use of income categories with higher "available in" values.

If I get that right, the use case is a scenario where you have irregular income only every three months (or so) and still want to have monthly "caps" on each category. right?

If you want we could do a call on this topic to better understand the ideas and maybe come up with a

jakob11git commented 4 years ago

If you want this money to be available as a global buffer without an explicit category like "food" I'd reflect that with a "for future months" / "emergency found" category and assign the 400€ there.

No. I'm giving the money a job in my example. Just not in the current month, but at some point in the future. My issue is exactly that the app is showing 400 Euros left to budget in May, when actually there is no money left.

If I get that right, the use case is a scenario where you have irregular income only every three months (or so) and still want to have monthly "caps" on each category. right?

Well, I would argue that one would wanna do this anyway. Maybe I'm just coming from somewhere completely different, but you DO budget for upcoming months, or don't you? At least for me that's like 70% of why I'm budgeting in the first place.

Good thing is, BB already works pretty well for my budget. If that's the case even though you did not have this in mind when creating it, that's pretty good 😃

If you want we could do a call on this topic to better understand the ideas and maybe come up with a

Don't want to take away from your time even more than I'm already doing, but I'd be gladly give my input on anything budget-related and this issue specifically, as well as hearing your views.

Xiphe commented 4 years ago

No. I'm giving the money a job in my example. Just not in the current month

Ok so you give it a job in your head but not "on paper". How should the budget program know what portion of the "to budget" amount is reserved for later months and what is "not yet assigned".

I really think that splitting the income transaction across multiple categories available in different future months would be a good way to reflect this.

Just hypothetical: What do you think about a "for next month" input field above the "to Budget" amount.

You get 500€ in may You put away 400€ "for next month" You have 100€ "to Budget"

Now in May you have 400€ available You put away 300€ "for next month" You have 100€ "to Budget"

...

Well, I would argue that one would wanna do this anyway. / You DO budget for upcoming months, or don't you?

I think in an ideal scenario like "I am 100% sure that I'll get payed 500€ each month" there is no big need to budget for future months. I'll then budget things like yearly expenses broken down to monthly rates. So that I have the money available when I need to pay. The other stuff I'll just assign for that month since next month I'll do the same(ish) again.

Now this Ideal scenario is unrealistic and I want to ensure that when I don't get my monthly 500€ for 1-2 Months I can still go on. I start to budget in advance.

Now I can either

Good thing is, BB already works pretty well for my budget.

Cool 😁

jakob11git commented 4 years ago

Actually I think we might be on the same note here, but couldn't communicate that to each other. I guess I wasn't clear enough in my initial post.

bb

So here is an example just to be clear. In April I had 3905,01 Euros for budgeting, but I only needed to budget 1600 out of these to pay for my expenses in April. That's why I used the remaining 2305,01 on my budget for May.

My initial concern was that while in a small example like this, I can immediately look at the month May and see "0,00 To Budget" and I can be sure that I have given every Euro a job. But if I were to budget even further into the future, then this wouldn't be so clear anymore at a glance, even though it is a pretty important thing in general. I would have to scroll right until the last month I budgeted any money in, and look at how much money is left To Budget, because the number from all previous months only shows the carryover to the next month.

Xiphe commented 4 years ago

I also think that we discuss about minute details while trying to archive the same thing :)

I think I got the thing I was misunderstanding. I was focussing only on the April while you're thinking about both (or all) month together and therefore would like to have some reflection of what is budgeted in the next months in the current month.

I don't have a solution for this in mind right now and would propose that you experiment with "buffer" categories or the split income.

If you have an Idea how this could be reflected in the UI let me know.


I know that this is not exactly what you were aiming at but here would be an example where I use money from July in future months using a buffer category "For Future".

image

andre68723 commented 3 years ago

Here is also a nice read-up on the category topic (not ynab related though) https://tekshrek.com/tipps-tricks-zur-moneymoney-banking-app-fuer-os-x/