Budgets
A budget in SavingStat is a shared container that expenses belong to: who can see it, what its totals cover, and why the Over budget badge is not about it.
What a budget is
A budget in SavingStat is a named container that spending belongs to: Household, The flat, Wedding. It has a name, a description and an emoji, one owner, and the members that owner invites.
Colour is not on that list. SavingStat stores it against your own membership rather than against the budget, so it is yours alone and the same budget can show in a different colour for each person in it.
Any expense can name a budget. The budget's page reports what has gone through it, and that is the whole mechanism.
A budget is not a spending limit
A budget holds no number you are meant to stay under. There is no such field, so nothing blocks a payment, refuses it, or raises a warning because of what the budget already contains. A budget is a way to group spending, not a cap on it.
This needs saying plainly because of a badge you may have met. A transaction can be marked Over budget, and the name is misleading: it is not about a budget at all. One payment can be split across several expense rows, and the badge appears when those rows add up to more than the payment they came from. The split does not balance.
The badge is a complaint about the arithmetic inside one transaction. Correcting the split amounts clears it. It never refers to a budget's total, and no budget can produce it. Only expenses are checked this way. Income and transfers are not.
Who can see a budget
Everyone in a budget is either its owner or a member. An invitation stays pending until the invited person accepts it. Until then they see nothing.
An owner cannot invite just anyone. The other person must already have an accepted connection with the owner, so joining a budget takes two acceptances: the connection first, then the budget itself.
Getting out again is one of two actions. They do very different things. Archiving is personal. It moves the budget off your active list into an Archived view of your own, asks you to type the word to confirm, and leaves everyone else's list exactly as it was. The budget carries on without you noticing it.
Leaving is the action that moves data. Your expenses cannot stay filed against a budget you are not in, so SavingStat takes them out and puts them into a new budget of your own, named after the one you left and carrying a note that explains where it came from. The spending goes with you rather than staying with the others. The owner removing you does the same thing, so a member who has spent anything never simply disappears from the figures.
A budget's categories
A budget's categories are whatever its spending has been labelled with. Open a budget and you see the ones that have actually turned up in it: a list derived from the expenses filed against the budget, not from anything configured on it.
Each category is marked as one of the defaults or as one somebody made. Any that is not already in your own list can be added from there, which is how a category the other person uses reaches your picker.
What the totals mean
The figures on a budget cover the current calendar month, first day to last. They are not a running total since the budget was created. There is no date range to change.
Four cards carry them. Total Spent is the whole budget's figure. SavingStat only works it out where the budget has more than one member. In a budget with you alone the figure is simply absent: the card stays and reads zero, so Your Share beside it is the number to read there.
Transactions counts expense lines rather than payments, so one payment you split across two categories counts twice. Collaborators counts everybody attached to the budget, including anyone whose invitation is still pending and who therefore cannot see any of this yet.
Amounts convert into the currency in your settings, so a budget fed by wallets in different currencies still resolves to one number.