How the app tracks your balances

Events, not transactions

When you use a bank or brokerage, you see transactions — line items on a statement. This app works at a higher level: events.

An event is a financial action you took — borrowing money, buying a security, receiving a distribution, making a payment. A single event can affect multiple balances at once. For example, a credit payment might:

  • Settle outstanding interest (splitting it between deductible and non-deductible)
  • Reduce principal (proportionally between deductible and non-deductible portions)
  • Shift the deductible percentage of your debt going forward

Bank transactions can't capture this. They show “$2,500 payment to HELOC.” The app shows what that $2,500 actually did to your deductible position.

What the app tracks

The app maintains these balances, updated automatically with every event:

Credit account (your HELOC / line of credit)

  • Invested principal — borrowed money currently funding investments
  • Capitalized deductible interest — interest that was paid by borrowing more
  • Non-deductible principal — all borrowed money not currently supporting investments (idle cash, personal borrowing, capitalized non-deductible interest)
  • Outstanding interest — interest charged but not yet paid (split deductible / non-deductible)

Brokerage account

  • Borrowed cash — proceeds from borrowing, not yet invested (or returned from a sale)
  • Personal cash — your own money: deposits, dividends, realized gains

Per holding

  • Borrowed cost — portion of the holding's cost base funded by borrowing
  • Personal cost — portion funded by personal money
  • The ratio between these determines how sale proceeds are split

See the glossary for precise definitions of each balance.

How events update balances

Every time you add, edit, or delete an event, the app replays your entire event history from the beginning and recomputes all balances from scratch.

This means:

  • There's no accumulated rounding error
  • You can add historical events you forgot — the app recalculates everything after them
  • Editing an old event cascades correctly through all subsequent events
  • The order you enter events doesn't matter — only their dates do

Each event type has specific rules for how it affects balances. The app applies these rules consistently, producing a plain-English explanation for every event (visible in the event detail drawer).

The deductible split

Interest deductibility is derived from the composition of your debt at any given moment. If 85% of your credit balance is deductible principal and 15% is non-deductible, then approximately 85% of the interest charged during that period is deductible.

But the composition changes constantly — every purchase, sale, distribution, and payment shifts the ratio. The app tracks these shifts at the event level and uses time-weighted calculation to determine the exact deductible portion for each interest charge.

All event types

The app supports these event types:

EventWhat it does
Borrowing to investDraw from credit line, transfer to brokerage as borrowed funds
Borrowing for personal useDraw from credit line for non-investment purposes
Deposit to brokerageAdd your own (personal) money to the brokerage account
Investment purchaseBuy securities using available brokerage cash
Investment saleSell some or all units of a holding
Investment distributionReceive a cash distribution (dividends, RoC) from a holding
Stock splitAdjust unit count and per-unit cost for corporate actions (splits and reverse splits)
Brokerage cash withdrawalTake cash out of brokerage for personal use
Credit paymentMake a payment to your credit account (interest + principal)
Brokerage transfer to creditTransfer cash from brokerage directly to credit account
Interest chargeRecord the interest your lender charged for a period
Interest capitalizationPay interest by borrowing more from the same credit line

Each event type has a field-by-field reference — click the event name above or find it in the Guide sidebar.

The tracker applies these rules automatically for every event you record.