AI Systems Built
AI Money Coach
Turns bank transactions into one clear, personalized next step. Delivered in the channel the user actually sees.
Scope: spending + saving + subscriptions
Stack: Make.com + OpenAI + Google Sheets
Status: prototype
Problem & Solution
Output preview first, then problem and solution side by side.
Output preview
Live nudge preview
What you are seeing: the same nudge rendered across common delivery channels.




Problem and solution
From ledger to action
Most finance apps show numbers. This system turns patterns into a single next step with a clear action.
Problem
Alerts exist, outcomes do not
Users get noisy notifications and late insights. The app becomes a ledger, not a coach.
Low signalLate timingNo next step
- Notification fatigueFrequent pings that do not match intent get ignored.
- Patterns are buriedUsers cannot see what is changing until it is costly.
- No single decisionDashboards show many options, so nothing happens.
Result: overspend repeats, savings is inconsistent, subscriptions creep.
Solution
One best action, delivered well
Categorize transactions, detect drift, choose the highest impact nudge, then format it for the right channel.
PersonalizedSingle actionChannel aware
- Categorize and baselineMaps merchants and learns weekly patterns.
- Detect drift earlySpots overspend spikes, buffer risk, and repeat waste.
- Choose one next stepTurns insight into a single button or reply.
Result: higher action rate and measurable savings moved.
System design
From data to one decision to delivery
One pipeline. One best next step. Rendered in the channel the user actually sees.

1. Inputs
Transactions and user rules
Consumes
Produces
Pull raw transactions plus a few user settings. Keep it boring and reliable. If inputs are messy, every downstream step becomes guesswork.
Example input snapshot
- Transaction: Uber Eats, $38.90, Tue 8:12pm
- Budget: Dining out $450 per month
- Rule: If overspend is trending, suggest one concrete pause
Outputs from this stage
- Normalized transactions
- User preferences and budgets
- Simple rules and constraints
Coach moment
Garbage in, garbage out. This step is about clean inputs so everything else stays explainable.
Auto rotates. Hover pauses. Use arrows to step through.
Run playback
A single run, broken into steps, with a visual for each transition.
1Inputs
Sheet payload arrives
A batch of transactions and user preferences enter the scenario. The point is consistency: same inputs go to every model run.
- User context: goals, quiet hours, nudge frequency
- Transactions: amount, direction, category, posted_at, balance_after
- Window end date fixed so each model computes the same metrics
Input rows (sample)
2026-01-22 • Woolworths • debit $152 2026-01-21 • Anytime Fitness • debit $79 2026-01-19 • Uber • debit $24 2026-01-18 • Coles • debit $164 …
Run id
usr_1-2026-01-22T06:14:51.458Z
Model comparison
Model comparison on identical inputs
How recommendation quality changes across models
Channel payloads
Same recommendation, formatted for each channel.
emailModel: GPT-5.2
SubjectRohan, quick 48-hour essentials-only reset
Hi Rohan,
Your cash buffer is currently about 1.8 days (balance $230). A short essentials-only reset for 48 hours can help you avoid a squeeze and rebuild breathing room.
Try this:
1) Essentials only for 48 hours.
2) Set a daily cap of $80 until your balance is back above $500.
3) Move $50 today into a separate Buffer bucket/account.
Not financial advice.
smsModel: GPT-5.2
Your buffer is about 1.8 days (balance $230). Try a 48h essentials-only reset plus a $80/day cap. If you can, move $50 to a Buffer today. Not financial advice.
whatsappModel: GPT-5.2
Rohan, your buffer is about 1.8 days (balance $230). Next 48h: essentials only. Then $80/day cap until balance above $500. If possible, move $50 to a Buffer today. Not financial advice.
inappModel: GPT-5.2
Title48-hour essentials-only reset
Essentials-only for 48 hours. Then $80/day cap until balance is above $500. Move $50 to Buffer today if you can. Not financial advice.
Roadmap and metrics
What ships now and what improves next
Four stages with scope discipline and measurable success.
MVPValidate
MVP: prove the loop
Goal
One action should change weekly spending behavior.
Single account3 to 5 categoriesOne action per run
MVP scope
Build and validate before expanding.
What exists
- Ingest, normalize, categorize
- Weekly baseline and drift flags
- Rules and guardrails pick one action
- Send via one channel with one CTA
What it takes
- Build: 4 to 5 weeks
- Team: 1 engineer + 1 designer (lean)
- Run cost: low hundreds per month
- Goal: validate impact before scaling
MVP metrics
Delivery, actions, outcomes, and trust.
Delivery
98%+
Messages delivered successfully
Time to send
< 2 min
From drift detected to message delivered
Action rate
8 to 15%
Tap, click, or reply on the suggested action
Ignore rate
< 55%
If higher, signal is too noisy or too frequent
False positives
< 20%
Spot checks show nudges are relevant
Early impact
7 to 14 days
Repeat overspend events reduce in targeted categories
Auto rotates. Hover pauses. Click bars to jump.