Financial Overview
Spending by Account
Tax Estimation Center
Tax Parameters
Tax Summary
Enter parameters and click Update to see results.
Data Analytics
Category Breakdown
Spending Trends
Cycle Pacing & Forecast
Ledger (Shift-click pivot rows to toggle all)
| Date | Description | Category | Sub-Cat | Account | Amount |
|---|
Import Bank Statements
Drag & Drop your CSV here
or click to browse from your device
Learning Model Rules
| Keyword | Category | Sub-Category | Tags | Retirement |
|---|
Settings & Danger Zone
Setup
First Time User Instructions:
- Navigate to the Import CSV tab from the sidebar.
- Select the correct Import Mode (e.g., Normal Bank Statement).
- Select your Account Target. Ensure you map the statement to the correct account type.
- Drag and drop your bank's CSV statement or click to upload.
- Navigate to the Ledger to review and manually categorize unassigned transactions.
- Go to the Rules tab and click Train Model from Ledger to save your manual categories for future imports.
Definitions for Critical Inputs:
- Account Target (Inverted vs Standard): Credit card statements often export expenses as positive values. Marking an account target as "Inverted" (e.g., AMEX, VISA) securely flips the calculation so expenses correctly register as negative net flows.
- Import Mode (Historical vs Raw): "Historical Google Sheet Export" is strictly exclusively for importing bulk legacy data utilizing our structured Google Sheet template. Always use "Normal Bank Statement" for standard monthly bank CSVs.
- Retirement Value (Y/N): An optional tag applied in the ledger. Designating an entry with 'Y' intelligently isolates the related cash flow from standard discretionary dashboard tracking.
- Smart Consolidate: An automated algorithm within the Rules engine that cleans up duplicate keyword targeting across the rules dataset.
App Capabilities
Enable or disable specific modules to customize your workspace.
Account Management
Account Type Manager
Manage the list of editable account types (e.g. Emergency, Retirement, HSA, ESPP) available for categorizing your accounts.
Data Maintenance
Re-run the categorization engine across all your bank transactions using your current ruleset. This will update both Categories and Subcategories based on your current learning model.
Danger Zone
Erase specific modules or completely reset your local database. These actions cannot be undone.
Banking Data
Delete all bank transactions, learning rules, and checking/savings/credit card accounts.
Investments Data
Delete all investment portfolios, stock/options trades, transaction history, and investment accounts.
All Local Data
Perform a complete factory reset. Erase all transactions, accounts, rules, tax setups, and AI config.
Gemini AI Configuration
Configure your Gemini API key to enable automated financial insights and analysis.
Get your key from Google AI Studio.
Security Settings
Add a simple layer of security to restrict access to your financial dashboard. The PIN is saved in your browser and will be cleared when you clear browser data.
AI Financial Insights
Ready for Analysis
Gemini can analyze your spending patterns, tax situation, and investment activity to provide personalized optimization tips.
Investments Overview
Traded Symbols Volume
Trading by Account
Investments Flow (Shift-click pivot rows to toggle all)
Investment Transactions
| Date | Description | Action / Symbol | Trade Comm/Fees | Account | Net Amount |
|---|
Investments Ledger (Shift-click pivot rows to toggle all)
| Date | Description | Action / Symbol | Fees / Comm | Investments | Amount |
|---|
Account Cash Flow (Shift-click pivot rows to toggle all)
Account Transactions
| Date | Subcategory | Amount | Description |
|---|
Account Status
About CashFlow
Release Notes
Version: Beta 1.2.4
Timeframe-Based Balance Calculations & Date Normalization (Beta 1.2.4):
Welcome to the Beta 1.2.4 release! This update makes account running balances align dynamically with active date range filters, updates doughnut charts to plot historical distributions, and introduces robust CSV date format standardization and migrations.
- Dynamic Balances: Upgraded "Total Balance" cards on the Dashboard, checking flow, and investments views to compute and display the ending running balance relative to the selected year, month, or range.
- Historical Doughnuts: Refactored the dashboard Account Balance distribution and brokerage Asset Allocation charts to display historical distributions at the end of the filtered timeframe rather than today's current values.
- Automatic Date Normalization: Integrated robust parsing that standardizes varied CSV date string formats (e.g. `MM/DD/YYYY` or `MM/DD/YY`) to standard `YYYY-MM-DD` on statement import, preventing sorting anomalies.
- Seamless DB Migration: Embedded a startup database migration that scans all existing transaction logs and automatically converts legacy date string formats to standard `YYYY-MM-DD` behind the scenes.
Account Type Manager Usability & Sync Optimization (Beta 1.2.3):
Welcome to the Beta 1.2.3 release! This update eliminates disruptive full page refreshes when managing custom account types in local development, optimizes backend file sync behaviors, and implements resilient unload listeners.
- HMR / Watcher Optimization: Configured Vite watch parameters to ignore local JSON storage files, preventing hot module replacement loops and unexpected reloads when writing custom account types to disk.
- Deferred Backend Sync: Refactored storage updates to edit browser IndexedDB immediately for instant visual updates, deferring server file writes until navigating away from settings or closing the page.
- Resilient Page Closure: Wired `beforeunload` and `pagehide` listeners with standard `keepalive: true` fetch headers to guarantee database sync completes cleanly even during abrupt tab closures.
Security PIN Lock Layer (Beta 1.2.2):
Welcome to the Beta 1.2.2 release! This update introduces an optional 4-digit security PIN lock screen overlay to safeguard local financial dashboards from unauthorized local access, with direct toggle settings and automatic storage wipe support.
- App Security Lock: Implement a fullscreen security overlay containing a 0-9 numeric pad and feedback dots. Blocks main dashboard rendering and sidebar access on startup until the correct 4-digit PIN is entered.
- Configuration Switch: Added a "Security Settings" configuration card in Settings. Users can dynamically enable PIN lock, confirm the 4-digit key, and securely save configuration states to local sandbox storage.
- Protected Disabling: Enforced security validation when disabling the lock screen. Prompts users for verification against their existing PIN before clearing the lock settings.
- Data Erasure Synchronization: Fully integrated PIN removal with the "Erase All Data" factory-reset command, removing any stored security keys when starting with a clean slate.
Export Persistence & Empty Data Models (Beta 1.2.1):
Welcome to the Beta 1.2.1 update! This release adds support for initial balance and as-of date columns in ledger exports to fully preserve account settings, disables automatic transaction re-seeding on data erasure, and refines running balance cards.
- Persistent Ledger Backups: Included initial balance and as-of date in banking and brokerage CSV exports to automatically restore starting balances on re-import.
- Clean Slate Deletions: Prevented automatic re-seeding of demo transactions when erasing data (Erase Banking, Erase Investments, and Erase All) to allow starting fresh with a completely empty model.
- Overall Running Balances: Maintained the overall current running balance in header total cards across all pages, independent of active page date/range filters.
- Contextual Historical Imports: Clarified historical CSV import alerts by confirming whether a banking or investment portfolio import was completed.
- Brokerage Dashboard Fix: Resolved a javascript crash where `today` was undefined in the Investment Dashboard allocation view.
Account Balances & Cash Flow / Balance Views (Beta 1.2):
Welcome to the Beta 1.2 release! This update introduces comprehensive historical balance tracking, running balance timeline calculations, and dynamic toggles to switch charts and tables between net cash flows and ending balances.
- Historical Balance Settings: Added fields in Account Management (Settings) to define the initial balance and as-of date for each checking, savings, credit, or brokerage account.
- Running Balance Calculations: Calculates running balances chronologically per account based on transactions occurring before (subtracted) or after (added) the as-of date. Brokerage balances exclude internal trades (BUY/SELL) while accounting for transaction fees.
- Dashboard View Toggles: Seamlessly switch between Cashflow View and Balance View on the Dashboard, Account Flow, Investment Dashboard, and Investment Flow pages.
- Balance Visualizations: Plots running balances on checking and investment flow line charts, shows ending balances in pivot table headers (Year and Month rows), and displays account balance distribution doughnut charts in Dashboard and Investment views.
- App Icon Refresh: Refreshed the app branding using the custom CashFlowApp_Icon image, re-generating all PWA and Android package launcher and splash screen assets.
Interface Reactivity & Account Grouping (Beta 1.1.1):
Welcome to the Beta 1.1.1 release! This update brings enhanced interface reactivity, interactive filtering, and dynamic grouping mechanisms to improve statement importing and dashboard analysis.
- Capability-Driven Status Grouping: The Account Status dashboard now groups checking, savings, credit cards, investments, and retirement accounts under dedicated, capability-toggled section headers.
- Contextual Statement Importing: CSV statement import completion alerts now explicitly detail the target account, and the Uncategorized Review dialog dynamically filters subcategory dropdowns based on the row's selected category.
- Brokerage Ledger Data Exports: Restored the brokerage CSV export functionality, enabling direct backup of options, stock trades, and dividend ledger lists.
- Coordinated Analytics Reactivity: Hooked up flow type and forecast switches to the main analytics engine, forcing immediate chart updates when toggling inflows, outflows, or future projections.
PWA Installability & Persistence Checks (Beta 1.1.0):
Welcome to the Beta 1.1.0 release! This major update brings official Progressive Web App (PWA) capabilities, background network caching, and active environmental storage audits to ensure your transaction records are safe from transient data resets.
- Progressive Web App (PWA) Launch: Linked web manifests and registered offline service worker caching to support standalone screen launching, desktop shortcuts, and full offline accessibility.
- Environmental Storage Auditing: Dynamic startup persistence checker warns users when they run the app under the transient local file (
file://) context or inside Private/Incognito browser windows, where browser storage is routinely wiped. - Android Platform Synchronization: Fully integrated native configuration pipelines, aligning compiled JS web assets with mobile platforms (Capacitor wrapper).
Action Display Toggle & Core Deletion Integrity (Beta 1.0.1):
Welcome to the Beta 1.0.1 update! This release focuses on enhancing the brokerage trade analytics experience and ensuring complete database cleanup integrity. We have resolved critical delete-state gaps in the settings module, introduced action display toggles, shifted pivot views, and polished the dashboard's visual pacing.
- Raw vs. Normalized Action Toggle: Added a user switch directly to the Investments Flow toolbar. This toggle lets users switch between raw transaction actions (e.g. "YOU BOUGHT") and standardized classification tags (e.g. "BUY"). Detailed tooltip fallbacks allow inspection on hover.
- Action-based Coordinated Pivot: Re-engineered the Investments Flow pivot rendering tree. The hierarchical structure now groups stock/options transactions by Action (e.g. BUY, SELL, DIVIDEND) instead of security Symbol under each month, providing a cleaner flow check.
- Danger Zone Eraser Auditing: Wiped out database cleaning bugs. Erase Banking now safely leaves default transactions unseeded; Erase Investments wipes ticker symbol rules, custom action mappings, and re-seeds default actions; Erase All Data carries out a full local factory reset (clearing tax inputs, localStorage variables, capabilities, and API keys).
- Empty State Visual Safety: Implemented gorgeous modern info card panels for Dashboard and Investments Dashboard spending charts when no transactions are recorded in the active account.
Unified Financial Core & Integrated Help System (Beta 1.0.0):
Welcome to the official Beta 1.0.0 release of CashFlow Tracker! This version marks a major milestone, upgrading the application from experimental Alpha modules into a unified, battle-hardened personal finance platform. We have streamlined the codebase, completed comprehensive performance optimizations, and introduced several high-value, user-facing capabilities to deliver a truly premium experience.
- Persistent User Handbook: Added a dedicated help navigation button directly to the app header, opening a gorgeous, responsive, glassmorphic User Guide. The handbook features dynamic markdown rendering, enabling full offline reference capability.
- Strict Offline-First Security: Leveraged standard, sandboxed IndexedDB engines to store transaction records, brokerage ledgers, categorization rules, and configurations entirely on your own local device. Absolute privacy is maintained by design—no cloud storage, tracking, or network leaks.
- Intelligent Statement Importers: Engineered a robust drag-and-drop CSV statement parser with flexible custom column mapping, sign-inversion controls for liability/credit accounts, automated header detection, duplicate transaction guards, and synthetic descriptions for empty broker cells.
- Adaptive Rule-Categorization Model: Built a local pattern-recognition rule cascade that learns from manual edits and trains a fast, keyword-based categorization engine to clean up future imports. Includes rule consolidate utilities and retroactive ledger-categorization refreshes.
- Multi-Level Coordinated Analytics: Designed a suite of high-fidelity charts featuring click-to-drill Category Breakdown doughnut graphs (morphing dynamically into subcategories), bucket-adaptive Spending Trends, and current-cycle pacing projections with projected month-end balances.
- Federal Tax Forecaster: Integrated a detailed filing planner that parses annual salary, YTD taxes paid, and capital gains to project tax liability, effective tax rates, and filing positions using up-to-date tax brackets.
- Generative AI Intelligence Audits: Seamlessly connected Google's Gemini models to compile localized wealth-building pace reports, YoY comparative audits, and customized tax-saving suggestions using only local historical metrics.
- Custom Workspace Personalization: Features modular settings to toggle Banking, Investment tracking, Taxes, and Retirement modules on or off, instantly customizing the global sidebar navigation to your specific financial priorities.