Week of June 15, 2026
A clearer ledger, filterable net worth, and wider keyboard access
The transactions register is easier to read at a glance, the net worth report can now be narrowed to the accounts and dates you're actually asking about, and a great deal more of the app answers to the keyboard.
Ember is in private beta and under active development. These are the changes made during that week of building and testing.
A register you can read at a glance
Ledger rows now use the same size and weight as the sidebar, a little larger and a little bolder than before, with the sub-text beneath them raised to match. Nothing moved; the table just got legible from a normal sitting distance.
Two changes to how the amount column reads. On a wide screen it splits into Outflow and Inflow, and those halves are now genuine columns with their own headers and widths rather than two values offset inside one cell; they fold back into a single signed Amount column when the window narrows. And when the register runs out of room, every flexible column now gives up a little width instead of the memo column absorbing all the pressure alone, so Amount and the row actions stay on screen rather than sliding off the right edge.
The status column changed too. Cleared and reconciled rows are marked with a small
c and R on tinted discs, replacing a checkmark that had been shrunk to eight
pixels and a color padlock emoji that was the only multi-color thing in the
ledger. A reconciled row is still read-only; it just says so more quietly.
Pending, uncleared, and bank-removed markers are unchanged.
Clicking an amount now does what you'd expect. Clicking the value on a brokerage
row opens the editor with the cursor on quantity instead of stranding it on the
date, and clicking an Outflow or Inflow figure opens the editor at all, which it
previously didn't. Empty amount boxes show a 0.00 hint so the expected format is
obvious on a fresh row.
More of the app answers to the keyboard
Around twenty changes went into keyboard access this week, in three groups.
Focus you can see. The row selection checkboxes, the plain text fields in the row editor (quantity, price, memo, the amount lanes), and the rows of the Holdings positions tree all had no visible cursor when you tabbed onto them. They do now, which matters most in the compound investment cell, where quantity, price, and memo sit side by side and nothing told you which one you were typing into.
Focus that comes back. Dismissing the tag picker with Enter, committing or cancelling a scheduled or future-dated cell, and overriding an auto market-change amount all used to drop you at the top of the document, so your next Tab restarted from the beginning. Each of them now returns you to the cell you were on.
Controls that were mouse-only. The sortable column headers on Holdings and on Balances, the institution rows on Connect Accounts, the Theme and Density options in Settings, and the market-change override in the wide layout could all be seen but not reached. Theme and Density also behave like real option groups now: arrow keys move between them, and Tab enters the group once rather than stepping through every option.
Shortcuts picked up a few repairs as well. On an investment row, k opens the
Type picker. It was previously a dead key, leaving the most-edited field on a
brokerage row three keystrokes away. Pressing t on the same row does nothing,
rather than jumping you into editing on the date field, because investment rows
carry no tags. Home and End jump to the first and last option in the Type and
cost-basis pickers. Enter saves an institution nickname instead of requiring the
mouse. And activating a ticker filter from the keyboard no longer also opens the
row underneath it for editing.
The investment row editor says what it wants
The brokerage row editor changes shape with the type of row you're recording, and several of its fields weren't keeping up. A reinvested dividend asked for a "position amt"; interest and dividend payouts asked for a bare "amount". Each value field is now named for the row it belongs to. Interest and fee rows no longer prompt you to pick a security, which they never needed.
When a value is refused, you can now see why and where. Every value field, not just quantity and price, draws a red border on a bad entry, and the message beneath it is written in the terms on screen ("Enter a positive dollar amount") rather than the name of a database column. Switching a row's type clears any error left over from the previous shape, which used to sit there naming a field the row no longer had. When only the price is wrong, the cursor lands on price instead of one field short of it.
A memo typed on a Buy, Sell, or Reinvest row used to vanish on save: it was
stored, but the ledger showed only 100 sh @ $182.50 where the note should be,
with no way back to it short of reopening the editor. Memos now show. A memo also
survives the moment a cash row turns into an investment row when you pick a
security, instead of being wiped. Overriding a market-change amount accepts a
figure pasted straight off a broker statement ($1,234.56, commas and dollar
sign intact) and raises the number keypad rather than the full keyboard on a
phone. An opening position can no longer be inline-edited to a negative number,
which used to book a negative asset into your net worth. And on a brokerage
account, the Uncleared figure now shows that it breaks into cash and positions,
which was only discoverable by hovering it on the off chance.
Transfers between your own accounts stop doubling up
When a transfer arrived as an import on both of your linked accounts, Ember could make the problem worse rather than better. Converting one side into a transfer fabricated a fresh leg on the destination account even when your bank had already delivered a real one, and once you had two pairs there was no way to get back to one, especially if a leg was reconciled.
Converting a row into a transfer now looks for the matching bank-imported row on the other account and pairs with it, so it stops creating the duplicate in the first place. For duplicates you already have, selecting both legs collapses all four rows down to two, keeping the bank-linked or reconciled row on each side and re-pairing them; if the surviving row is reconciled you're asked to confirm first, and the whole collapse undoes in one step. It's held to a short date window so two genuinely separate transfers of the same amount can't be swept together.
Separately, merging a transfer leg with a plain bank row now carries the transfer pairing onto the row that survives, so the far leg on the other account no longer ends up pointing at a row that's gone.
Net worth, narrowed to what you're asking about
The net worth report answers a broader set of questions this week.
- Choose which accounts count. A filter grouped by cash, credit, investments, loans, and other, with a search box and select all or none. Every figure on the page respects it, and the choice lives in the address, so a filtered view is something you can bookmark or send to someone.
- Choose the window. Three months and year to date joined the range picker, along with a custom range you set with from and to month pickers. The two-year range came out.
- Read the chart. Hovering a month brings up assets, debts, and net worth for it, color-keyed to the bars, with a guide line and the bar you're on emphasized.
- See the movement. The headline figure is labelled with the date it's as of, a new card shows the change across whatever range you've selected, and the monthly table's change column is now explicitly month over month, with an arrow and color for direction.
One page for your actions
The Actions page is now a single list of everything you've set up, split rules and the Venmo charge configuration side by side. The Venmo row is always present, even before you've configured it. It used to sit in a separate form below the rules, which made it easy to never find.
Each row tells you what the action does and where it appears: the right-click menu, a keyboard shortcut, the bulk bar, a page, or a warning that it's currently attached to nowhere. An on and off switch on the row takes effect as soon as you flip it, and selecting a row opens its editor underneath in place rather than swapping panes. The page was also close to unreadable in light mode (pale grey text on white) and now renders correctly in light, dark, and both densities.
Improvements
- Number fields: A stray mouse wheel can no longer change a figure you already typed. That covers the bank-reported balance on Reconcile, the target and tax-rate fields on Plan, and a split rule's percentage, all of them numbers you set and then scroll away from.
- Across the app: Dropdowns are themed everywhere instead of turning into grey system chrome the moment they open, and each one takes arrow keys, Home and End, Enter, Escape, and type-to-jump.
- Editing: Amount editors open with a clean value:
0.04and431.25instead of0.04000000and431.25000000, on scheduled rows and on investment interest, fee, and dividend rows. - Sidebar: Section balances drop the dollar sign so the figures line up in a column, and the collapse toggle no longer sits on top of your avatar.
Fixes
- Transactions: A transaction you've deleted no longer counts toward the account balances in the sidebar, and can no longer light a status dot.
- Transactions: The right-click menu no longer offers split rules or "Charge on Venmo" on brokerage rows, where neither applies.
- Scheduled: An overdue template no longer appears as a past-dated row under upcoming transactions, and "Monthly on day" refuses anything above 31, which previously saved a schedule that could never come due.
- Holdings: The positions tree refreshes after a tax-lot import or a cost-basis change instead of showing stale figures until you reload the page.
- Accounts: A brokerage, IRA, Roth, or HSA account created from the Add account dialog lands in the Tracking section of the sidebar, matching every other way of creating one. It was landing in Operating.
- Import: A Venmo payment keeps the person you paid as the payee and the note as the memo. Both were being displaced by your bank's guess at what the payment was about.
- Import: A first YNAB import no longer fails at the final step on its own default settings, and choosing to skip an account now actually skips it.
- Security: Additional hardening from our ongoing internal review. We look at this continuously, not only when something prompts it.