Finalyze Docs Home Open app

Getting started

Finalyze is a browser app. There is no install step beyond opening the site - your statements are parsed and stored entirely on your device.

Open Finalyze

  • Online: visit finalyze.cc and click Open app (or go directly to the app).
  • Install as an app: on mobile or desktop, use your browser's Add to Home Screen / Install option - Finalyze ships a web manifest for a standalone icon.

Privacy by default: transactions live in IndexedDB in your browser. No statement file is uploaded. The only server contact is to store your account credentials - never your transactions.

Your first import

  1. Open the app and sign up for a free account (or start the sample tour without one).
  2. Click Import statement in the sidebar, or drag a file onto the page.
  3. Choose your bank export - .pdf, .qfx / .ofx, or .csv.
  4. If you have more than one account, assign the import to an account when prompted.
  5. Review the confirmation toast (format detected, transaction count), then explore Spending overview.

Re-importing the same file is safe: transactions are deduped by id, so you won't get duplicates.

Sample-data tour

No statements yet? From the sign-in screen, choose Take a tour with sample data. You'll get realistic dummy transactions across every dashboard view. When you're ready, clear the data and import your own - the tour does not require an account.

Account & sign-in

A free account is required to import and analyze your own statements. Finalyze uses email + password (and optional Google sign-in when configured). Your email is stored on Supabase; financial data is not.

After sign-up you may need to confirm your email before the first sign-in, depending on how the project owner configured auth. Onboarding asks for country, currency, and goals - these tune labels only, not your transactions.

Import

Supported formats

FormatExtensionsNotes
PDF.pdfStatement PDFs from major issuers; review step lets you fix parsing before import.
OFX / QFX.qfx, .ofx, .qboModern XML and older SGML exports; preferred when your bank offers it.
CSV.csvAuto-detects delimiter, header row, columns, and amount-sign conventions.

Banks & detection

Finalyze auto-detects exports from most major North American banks and cards, including American Express, Chase, RBC, TD, Scotiabank, BMO, CIBC, Discover, Bank of America, Capital One, and more.

For CSV, the reader skips preamble lines above the header, maps Date / Description / Amount (or separate Debit/Credit columns), handles accounting negatives like (12.34), and infers whether negatives mean spend or credits. Headerless CSVs are supported too.

Monthly workflow

Each month, download a fresh export from your bank and import it. New rows append to your history. When you change a merchant's category in the ledger, that choice is remembered for all past and future transactions from that merchant.

Dashboard

Spending overview

The default view shows summary cards: total spend, refunds, net spend, transaction count, averages, and optional custom KPI cards (Pro). Use the date preset (This month, YTD, All time, etc.) or pick a custom range in the header.

Charts & views

Most specialized views live as widgets on the main dashboard (drag/reorder/hide them in Settings → Layout). Deeper analysis pages (Month over month, Compare, Budget vs actual, Year in review) appear under the Analysis heading in the sidebar. (Budget vs actual and Year in review are always listed so you can find them; the others only appear once they have enough data to be useful.)

Sidebar navigation:

  • By category - pie chart; click a slice to filter. Toggle Groups to roll up categories. Download as PNG from the widget header.
  • Merchants - top merchants bar chart; click a bar for drill-down (download trend from the drill-down modal).
  • Trend - spend over time, top merchants, or top categories (adjustable count). Download as PNG from the widget header.
  • Cardmembers - per-person spend when your export includes card members (Pro).
  • Month over month (Analysis page) - monthly totals and biggest category movers (builds as you import more months).
  • Recurring - repeating charges and subscription keyword matches.
  • Anomalies - budget overruns (≥80% of limit), possible duplicates, and large outliers.
  • Patterns - spend by day of week and week of month (two PNG downloads in the widget header).
  • Heatmap - calendar view; click a day to filter.
  • Budget vs actual (Analysis page) - how your categories (or groups) are tracking against the monthly budgets you set. Always listed under Analysis in the sidebar; if no budgets are configured yet it shows a friendly note instead of an empty report, pointing you to Settings → Budgets.
  • Compare (Analysis page) - two arbitrary periods side by side.
  • Year in review (Analysis page) - pick a year for category totals, biggest merchants, most expensive day, subscriptions, and YoY change. Always listed under Analysis in the sidebar; if you have fewer than 12 months of data it shows a friendly note instead of the full retrospective.
  • Uncategorized - queue to assign categories you missed.

Open Finalyze AI from the sidebar for narrative insights and chat (see below).

Transactions

The full ledger supports search, category filter, sorting, and per-row category edits. In Settings → Categories, set whether category changes apply to one transaction, all at that merchant, or ask each time. Bulk apply still recategorizes every selected merchant at once.

Filters & tags

  • Date & amount - header controls apply across charts and totals.
  • Account filter - when you have multiple accounts, filter to one or view all.
  • Tags - mark rows Business and/or Reimbursable. For reimbursable, set % or $ in the inline field (defaults to 100%). Toggle Exclude tagged in the header to remove them from spend totals while keeping them in the table; summary cards use the reimbursable amount you set.
  • Hide $ - sidebar button censors dollar amounts for screenshots or demos.

Settings

Click Settings in the app sidebar. Settings are grouped into Categories, Rules, Budgets, Accounts & data, and Layout.

Categories & groups

  • Add custom categories, recolor any category, and set type (spending, payment, refund).
  • Category groups roll up slices (e.g. Dining + Groceries → Food) for charts and group budgets.
  • Custom KPI cards (Pro) - define cards on the overview from category or merchant rules.
  • Merge merchants - fuzzy suggestions (e.g. AMAZON.CA vs AMAZON CA); merge or dismiss.

Rules & merges

Auto-categorization rules match merchant text with your own regular expressions. Resolution order: merchant override → your rules → built-in keywords → Other. A live tester shows what a merchant name resolves to.

Subscription keyword rules flag recurring merchants even when amounts vary. Auto-merge rules remember merges you approve.

Budgets

Set a monthly limit per category group or ungrouped category. Group limits apply to combined member spend. Overview flags budgets at ≥80% or ≥100% for the current calendar month.

Dashboard layout

The dashboard uses a 12-column grid. Drag widgets by the grip handle in each header, and resize from the edges or corners. Your layout is saved automatically on this device.

To keep things tidy, widths snap to half or full (6 or 12 columns). Chart widgets stay half-width; tables and the ledger can span full width. The spend heatmap calendar stays square inside the widget as you resize. After every drag or resize, widgets pack together with no awkward gaps.

Widgets never scroll internally - content flexes to the cell size. The transactions table paginates (25 rows per page).

In Settings → Layout, show or hide widgets and reorder the list.

Accounts & backups

  • Accounts - name each card or bank; assign imports to an account; filter the dashboard by account.
  • Export backup - full JSON snapshot anytime.
  • Import backup - restore on another browser or machine.
  • Clear data - wipes everything on this device (export first if you care).

Data is stored in IndexedDB. Use the same origin consistently (file:// vs localhost vs finalyze.cc) so history stays in one place.

Finalyze AI

Enable models

AI is opt-in. Open Finalyze AIModelsDownload & enable. Models run in your browser; transactions are never sent to a server.

  • Categorization - small embedding model (~30 MB) improves auto-sorting.
  • Chat - choose Standard (~1 GB) or Enhanced (~2.3 GB, smarter). Only one chat tier loads at a time; categorization can run alongside chat.
  • Insights - works without any model via locally computed observations; AI narrative uses the loaded chat model with a detailed spending summary.

HTTPS required for chat: WebGPU and model caching need a secure context (https:// or localhost). Over plain HTTP on a LAN IP, chat may show "No WebGPU". GitHub Pages and finalyze.cc work out of the box.

Ask your data

Examples: "How much do I spend on coffee?", "What changed from last month?", "List my subscriptions." Answers use only your imported transactions. Use Clear chat to reset the thread.

What AI won't do

The assistant is scoped to spending analysis - totals, categories, merchants, trends, subscriptions, month-over-month. It does not answer affordability, forecasting, investment, or budgeting advice, because Finalyze holds past spend only, not income or balances.

Plans & privacy

Free vs Pro

FreePro
Import formatsPDF, OFX/QFX, CSVSame
HistoryLast 2 monthsUnlimited
Accounts1Unlimited + cardmember breakdown
AI chat & insights-Included
Custom KPI cards & rules-Included
Price$0$7/mo or $70/yr (3-day free trial on annual)

Upgrade from the app or the pricing section on the home page. Your data stays local on every plan.

Referrals

Pro subscribers can refer friends: give a month, get a month. Open the app while signed in to copy your referral link. Referral codes are stored on your profile - not in your transaction data.

Privacy & data

  • On device: transactions, categories, budgets, tags, merges, accounts, and AI model cache.
  • On server: email, auth credentials (encrypted), and license/referral status - never statements.
  • Network: Network calls happen only for sign-in, Pro upgrade checkout, referrals, support tickets, and the one-time AI model download you choose.

Troubleshooting

  • Data disappeared - different URL/origin than before, or browser data cleared. Restore from a JSON backup if you have one.
  • Import failed - try OFX/QFX instead of CSV, or use the PDF review step to fix columns. Check the sample file at sample/activity.qfx.
  • AI won't download - use HTTPS, ensure enough disk space, and a browser with WebGPU (recent Chrome, Edge, or Safari).
  • Free plan date range - only the most recent two months of transactions are kept; upgrade to Pro for full history.
  • Email confirmation - check spam/junk mail.