Context
To do a customer’s books, QuickBooks first has to connect to their financial institutions — banks, credit cards, investment accounts — and pull the data in. That starts with one tap on “Link Account,” which opens a searchable directory of the 20,000+ institutions we support.
That directory is the front door to the entire product. And when I arrived, it was in shambles:
- More than half of user sessions landed on a provider with no logo.
- Years of bank mergers and acquisitions had left the directory full of duplicates — two entries for what was now one institution — because upkeep had been neglected.
- There was no naming convention, so the same bank could appear three different ways.
The result was a confusing, untrustworthy experience — and connection success often dipped below 50%. Every failed connection is a customer who can’t reconcile transactions or pull income history for a loan.
Defining success
Before fixing anything, I defined how we’d measure “good.” A raw count of broken entries is misleading — a missing logo on a bank that 100,000 users select is not the same as one on a bank that one user selects.
So I built a traffic-weighted directory-accuracy metric: an entry’s weight scaled with the sessions that actually hit it. “Accurate” meant a correct logo, correct name, and no duplicates. I tracked it week over week with leadership and the team, which kept the effort honest and focused on the entries that moved the customer experience.
The approach
I led the product strategy and roadmap end-to-end, and drove a fix built on AI and automation rather than manual cleanup that would never scale:
- An in-house AI tool I defined and oversaw that scanned our directory and our third-party integration sites to scrape correct logos and names.
- A branding-API partnership — I negotiated the agreement with an external branding provider and coordinated procurement and legal to get it signed, a second high-quality source for logos and metadata.
- An automation layer that detected duplicates and wrong names and applied fixes in two modes: a human-in-the-loop path where an SME approved changes, and a fully automatic path where high-confidence fixes went straight to production.
- SME collaboration to codify the decision logic — which of two merged providers to keep versus deactivate, and the naming conventions that made the directory consistent.
Results
Within a few months, the directory went from a liability to an asset:
- >95% traffic-weighted accuracy — meaning 95%+ of sessions through the “Link Account” funnel saw accurate providers: correct logos, correct names, no duplicates.
- Connection success climbed from ~50% to over 70% over the same period.
- A repeatable, mostly-automated system that keeps the directory accurate as banks keep merging and rebranding — instead of decaying again.
What I learned
The unglamorous work — a “directory cleanup” — was one of the highest-leverage things we could do, because it sat on the critical path to every customer connection. The keys were measuring what mattered (traffic-weighted, not raw counts) and refusing to solve it manually: AI to source the truth, automation to apply it at scale, and a human only where confidence was low.
