What is the portfolio worth?
Portfolio value is the value of supported stocks and ETFs. Transaction cash flow remains visible as event metadata and is not included in the total.
Record stocks, ETFs, transaction cash flows, and dated acquisitions; replay a ledger against raw historical closes; and inspect current value, allocation, daily movement, and unrealized gain or loss without connecting a brokerage account.
For each holding, the tracker multiplies shares by the latest saved close to calculate current value. When an average cost is available, it also multiplies shares by that amount for known cost basis and subtracts that basis from current value for unrealized gain or loss. When a previous close is available, the difference between the two closes is multiplied by shares for the holding’s daily move.
Allocation divides each holding’s current value by the complete active portfolio value. The concentration summaries keep the largest holding, top three, and top five measured against the whole portfolio, while a Top N control limits the equities shown in the sortable table.
Portfolio value is the value of supported stocks and ETFs. Transaction cash flow remains visible as event metadata and is not included in the total.
Allocation puts the Top 3 and Top 5 summaries first, then shows the selected Top N equities in an exact sortable table. Each position’s percentage still uses the complete portfolio.
Known cost basis and unrealized gain / loss compare current value with the average cost you entered, in dollars and as a percentage of that known cost. The gain chart selects the Top N equities by current value, then orders them by gain amount or gain percentage.
Day change compares the latest close with the previous close. The movers view places both the strongest Top N and weakest Bottom N equities in one chart, shown in dollars or percentages.
The type summary keeps stock and ETF totals separate for value, allocation, daily change, known cost basis, and unrealized gain or loss.
Up to five independently saved portfolios can be named, colored, reordered, and compared side by side. A new Portfolio tab starts empty rather than copying the active one.
The tracker recognizes Fidelity, Vanguard, and Schwab positions exports. Choose Import on the Holdings heading, select the downloaded file, then review the detected accounts and equities before anything is saved. The file is parsed locally in the browser and is not uploaded.
Download the positions CSV from the Portfolio Positions page. The importer accepts the regular positions columns, including the 2026 capitalization changes, and uses Cash, Margin, or Financing only to distinguish separate position rows.
Use the CSV whose positions section starts with Account Number, Investment Name, Symbol, Shares, Share Price, and Total Value. A later transaction section in the same file is ignored.
Export Positions from the Positions view. Aggregate and lot rows are retained separately when the file supplies a lot or acquisition-date discriminator.
With several accounts, check the accounts to combine in the current portfolio or create one portfolio per account name. A file can update a matching imported row or a likely symbol match, but it never removes a saved holding merely because that holding is absent from the new file.
Recognized options, cash and money-market balances, crypto, mutual funds, fixed income, futures, pending activity, totals, and short positions are excluded. A supported description containing ETF defaults to ETF; other equities default to Stock. Selected accounts appear as collapsible groups where every classification can be reviewed, changed, or skipped. Any unresolved row is highlighted and must be classified or skipped before import.
Portfolio history begins when transactions are added or imported. Shares and weighted-average basis are derived from the ledger. Exact transaction cash flow remains visible for context but is not accumulated into an available-cash balance. Buys, sells, deposits, withdrawals, dividends, reinvestments, interest, fees, splits, transfers, and adjustments can be created or edited manually.
Adding a holding requires positive shares and a purchase date; average cost may be left blank when basis is unknown. The tracker records the opening position as a zero-cash adjustment, separately from the latest market-close date.
Fidelity, Vanguard, and Schwab transaction CSV files are parsed only in this browser. Exact signed cash amounts are retained, overlapping reimports are deduplicated, and account numbers are masked. Options, shorts, collateral or securities-lending activity, crypto, fixed income, mutual funds, and unsupported corporate actions are left in the review summary and mark the affected account history incomplete.
Portfolio value history uses raw Marketstack USD closes, split-adjusted share counts, and explicit ledger dividends. Provider splits are applied before same-day user transactions. Weekends, market holidays, and provider-confirmed missing sessions carry the latest earlier close forward; no price is invented before an equity’s first known close. Drag across either history chart to compare its start and end values; click the chart again to clear the selected range.
The Equity history section shows historical position values or split-adjusted stock prices. Stock-price mode divides every earlier raw close by all later provider split factors, including compounded forward and reverse splits, but does not adjust for dividends. Provider split markers are display-only and never add or change ledger transactions. By default the chart fixes the named lines to the current Top N equities by allocation and combines every remaining equity into Other at each historical date. Checking an individual equity exits Top N and updates both the chart and exact table; every checkbox may be cleared for an empty view. Hovering or focusing a legend equity emphasizes its line, and its remove button keeps the remaining lines as individual selections. The table lists current shares, value, allocation, and 5-day, 1-month, 3-month, 1-year, and 3-year changes for the selected equities. In portfolio-value mode, All measures the position-value change from that equity’s first purchase through the latest close; stock-price mode omits All because it is not tied to the portfolio’s purchase history.
Equity performance compares split-adjusted price growth without portfolio shares or dividends. Every selected equity starts at 0% on its first usable close in the chosen range, so later listings can join without inventing an earlier price. The legend, keyboard and pointer exploration, drag selection, chart visibility, table configuration, and section export behave like Equity history. Ending badges identify the strongest visible results while the exact table records start and end prices, price change, and performance.
Portfolio performance groups returns into adaptive calendar periods: daily for 5D, weekly for 1M, monthly for 3M and 1Y, quarterly for 3Y, and yearly for All. Whole portfolio uses a chain-linked investment return that neutralizes security flows, counts recorded income, and deducts fees; the black line uses its own currency axis for securities balance. Selecting equities switches to grouped, color-coded price-return columns and removes the balance line. Monthly, Quarterly, and Yearly tabs independently control the detailed table and its exports. A portfolio without a transaction ledger is explicitly shown as a Current-holdings backcast.
Expanding a holding opens Overview by default. Its instrument-level mini chart has independent value and range controls, the same point and drag-selection details as Equity history, and stays configured while the row is collapsed. Transaction ledger shows the existing account-specific ledger table and its column settings. Overview also loads a bounded public Marketstack company profile on demand; sparse ETF and manual-holding details remain explicitly unavailable.
Transaction Kind and Equity filters accept several choices and combine with AND semantics. Main transactions, each expanded holding ledger, Equity history, Equity performance, and Portfolio performance can be sorted by clicking a heading or reordered by dragging headings; the expanded-ledger order applies to every holding.
Use the portfolio comparison for top-level totals, then return to one active portfolio for holding-level detail. A large gain or one-day move can be driven by position size as much as by percentage performance, so read both views together.
The shipped sample contains eight shares of AAPL at a $190 average cost and $230 latest close, five shares of MSFT at $410 and $520, twelve shares of VTI at $285 and $320, and four shares of QQQ at $500 and $570. Its saved prices are illustrative rather than current market quotes.
VTI is the largest position at $3,840, about 36.4% of the portfolio. The two ETFs total $6,120 and the two stocks total $4,440. That describes this hypothetical snapshot; it does not say whether the allocation is suitable or diversified enough for a particular investor.
Calculations are estimates for planning and education, not personalized financial, tax, legal, or investment advice. Quotes may be delayed or unavailable. Read the Financial Disclaimer.
Sources reviewed August 2026. These sources explain investing and recordkeeping concepts; they do not endorse this tracker or its assumptions.