Concept map
The concept of the structure: the objects the product is made of, the screens grouped by what a person is trying to do, the navigation model, and the matrix that proves every job has a home. States and page contents are not here: states live in the flows, page contents in the detail layer.
Source of truth: docs/sitemap.md. Seventeen screens across six clusters, fourteen of them MVP (node 1.6 Sign In joined on 2026-08-10, with the auth model). The scope row under the matrix is the gate for every stage after this one: the detail layer, the wireframes and the colour pass all take the MVP subset first.
Entities
The core objects a person deals with to close their jobs. Screens display entities; entities grow out of jobs, not out of a competitor's menu. Nine core entities, plus objects held under question.
1. Subscription
Name, real merchant name and logo, amount, frequency, next date, category, status, source, linked account. The central object.
J-MAIN, J3
2. Account (source)
Bank connection via Plaid, or a manual private source. Status, last sync, count detected.
J1, J5, D5
3. Preset
Service template (name, logo, typical price, frequency) so manual entry is low effort. 400+ at launch.
J5, D2
4. Alert
Price change and payment failed are free; trial ending, unusual, duplicate are Pro. Plain-language, active voice.
J4
5. Charge
A billing instance: date, amount, subscription, status. Full timeline is Pro history.
J4, D3
6. Cancellation
Method (basic free, full guide Pro), progress status, money saved. The relief moment stays free.
J2, E2
7. Snapshot
Shareable card: count, monthly total, optional win, no bank data. Virality is a hypothesis.?
S1, E2
8. User & data controls
Minimal identity, path, plan, notification preferences, data-access explanation, one-tap deletion.
E3, J1
9. Plan (Tendd Pro)
Tier (Free / Pro monthly / yearly / lifetime), price $7.99 or $69, status. A business rule.
D3, D4
Under question (no entity, no screen): household / shared view JH1, Gmail scan and screenshot import v2, AI assistant JH2, budgets, credit score, investments, bill negotiation (all explicitly cut). A scope note: the free tier is uncapped on both subscription count (per D3) and bank connections (July 2026 product decision), over the older CLAUDE.md "up to 10" and "up to 2 bank accounts" lines.
Screens by intent
Clusters are named by intent, not by section of a site. Each node is a screen and carries the job it serves; the tag after the job is its scope. No states, no page contents, no critique: this stays a readable concept.
flowchart TD
subgraph OB["1 Onboarding"]
W["Welcome / Value Intro
J1 - MVP"] --> PC["Activation Path Choice
J1 + J5 - MVP"]
PC --> CB["Connect Bank
J1 - MVP"]
PC --> AS["Add Subscription
J5 - MVP"]
CB --> GR["Guided Reveal
J-MAIN - MVP"]
AS --> GR
end
subgraph CORE["2 Core"]
HOME["Home / Subscription List
J-MAIN - MVP"] --> DET["Subscription Detail
J3 + J4 - MVP"]
end
subgraph SA["3 Stay Ahead"]
AL["Alerts / Activity
J4 - MVP"]
end
subgraph CC["4 Cut and Celebrate"]
CG["Cancel Guide
J2 - MVP"] --> CW["Cancel Win Moment
E2 - MVP"] --> SH["Share Snapshot
S1 - LATER"]
end
subgraph PR["5 Depth Pro"]
HT["History and Trends
J-MAIN over time - LATER"] --> UP["Upgrade / Tendd Pro
D3 + D4 - LATER"]
end
subgraph AC["6 Account and Trust"]
CON["Connections / Accounts
J1 + J5 - MVP"]
DP["Data and Privacy
E3 - MVP"]
SET["Settings / Profile
E3 - MVP"]
end
GR --> HOME
HOME --> AL
HOME --> AS
DET --> CG
AL --> DET
DET --> HT
HT --> UP
SET --> CON
SET --> DP
CON --> CB
CON --> AS
The concept is expanded into the detail map. This schema stays honest at its own level (screens by intent, no states, no page contents) and is the entry into the structure. The numbered nodes, their states and dialogs, their blocks and transitions live in the detail layer: Sitemap for the cluster tree and Structure for the node by node specification.
Coverage matrix
Functional jobs against screens. A checkmark means the screen genuinely helps close that job; a gate that only unlocks a job does not count. Emotional and social jobs are deliberately absent: they are not closed by a screen, so they get the mechanism table below instead of a stretched checkmark. The scope row under the matrix carries MVP or LATER for every screen.
| Job | Wel | Pth | Bnk | Add | Rev | Hom | Det | Alr | Gde | Win | Shr | His | Upg | Con | Prv | Set |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| J-MAIN see charges calmly | ✓ | ✓ | ✓ | |||||||||||||
| J1 activate without anxiety | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||
| J2 identify and cancel unused | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||||||
| J3 understand a charge | ✓ | ✓ | ✓ | |||||||||||||
| J4 stay ahead of surprises | ✓ | ✓ | ||||||||||||||
| J5 track without sharing bank | ✓ | ✓ | ✓ | |||||||||||||
| SCOPE | MVP | MVP | MVP | MVP | MVP | MVP | MVP | MVP | MVP | MVP | LATER | LATER | LATER | MVP | MVP | MVP |
Outcome: zero orphan jobs, three screens that trace to a decision instead of a job. Every job has a home. Three columns carry no checkmark. Upgrade / Tendd Pro traces to D3 and D4, not to a job, and is retained as a contextual gate over the Pro surfaces. Settings / Profile and Share Snapshot lost theirs when the emotional and social jobs moved to the mechanism table: Settings holds the plan, the notifications and the account controls that E3 and D4 require, and Share Snapshot is kept tagged LATER because the job behind it is still a hypothesis. All three are named here rather than given a stretched checkmark. Key: Wel Welcome, Pth Path Choice, Bnk Connect Bank, Add Add Subscription, Rev Guided Reveal, Hom Home, Det Subscription Detail, Alr Alerts, Gde Cancel Guide, Win Cancel Win, Shr Share Snapshot, His History and Trends, Upg Upgrade, Con Connections, Prv Data and Privacy, Set Settings.
Emotional and social jobs: what supports them
Not screens, mechanisms. Two stages read this table by name: the detail layer takes the emotional support line of a node card from it, and Voice takes it as the order for tone.
| Job | Mechanism (not a screen) | Where it lives | What backs it |
|---|---|---|---|
| E1 feel competent, not judged | Money is framed as what you signed up for, never as spending or waste; no score, no red, no advice; the biggest thing on screen is one number the person can act on | Guided Reveal, Home summary strip, Cancel Win, and the voice rules of every state | personas.md O7; the PMC finding that avoidance is triggered by a threat to a positive self-image; design principle 3 |
| E2 the small win | The saved amount is stated as a specific number with a next step, then the product stops talking; the moment gets its own screen rather than a toast | Cancel Win Moment; the savings line in the Home save-focus state | jtbd.md E2, the Claudia quote; competitors.md gap G4 |
| E3 feel safe, control data | Read-only is stated in the same breath as the bank request; the source of every figure is shown; disconnect and delete are one tap, not buried | Connect Bank trust line, Connections / Accounts, Data and Privacy, Settings | personas.md Ravi; benchmark.md (Apple Card); D5; design principle 4 |
| S1 share the discovery | A snapshot card carrying the count and the total and no bank data, so sharing never leaks a statement | Share Snapshot, entered from Cancel Win | jtbd.md S1, marked ?: the virality is a hypothesis, which is why the screen is LATER |