"A ledger tries to remember every step you took. A snapshot just tells you where you're standing. Pick the one that answers your real question."
Two ways to model money
There are two fundamentally different ways to model a portfolio. A ledger records every event — each buy, sell, dividend, fee, and split — and reconstructs your current position by replaying that history. A snapshot stores your current state directly — you hold N shares of this, this much cash — and doesn't keep the trail of how you got there. Keep is deliberately a snapshot system. Each owner has one position per ticker, a seed amount, and a stored cash balance. That's the whole shape.
Why choose the snapshot?
Because it matches the actual question. Keep exists to answer "what does the family hold right now, and how is it doing?" — not "reconstruct every transaction and compute the tax consequences." A full ledger is enormous surface area: tax lots, cost-basis methods, wash-sale rules, dividend reinvestment, fee accounting. Every one of those is a place for bugs, and none of them serve the low-trigger monitoring goal. So Keep names them all as explicit non-goals: no tax-lot accounting, no dividend/fee ledger, no transaction history. Scope is a feature.
What you give up, honestly
This isn't free. A pure snapshot can't tell you your realized gains for the tax year, or reconstruct why your cost basis is what it is, because it never stored the transactions. Keep accepts that trade-off on purpose — those are exactly the ledger features it declared out of scope. If you genuinely need tax-lot accounting, a snapshot is the wrong model and you should know that before you build. Choosing the snapshot is choosing to answer one question extremely well instead of ten questions adequately.