Release notes
Every version,
newest first.
What changed in each release of Ridgeline Budget, what it means for the way you use the app,
and what was fixed along the way.
v13
September 2026
Current
See the low point before it arrives.
Your budget can say the month works out while a checking account still dips below zero on the
14th, because rent drafts two days before payday. The new Account Forecast page
lays out every bill and paycheck on each account day by day, so you can see that dip coming and
move money before it happens.
Account Forecast
A new page in Advanced view on a paid plan. It lists each of your accounts with
today's projected balance and the lowest point ahead. Open one and you get a running ledger from a
month back to three months out, built from:
- The expenses filed under that account on the Expenses page. Advanced view's Move button decides which account an expense belongs to, so the forecast is only as right as that filing.
- The depended-on income that deposits into it, net of deductions. On the Income page, each paycheck now takes a DEPOSITS INTO account and a pay date, and it repeats forward from that date.
- One-off entries you add with + Entry, such as a transfer to savings.
Start the account from a balance you type in, or tie it to a Net Worth account and start from that.
Set a minimum balance and every day below it is shown in red.
Edit the ledger like the Expenses grid
Click a date, amount or note to edit it in place. Arrow keys move between cells, Enter saves and moves
on, Escape cancels, and clicking away saves. Dates can be typed as 1/15 or
1/15/26, and amounts accept a minus sign on any keyboard.
- Every change applies to that one entry only.
- Changing an expense's amount also updates that month's cell on the Expenses page, for this month or later. Last month's cell is left alone, since it is also next year's.
- Changing a paycheck affects the forecast only. Editing that income on the Income page later replaces your changes to its future paychecks.
- ↺ undoes your changes to an entry and puts it back as scheduled.
Roll Forward
Roll Forward locks every entry before today exactly as it stands and restarts the
forecast from today's projected balance. If the account is tied to Net Worth, that balance is written
back to it. Locked entries can still be corrected, but those corrections stay in the forecast and never
change your Expenses or Income. Typing a new real balance, here or on the Net Worth page, does the same
and records the difference as a Balance correction so the running total still adds up.
Credit card bills
On the Progress page, a credit card spending source can now name the account that pays it
(BILL PAID FROM) and its DUE DAY. Each month's total on that card
becomes the bill due the following month in that account's forecast, and it moves as you record
spending. Bills further out are estimated from your last three closed months and marked as estimates.
Expenses charged to that card are left out of the paying account's forecast, because the bill already
covers them. The bill exists in the forecast only and never touches your budget, where the same
purchases are already counted.
Twice a month
Income has a new frequency, Twice a month, for paychecks on two fixed days such as the
1st and the 15th. It counts as exactly two paychecks a month, where every 2 weeks averages slightly
more. It is available in every view; its two pay days are set in Advanced view for the forecast.
Net Worth report: choose your lines
The Net Worth chart in Reports has a Select lines to show row of pills, like Budget
Balances. Every Net Worth account now has its own line you can turn on, alongside Net Worth, Total
Liquid, Projected and Actual Proj. Account lines start off and the selection resets each visit.
The vertical axis on Net Worth and Budget Balances now fits the lines you are showing rather than
always starting at $0, so a single small account is readable next to your net worth, and the axis
labels show a decimal where needed so a tight range no longer prints the same label twice.
Smaller changes
- Advanced view's per-account tables on the Expenses page now have the same TOTAL, FUNDED and AUTOMATIC footer as the standard grid, per month and for the year.
Fixed in v13
- Deleting an account on the Expenses page now deletes its expenses. They used to be moved silently to whichever account was first. The confirmation now says how many expenses go with it. Any expense left pointing at an account that no longer exists is moved to your first account so it stays visible.
v12
August 2026
Totals you never type twice.
A spending account's total used to be a number you maintained by hand alongside your itemised
entries. It is now the sum of the purchases charged to it, so an entry and the total it feeds
can no longer disagree. That one change turns the Progress page into a proper ledger.
Spending accounts add themselves up
Enter a purchase once and it lands in both places at once: on the account it was paid from, and
against the budget it came out of. There is nothing left to keep in step, so there is nothing
left to drift.
One list holds every purchase
The Progress page's Budget Spending section is now simply Spending,
and it holds everything you buy rather than only the purchases attached to an envelope:
- With a budget - paid out of that envelope. It does not reduce your surplus, and it is deducted from the budget when the month closes.
- Without a budget - an ordinary purchase, counted against your surplus.
You can attach or clear the budget later by editing the entry, in either direction. Doing so moves
the amount between your surplus and the envelope without ever touching the account total.
Split one purchase between budgets
A single trip that covered groceries, the dog and a birthday present does not have to be entered
three times. Use + Add a split in any add or edit form: the amount becomes the
transaction total, and each line takes its own share and its own budget.
- Each envelope is drawn down by its own share only, both on screen and when the month closes.
- Whatever the splits do not cover counts against your surplus, like any other purchase.
- The account is charged the full amount either way, because splitting is a question of attribution, not of money.
- The entry shows one tag per budget with what that envelope paid, and filtering by a budget counts only its share.
Needs Review
Bought something and not sure which envelope it belongs to? Enter the real amount, pick the account,
and tick Needs Review. The amount lands on the account immediately so your balance
stays right, while the budget decision stays open on the Dashboard until you settle it. Resolving it
moves the amount from your surplus into the envelope and leaves the account total exactly where it was.
This is the one case where a budget is not required. The old way of expressing it, an amount of 0 plus
a note like 45?, left the account total understated until someone came back
to it. Those entries still surface, so nothing is lost.
A Spending Entry setting
Settings → App → Spending Entry chooses how the Dashboard asks for spending:
- Account totals (default) - how the app has always worked.
- Every purchase - the full entry form only, with no account balance boxes and no "did you buy something you wanted?" prompt.
It is stored per person rather than per budget, so it follows you to every workspace and every device,
and your partner's Dashboard is unaffected by your choice.
The forms finish your typing
Start typing a payee into either spending form and it offers what you have entered before, drawn
from the last six months. Pick one and the rest of the form fills itself from the last time you
entered that payee: the amount, the budget - or the whole split, if it was split - the note, and
the account it was paid from.
- Suggestions are ranked by how often you have used them, then by how recently, so the everyday ones sit at the top.
- Picking a different suggestion replaces everything a pick can fill, so changing the item changes the prefilled figures with it rather than leaving one purchase's budget under another's name.
- A line under the field says what the entry was filled from, with a Clear link, so a wrong guess is visible and one click to undo.
- Nothing is ever active until you arrow onto it or point at it, so Enter still submits the form if you would rather type the payee out.
- Needs Review is never ticked for you. It records that this purchase still needs a decision, not something about the payee.
Nothing is stored to make this work. The list is worked out from the entries already on your device
each time you type, so it behaves the same on an encrypted workspace and on a free account, and
nothing about what you buy is sent anywhere. Bills seeded from your Expenses Calendar and quick
account-total entries are left out, since neither is something you typed.
Renamed for clarity
Several things went by two names in different corners of the app. Each now has one, and nothing
about how they work has changed:
| Now called | What it is, and what it was |
Priority was Fill First |
The budget type that fills before the others. The sort button on the Budgets page already called it Priority, so the pill on the same screen now agrees with it. |
Payee was Description or Transaction |
Who you paid. The field went by one name on the forms and another on the filter pills; it is Payee on both spending forms, both filter pills, and Find & Replace on the History page. |
Manual Adjustments was Manual Corrections |
The Progress page section for changing a budget balance directly. Nothing about how it works has changed. |
Seed from Expenses was Auto-fill |
The Progress button that pulls in this month's calendar bills. It shared a name with the budget setting that decides how surplus is shared out, which is a different thing entirely; Auto-fill now means only the budget setting. |
Progress was This Month |
The page heading, which now matches what the menu has always called it. The Income page heading, previously Income Sources, is simply Income for the same reason. |
Spending CSV files now use a Payee column. Files with the old Transaction
header still import unchanged.
Smaller changes
- Two people recording at the same moment both land, because committing appends an entry rather than overwriting a shared number. The Progress account total still reads as a running total and logs the difference; the Dashboard box adds the charge you type to what is already there.
- Deleting an entry is all it takes to remove the amount from the account. The "also remove this from the account?" checkboxes are gone, because the entry is the amount now.
- A spending account cannot be deleted while purchases are charged to it. Those amounts would otherwise vanish from the account while still drawing down a budget. $0 placeholders deliberately do not block, since those are reseeded from your calendar every month.
- Entries show their date, an account tag, and refunds as a green +$X.
- The Spending list is sorted oldest first, with undated entries at the top. That group is exactly the bills still waiting to be recorded. Toggling a filter now only removes entries rather than rearranging the ones left behind.
- The Expenses grid breaks ties on the row's year total, so sorting by SOURCE or DAY no longer leaves most of the grid in the order it happened to be typed.
Fixed in v12
- Recorded bills stopped reappearing as upcoming. A bill was marked paid by matching its name, so any purchase sharing that name marked it paid. That was harmless while only bills produced entries, and a live problem once every purchase does. Bills are now matched by identity, and older entries repair themselves as they are used.
One figure that can move
Account totals are preserved exactly. Surplus is not, and cannot be, where an older entry was
missing a field: an entry with a budget but no account inflated surplus, and an entry with an
account but no budget made its spending invisible to it. Both were bugs, in opposite directions,
and both were easy to create by accident because the old add form left both pickers blank while
requiring only the payee. The new forms make them unreachable.
v11
August 2026
One expenses table.
Recurring expenses used to be split across two places: the Expenses Calendar, and a separate
per-account list of payments that draft themselves. They are now one table, and the account a
bill is paid from is what decides how it is handled.
One list instead of two
The merged grid has a new SOURCE column, and the source is the switch:
| Source | What happens |
Set to an account you spend from |
The bill is funded: money is set aside for it in the Expenses Calendar budget each month, it is seeded into Spending when the month closes, and it appears under Upcoming Bills so you can record what actually posted. |
| Blank |
The bill is automatic: it still reduces what you have available to spend, but no balance is set aside and there is nothing to record, because it pays itself. |
Your top-line surplus is unchanged by the merge. Both kinds of bill were already subtracted from what
you have available. Only which bucket a bill sits in is now decided by its source rather than by which
table it was typed into.
Elsewhere on the Expenses page
- The page header shows the funded and automatic split, so you can see at a glance how much of your recurring cost is money you are setting aside versus money that simply leaves.
- The grid footer gained FUNDED and AUTOMATIC column totals under the existing TOTAL row, per month and per year.
- A source that no longer exists is flagged rather than silently reset, so a deleted account never quietly converts a funded bill into an automatic one.
- Renaming a spending source cascades into every expense that uses it, in one step.
- Deleting a source and adding it back under the same name now round-trips, because expenses store the source by name. Nothing is stranded.
- Advanced view's "Card" grouping is now labelled Account, and each per-account table carries the SOURCE column too. Grouping is for your own organisation; the source is what does the budgeting.
- Arrow key navigation works in Advanced view, which never had it. Moving stops at the end of each account's table rather than jumping into a different account's rows.
- Free accounts can hold 30 expenses, up from 20.
Negative amounts
An expense amount can be negative anywhere an amount is accepted: the grid, the bulk tool, the add
form and CSV import. A credit, a refund, a month someone paid you back are all real entries, all now
visible, and shown in red. Only exactly 0 means "no amount".
Previously each of these places tested for "greater than zero", so a negative month was displayed as an
empty cell while still counting in the totals.
Month close: a third choice
When a bill was never recorded, closing the month offered move it to next month or
leave it. There is now make it automatic as well: the bill converts
to a self-drafting payment with its calendar amounts untouched.
It applies from the following month, not retroactively. The month you are closing was already funded
with that bill counted, and rolling that month back restores it as funded.
Setup wizard
Reordered to follow the new model: welcome, spending sources, income, expenses, budgets, encryption.
The separate transactions step is gone, and the expenses step now asks what each bill is
paid from.
Fixed in v11
- Seeding no longer wipes your own entries. The button that pulls in your calendar bills, now ⬇ Seed from Expenses, used to clear the entire Spending list before rebuilding, destroying every entry you had logged against your own budgets. It now rebuilds only the Expenses Calendar entries, which is the set it actually owns.
- Record Now picks the right account. Delete a spending source, add it back under the same name, and Record Now used to preselect the wrong account, while seeding first appeared to fix it. Seeded entries now resolve their account by name, with the stored link used only if it still points at a live account.
- The wizard seeds this month's amounts. It read whichever month appeared first in an imported CSV, so a January-only bill could seed an entry in August, and the amount was rounded to whole dollars. It now reads the current month and keeps the cents: a $17.99 bill offers $17.99, not $18.
v10
May 2026
Budgets backed by real accounts.
Envelope balances are a plan. This release lets you check the plan against the money.
You can now link accounts from the Net Worth page to your budgets, and the Budgets
page shows whether those balances actually cover what your envelopes say they hold. If your budgets
add up to more than the accounts behind them, you can see it rather than discover it at the till.
Pick the accounts once with Link accounts, and the comparison is kept up to date as
both sides move. Leave it alone and nothing changes: budgets work exactly as before.
v9
May 2026
Net worth projections.
A plotted line for where you are heading, next to the one for where you have been.
Add dated projections with a projected figure, then fill in the actual as each date arrives. The two
are charted together, so the gap between plan and reality is the thing you look at rather than
something you work out.
Projections carry a milestone label of your choosing, such as Retirement or a FIRE
goal, so the chart says what it is tracking.
v8
May 2026
The Net Worth tracker.
A place for the whole picture, not just the month.
A new page for every account you hold, with its balance and whether it counts as liquid. Liabilities
are entered as negative balances, so loans and cards net against assets in the total.
It is deliberately separate from the monthly budget. Nothing here feeds your surplus. It is the
long view, updated whenever you feel like updating it.
v7
May 2026
Budget maximums that mean what they say.
A maximum of $0 used to be indistinguishable from no maximum at all.
A budget's maximum is the ceiling surplus will fill it to. Setting it to 0 was the only way to say
"no ceiling", which left no way at all to say "stop filling this envelope". Those are now two
different states: no maximum is its own setting, and 0 is a real cap.
Every budget that was set to 0 was carried over as no maximum, which is what it
meant at the time, so nothing changed in how your surplus was distributed.
v6
April 2026
Closed months moved out of the way.
Your history stopped riding along with your working budget.
Every month you close is a full snapshot: what you earned, what you spent, where every envelope stood.
Those snapshots used to be carried inside the same file as your current month, which meant the longer
you used the app, the more it had to load and sync every time you opened it.
Closed months now live in their own store and are fetched when you actually look at them, on the
History page or in a rollback. You can keep years of history without it weighing on the month you are
working in.
v5
April 2026
Budgets own their allowance.
One place to say how much an envelope gets each month.
A recurring payment used to be able to name a budget, and that was one of two ways an envelope could
be funded. It made the answer to "how much does this budget get?" depend on entries filed somewhere
else entirely.
The allowance now lives on the budget itself. Any payment that named a budget had its
monthly equivalent folded into that budget's allowance, so the envelope kept getting exactly what it
was getting before, and there is now one number to change when you want that to differ.
v4
March 2026
The expenses calendar repeats every year.
Enter the year once, not every January.
Expense amounts used to be pinned to a specific year and month, so a calendar you filled in for one
year was empty the next. Amounts are now held against the month alone: insurance in
June is insurance in June, this year and every year after.
Changing a month changes it going forward, which is what you want for a bill that has gone up. When a
single year genuinely differs, that is what the individual month cells are for.
v3 and earlier
March 2026
The first releases.
Where it started, after roughly twenty years of running the same system in a spreadsheet.
The foundation everything since has been built on: income with its deductions, a twelve-month expenses
calendar, budget envelopes filled from what is left over, spending sources for the accounts you
actually pay from, and the monthly close that turns all of it into a surplus and a fresh month.
v2 and v3 were housekeeping on the way there, tightening up how records are identified internally so
that later releases could move things around without losing track of them. Nothing changed on screen.