Goodbudget Bank Sync

Users can automatically sync their transaction data, making it easier to manage a budget.

2024

Goal

Streamline user budgeting flow,  minimize churn,  attract a broader customer base

Team

Product Manager
Project Manager
3 Engineers
UX Designer (me!)

Results

Subscriptions  ↑15%
Cancellations   ↓ 4%
Adoption rate      73%

CONTEXT

Envelope budgeting made digital

Since 2009, Goodbudget has been helping people manage their finances using the envelope budgeting method, a digital take on the traditional practice of dividing cash into labeled envelopes for groceries, eating out, or rent. Users rely on the app daily to make informed spending decisions that keep their account balances above zero and build their savings over time.

The magic of Goodbudget comes from its hands-on approach, which mirrors the awareness (and sting!) that comes from spending cash. Instead of just mindlessly swiping a card, users log each purchase manually — like watching the cash leave their wallet with every transaction.

And it really worked. Goodbudget users transitioned from living paycheck to paycheck to building financial stability. Many paid down credit card debt, established monthly cushions, and saved up for meaningful experiences like family vacations.

Evolving with user needs

As users' financial habits matured, however, the manual entry process shifted from empowering to burdensome. To continue supporting users' financial journeys and attract a broader audience, it be came clear that we needed to evolve our approach while maintaining our core principle of mindful spending.

PROBLEM

More than 50% of Goodbudget subscribers who churn cite that they need a bank sync feature to simplify transaction tracking.

Goodbudget users' biggest challenge is keeping up with entering transactions. There are two ways to add transactions in Goodbudget:

1. Manual Entry

Manually adding a transaction involves filling out a number of input fields.

2. Manual Import

 Manually importing transactions requires downloading a file from your bank, uploading it to Goodbudget, and categorizing. (Repeat for each account!)

Users that find the two methods tedious end up falling behind on adding transactions, leading to discrepancies between their Goodbudget data and actual bank balances. Once off track, it becomes nearly impossible to catch up, rendering old data useless.

User Research

User journey to  update budget

After a comprehensive review of customer feedback, including surveys, interviews, and support emails, my key findings were:

Users don’t have time for manual transaction entry or import
“The biggest missing piece is auto import of transactions. The sad reality is that since I have to log into multiple accounts, download transactions, and then import them... I simply do not have time for these tasks on a daily basis.”

Users want to interact with their synced transactions at their convenience
“Having transactions automatically imported and sitting in a queue would allow me to easily log in every day, assign transactions, and stay up-to-date daily. This would be a game changer!”

Users share their budget and need flexibility to review transactions together later
“One of my challenges with manually importing transactions is that I don't always know what each charge is for and need to check with other card holders in my house.”

How might we help budgeters make informed purchase decisions when they don’t have the time to manually enter transactions?

Design
guidelines

Integrated with app. Maintain the same setup flow, information architecture, and consistent design patterns

Intuitive. Ensure tasks are simple and easy to complete

Engaging. Encourage users to interact with their transaction data and use it to make informed financial decisions

Let’s apply those guidelines:

  1. Connecting a bank account should be seamless
    Use existing screens and setup flow to minimize friction.

  2. Categorizing a new transaction should be very easy
    This will be the most common task in the app so should be a level 1 task according to the OECD skills study of Levels of Technology Proficiency. For example, users at this level can reply-to-all to an email.

  3. New transactions must be reviewed
    Increase users’ awareness of their spending by encouraging interaction with their transactions, either through categorizing them or marking them as reviewed.

Key Features

Using the user insight, data, and stakeholder insights gathered during the Discovery phase, we determined key features that would to be added to both Mobile and Web platforms:

  1. Link/Unlink Bank Accounts
    Use Plaid integration as it provides coverage for over 80% of existing customers’ accounts. Start with Checking, Savings, and Liability types as they share the same transaction types (expenses, incomes, transfers)

  2. Confirm synced transactions
    Users review synced transactions assign them into Goodbudget Envelopes to update their budget

  3. Add upsells and education
    Promote the new feature during setup so that users are prompted to link Accounts and start syncing

Prototype

I worked closely with engineers to map out data coming in from our financial aggregator, Plaid, ensuring that my designs would integrate seamlessly into the existing app with minimal refactors.

Initially, users will select an Envelope spending category for the transaction. Over time, Goodbudget will learn to automatically assign transactions to the correct Envelopes. This means users will only need to click the purple 'Confirm' button, reducing the process from filling out a form to just a single click.

Web prototype: Synced transaction confirmation flow

The mobile app opens to the Envelopes Home screen by default, with a notification button at the top to alert users when there are transactions that need to be confirmed.

iOS prototype: Synced transaction confirmation flow

USER TESTING

I conducted 16 user testing sessions with a diverse group of potential and existing Goodbudget users. Half of the participants tested the Web prototype, while the other half tested the iPhone prototype. I guided user testers through various scenarios to validate the proposed setup and transaction confirmation flow.

Examples of some items I hoped to clarify:

  • Terminology (‘Confirm’ vs. ‘Verify’, ‘Merge’ vs. ‘Match’, ‘Categorize’ vs. ‘Select’, ‘Link’ vs. ‘Connect’)

  • Matching transactions flow

Observing and asking questions (and sweating) while a user tester interacts in my prototype live

FINDINGS

I validated that various user types understood how to interact with the new flows with minimal adjustments. Task completion rates were over 85%. (Relief!)

When reviewing the feedback, I found that users fell into two main groups:

  1. Users that would use bank sync only - if they had been manually entering transactions, they would stop as it seemed redundant.

  2. Users that didn’t need bank sync because they were already manually entering transactions and needed to see them post immediately. (It can take a day or two for Plaid to post transactions into Goodbudget.)

PROPOSED CHANGES

Deprioritize the Matching feature knowing that though some existing users may ask for it, over 90% of bank sync users will no longer manually enter transactions. This will save significant development time as matching (and un-matching) transactions had been given a high development estimate given its complexity.

RESULTS

The bank sync feature was released through a new payment tier called Premium, which raised the cost of monthly subscriptions by 25%. Even with the price increase, the new feature set experienced a strong reception:

+15%

Subscriptions

-4%

Cancellations

73%

of new subscribers set up bank sync  within the first 24 hours
Synced transaction data populates all of the necessary input fields, reducing the process of adding a transaction to just one click.

“My transactions sync automatically! No more more saving piles of receipts to manually enter. The Confirm filter view is a game changer—all synced transactions show up there so I can review them. I can categorize the charges that I made and leave the other charges to review with my partner.”

NEXT STEPS

Features to consider next:

  • Matching Account transfers

  • Sync Debt accounts

  • Redesign Add/Edit Accounts page to promote bank sync flow

  • Push notifications when new transactions are synced

I started tracking the sync bank account conversion rates and will use the data along with qualitative customer feedback to prioritize and propose designs to further optimize the user experience.

Look, Ma—no developer! I found a no-code event tracking tool to track button clicks and page views. I created my own funnel analysis on key flows with beta testing data and used it to propose enhancements before the release to production.

LEARNINGs

Friction can be good

While designing the bank sync feature for Goodbudget, the primary goal was to streamline the budgeting process by automating transaction imports. However, I recognized that fully automating every step could unintentionally reduce user engagement with their finances—something crucial to fostering mindful spending habits.

Through usability testing and interviews, I identified that prompting users to manually review and categorize their transactions introduced "good friction." This step encouraged users to reflect on their spending patterns, making the process more intentional. Instead of bypassing this reflection in favor of efficiency, the friction created an opportunity for users to gain insights into their spending behaviors and make informed financial decisions.

This project reinforced the importance of understanding not just what users need to do, but why they’re doing it—and designing interactions that support that intent.