Held-Away Account Detection With Plaid + Claude — The Build
Most wealth firms don't know what their clients hold elsewhere. Plaid-connected accounts plus AI pattern recognition can surface rollover opportunities before clients ask. Here's the build.
RIAs lose rollover business they could have won because they don't know what the client holds elsewhere. The held-away 401(k) doesn't move until something triggers it. The firm that sees the trigger first wins the rollover.
Plaid plus Claude is the system that surfaces the triggers in time.
What Plaid can do here
Plaid's Investments product gives you read access to a client's investment accounts at thousands of institutions. Holdings, transactions, balances. Updated automatically.
You don't get trade execution. You don't get write access. You get visibility.
That visibility is the missing piece for most firms. Without it, you're asking the client to fill out a form every quarter that they ignore.
What to detect
The four triggers worth detecting:
1. **Job change signals.** A held-away 401(k) at Fidelity for Acme Corp suddenly stops getting contributions. Plaid sees contribution patterns. When they stop, the client likely left Acme.
2. **Inheritance signals.** A new beneficiary IRA appears in the client's connected accounts. Plaid surfaces the new account.
3. **Large deposit signals.** A jump in a connected savings account beyond normal patterns. Could be a bonus, a property sale, an inheritance.
4. **Asset drift signals.** A held-away account's allocation drifts significantly from where it was. Time for a conversation.
The build
Layer 1: Plaid Link integration. Standard onboarding. Each client connects their held-away accounts. Re-prompt annually to add new accounts.
Layer 2: Webhook ingestion. Plaid fires webhooks on transactions and holding changes. Your system stores these in Postgres (Supabase works well).
Layer 3: Pattern detection. A scheduled job (Inngest cron) runs daily across all clients: - For each held-away employer plan, check whether contributions have stopped (no contribution in last 30 days when prior 6 months had monthly contributions). - For each connected account, check for new accounts that appeared in the last 14 days. - For each connected savings/checking, check for unusual deposit patterns (Z-score > 2.5 against rolling 90-day average). - For each held-away account, check whether the allocation has drifted >10% from last quarter.
Layer 4: Claude prioritization. Raw signals go to Claude with the client's relationship context:
``` Client: {name}, age {age}, total AUM with us: {amount}. Recent signal: {signal_description} Last advisor conversation: {summary, last_date}
Score this signal: - Likelihood of an actionable opportunity (0-10) - Suggested action for the advisor - Why this is worth a touch (one sentence) - Best framing for the outreach ```
Only signals scored 7+ get surfaced to the advisor.
Layer 5: Advisor notification. A Slack message or a daily digest email. Each signal includes the client name, the trigger, the suggested action, and a draft outreach.
What it caught at one firm
In 90 days at a 4-advisor practice with about $480M AUM:
- -14 job-change signals → 8 became conversations → 4 became rollover decisions in our favor (~$680k captured)
- -6 inheritance signals → 4 became conversations → 2 became new managed assets (~$320k)
- -22 large-deposit signals → 12 became conversations → 5 became increased contributions to existing plans
- -9 drift signals → all became conversations → 2 became re-engagement after months of silence
The advisors said the system caught things they would have missed. The math says they recovered or grew about $1M of AUM directly attributable to system-flagged conversations.
What broke
Initial false positive rate was too high. First version of the contribution-stop detector flagged plan terminations that were actually December year-end timing. We added a check: only flag if no contribution in 45+ days AND the prior pattern showed at least 4 monthly contributions in a row.
Plaid's connection breakage. Plaid connections expire. Re-auth flows have to be in the client portal. Without ongoing re-auth, your data goes stale.
Compliance review caught one issue. The first version of the outreach drafts said "we noticed your contributions stopped." Compliance flagged that this revealed the firm was monitoring activity in a way the client hadn't explicitly authorized in a clear way. We rewrote: "It's been a few months since we caught up — wanted to make sure your plan is still working for you." Generic enough to not feel surveilled.
What this isn't
Not a robo-advisor. Not auto-trading. Not auto-rolling-over.
Just: better awareness, faster outreach, more conversations at the right time.
What to build first
If you're a wealth firm:
One, Plaid Investments integration with a clean client opt-in flow. The opt-in is the harder cultural piece than the technical piece.
Two, the simplest job-change detector. It catches the highest-dollar opportunity (rollover). Build this before anything else.
Three, the advisor notification path. Don't build the dashboard first. Build the Slack message first.
Time investment: about 4 weeks of dev work plus 2 weeks of compliance review and re-auth flow polish. Payback in the first quarter of operation if the firm has any clients with significant held-away assets.
Want the full guide? Check out our deep-dive page for more context, FAQs, and resources.
read the full guide