Total Net Worth
—
Investments
—
Bank Accounts
—
Total Liabilities
—
TWR Since Inception (All Schwab)
—
Net Worth History
Portfolio value over time
Account Summary
Account NameTypeInstitutionBalance
◇
No accounts connected yet
Historical Value
Allocation Breakdown
By Account
By Type
Liabilities
By Account
Breakdown
Consolidated Performance
Your Portfolio vs S&P 500 — Running TWR %
Per-Account Charts
Seed Historical Balance
Enter a known past portfolio value to enable historical TWR calculations. Each daily sync adds a new snapshot going forward.
Account
Date
Portfolio Value ($)
Cumulative · My Portfolio
—
vs S&P 500
Cumulative · S&P 500
—
Benchmark · ^GSPC
Entries
0
Month-end returns
Add Month-End Snapshot
Enter just the month-end balance from your statement. TWR is auto-calculated as (ending − cash flows) / prior ending − 1. Net cash flow is pulled from your imported transactions (deposits, withdrawals, journals, wires). First entry is the anchor baseline (no TWR). S&P 500 return is fetched automatically.
Month End Date
Ending Balance ($)
Cumulative TWR · You vs S&P 500
Start
End
Monthly Ledger
Month End Ending Balance Net Cash Flow My TWR % My Cumulative S&P 500 % S&P Cumulative
◇
No entries yet
TWR PERIOD
Positions
Symbol Description Type Qty Market Price Market Value Cost Basis Price Cost Basis Gain/Loss G/L % Weight
◇
No positions loaded
Allocation
By Category
CategoryTotalTransactions
◇
No data
Dividends & Income by Stock
SymbolDescriptionCategoryTotalCount
◇
No data
Transactions
DateCategorySymbolDescriptionAmount
◇
No data
Account NameInstitutionTypeAccount #BalanceAs Of
◇
No accounts connected yet
DateTypeDescriptionSymbolAmount
◇
Select an account above

Schwab Developer API

WealthDash connects to Schwab's official API via OAuth 2.0. Only a secure token is stored locally — your credentials never touch this app.

  1. Register at developer.schwab.com
  2. Create an app → Individual Trader API
  3. Set redirect URI: loading...
  4. Paste App Key + Secret into config.json
{
  "schwab_client_id":     "your-app-key",
  "schwab_client_secret": "your-app-secret",
  "schwab_redirect_uri":  "your-redirect-uri"
}
Connect Schwab
Transaction History

Pull up to 3 years of transaction history from Schwab. This may take a minute — Schwab limits each request to 59 days so multiple calls are made automatically.

Bank Accounts — OFX Direct Connect

Pulls data directly from your bank's server using the standard OFX protocol — the same technology used by Quicken. No third party involved.

{
  "banks": [
    {
      "name":           "Wintrust Checking",
      "ofx_url":        "https://ofx.wintrust.com/ofx/process.ofx",
      "org":            "Wintrust",
      "fid":            "071925444",
      "userid":         "your_username",
      "userpass":       "your_password",
      "routing":        "071925444",
      "account_number": "your_account_number",
      "account_type":   "CHECKING"
    }
  ]
}

Import OFX / QFX File

If your bank lets you download a statement file (OFX or QFX format), you can import it directly here. Wintrust supports this — just log in to online banking, go to your account, and look for a "Download" or "Export" option and choose OFX or Quicken format.

Select Account (optional — auto-detected from file)
Drop your OFX / QFX file here
or click to browse

Import Schwab Data (CSV)

Two file types are auto-detected. Transactions: schwab.com → Accounts → History → select account → set date range → Export → CSV. Holdings: schwab.com → Accounts → Positions → select account → Export → CSV. Import each account's CSV separately.

Select Schwab Account
Drop your Schwab CSV here

Batch Re-import Schwab CSVs

Pick multiple Schwab transaction CSVs at once. Each file is auto-matched to an account by the XXX#### digits in its filename. For every matched file, we clear previously imported CSV data for that account, then re-import — useful after a sign-handling bugfix. Unmatched files can be routed manually or skipped.

Import Schwab Bank (Checking / Savings) CSV

For Schwab Bank accounts only. schwab.com → your Schwab Bank account → History → Export → CSV. The account is auto-created on first import and appears on the Reconciliation page.

Drop your Schwab Bank CSV here