← Back to case study
BFF · Budget-Friendly Finances

Design Decisions & Rationale

A record of the key product and interaction decisions behind BFF and the reasoning behind each one. Every entry states the decision, why I made it, and the benefit to the user.

Launch the live app ↗

1

Manual entry & statement upload instead of automatic bank linking

Decision

Users add transactions by hand or upload a downloaded bank statement (CSV/OFX/QFX), rather than connecting BFF directly to a live bank account via an aggregator.

Why I chose it

Automatic bank feeds make money invisible, the app tracks spending for you, so you never actually look at it. Requiring a small, deliberate act keeps the user in contact with their own money and builds the habit of noticing it. It also avoids asking a first-time budgeter to hand over bank credentials to a third party before they trust the product.

User benefit

Users feel ownership and accountability over their finances, stay aware of where money actually goes, and never have to share sensitive banking logins to get started.

2

Every number is computed live from the user’s own transactions

Decision

Balance, weekly in/out, budget usage, and every chart are calculated from the transactions the user logs, nothing on the dashboard is hand-typed or placeholder.

Why I chose it

A budgeting tool only earns trust if the numbers are real. Tying every figure back to a transaction the user entered themselves creates a clear cause and effect: log a coffee, watch “Food this week” move. That kind of immediate feedback helps the habit stick.

User benefit

The dashboard is always honest and personal, users can trust it and can see exactly why a number changed.

3

A weekly view instead of a monthly one

Decision

The home dashboard is framed around “This week”, weekly income, spending, and budget pacing, rather than the monthly cycle most finance apps default to.

Why I chose it

A month is too long a feedback loop for someone learning to budget; by the time the statement lands, the money is already spent. A week is short enough to course-correct and small enough not to feel overwhelming, and it maps to how students and young adults actually experience money.

User benefit

Users get frequent, low-pressure feedback and can adjust their spending before the week gets away from them.

4

Plain-language categories you can make your own

Decision

The default categories are Food, Transport, Fun, School, Rent, and Other, plain-language labels that fit a student or young adult’s life instead of an accountant’s chart of accounts. They’re only a starting point, though: users can rename or remove them and create their own, each with its own icon sticker and color, so budgeting feels a little creative while staying clear and quick to log.

Why I chose it

Category labels are the vocabulary the user thinks in every time they log a purchase. Sensible, plain-language defaults remove the blank-slate burden of setup. And letting people customize the labels, icons, and colors lets them shape the app around their own life, so categorizing feels personal instead of like corporate data entry.

User benefit

Logging is faster and lower-effort, the categories feel relevant, and personalizing them gives users a sense of ownership that keeps them coming back.

5

An editable preview before any imported data is saved

Decision

Uploaded statements are auto-categorized, then shown in a preview the user can correct (fix a category, drop a row) before anything is committed to their history.

Why I chose it

Auto-categorization is helpful but never perfect. Letting the automation do the heavy lifting while the person stays the final approver keeps wrong data from quietly polluting their numbers, and keeps them in control of their own record.

User benefit

Users get the speed of automation without losing trust or control, and mistakes are caught before they matter.

6

Category budgets that track and alert automatically

Decision

A budget is set on a category (e.g. cap Food per week); “spent so far” is then summed automatically from matching transactions, and BFF alerts the user as they approach the cap.

Why I chose it

The point of a budget is to warn you before you overspend, not to make you do the math. Keying budgets to categories the user already logs means the tracking is basically free: set it once and the app watches it for you.

User benefit

Users get a set-and-forget guardrail that does the monitoring work for them.

7

A private, judgment-free journal alongside the numbers

Decision

BFF includes a journal, clearly labeled “Private and confidential, only you can see this,” sitting next to the financial data.

Why I chose it

Money is emotional, and spending decisions are driven by feelings the numbers alone don’t capture. Giving users a private place to reflect treats real behavior change as the goal, not just data tracking, and the explicit privacy promise makes it safe to be honest.

User benefit

Users can process the “why” behind their spending in a space that feels safe and personal.

8

AI Coach ships locked as a clear premium upgrade

Decision

The full budgeting product, logging, budgets, goals, journal, dashboard, is free and complete; the AI Coach ships behind an upgrade screen as a future paid add-on.

Why I chose it

Nothing essential is paywalled, so a new user gets a genuinely useful product on day one and the value is proven before any ask for money. The Coach then acts as a clear, honest step up rather than a gate on the basics.

User benefit

Users get real value for free and can see exactly what a paid tier would add before deciding.

9

Built-in accessibility controls

Decision

The Profile page offers larger text (bumps the base to 18px), high contrast (stronger borders and text), and reduce motion (minimizes animation).

Why I chose it

A finance tool people rely on has to work for all users. Building these controls in, rather than assuming the browser will handle it, makes BFF more comfortable for everyone.

User benefit

Anyone can tune the interface to their own needs and situation, not just users with a disability, so BFF stays comfortable to use in any context.

10

A warm, non-shaming brand and tone

Decision

The product is “BFF, Budget-Friendly Finances”: a friendly-best-friend framing, gentle nudges, and encouraging copy rather than red-alert, guilt-driven messaging.

Why I chose it

Shame is the main reason people avoid looking at their money, and an app that makes them feel bad gets deleted. A supportive, approachable voice lowers the anxiety around personal finance, so users actually keep coming back and give the habit a chance to form.

User benefit

Users feel supported rather than judged, which keeps them engaged instead of avoidant.

11

The core action, logging, is always one tap away

Decision

An “Add transaction” action is persistently available, a quick-add on the dashboard and a global add button in the navigation, on every page.

Why I chose it

The single biggest failure mode of budgeting apps is that people stop logging. Making the core action frictionless and reachable from anywhere protects the one habit the entire product depends on.

User benefit

Users can capture a spend in the moment, before they forget, from wherever they are in the app.

12

A responsive foundation that syncs and adapts to any device or platform

Decision

BFF is built as a responsive web app, with each account’s data synced to the cloud so it stays the same on laptop and phone (with a fast local cache for offline responsiveness), a structure designed to adapt to any screen or platform, and now extended into a native iOS app live on the Apple App Store.

Why I chose it

A responsive, cloud-synced foundation adapts to any device instead of being locked to a single platform, and it works instantly with no app-store install standing between a first-time user and the product. Just as importantly, it set up a clean path forward: because the experience and data already scaled across screen sizes and synced in the cloud, extending BFF into a native mobile app built on the same foundation rather than starting over, which is exactly how it shipped to the App Store. Money is something people check in fragments across their day, so it should follow them wherever they are.

User benefit

Users get a consistent, continuous money picture on any device, on the web today and as a native iOS app on the App Store, with the same account and data carrying seamlessly across both.

Launch the live app ↗ Back to the case study