Inspiration
Most small businesses don't fail because of bad ideas — they fail because they never saw the cash-out coming. Existing accounting tools like QuickBooks tell you what happened. Nobody tells you what's about to happen. We built RunwayIQ to be the CFO that most SMEs can't afford — one that reads your financials, quantifies your survival probability, and tells you exactly what to do before it's too late.
What it does
RunwayIQ transforms raw transaction data into financial intelligence in seconds. Upload a CSV of your transactions and get:
- Runway calculation — exactly how many months until cash runs out
- Risk score (0–100) — composite score built from burn rate, gross margin, revenue volatility, and runway thresholds
- 3-month forecast — linear trend projection with confidence bands and
a
cashOutRiskflag per month - 3-agent AI pipeline — Agent 1 diagnoses your top financial problems with severity ratings, Agent 2 retrieves grounded solutions from a financial knowledge base using RAG, Agent 3 synthesizes everything into a plain-English CFO report with 3 prioritized actions
- What-if simulator — adjust OPEX cuts, revenue targets, and one-time cash injections to see how each scenario changes your runway and risk score in real time
- CFO chat — ask anything about your finances and get answers grounded in your actual numbers, not generic advice
How we built it
Backend — Node.js + Express + Supabase (PostgreSQL) + Prisma ORM. We built a full financial engine from scratch: monthly snapshot computation, MoM delta calculation, linear regression forecasting with confidence bands, and a rule-based risk scoring engine. All protected with Supabase JWT auth, helmet security headers, Zod input validation, and rate limiting (5 req/hr on AI endpoints).
AI layer — Three sequential Claude API calls using
claude-sonnet-4-20250514. Agent 1 outputs structured JSON (problems +
severity + retrieval tags). Agent 2 uses those tags to retrieve relevant
chunks from our 8-chunk financial knowledge base (RAG without a vector DB
— pure tag-intersection scoring), then generates grounded solutions with
quantified impact estimates. Agent 3 writes the final CFO report. Total
pipeline: ~4 seconds. Agent timings are returned to the frontend so the
reasoning chain is visually transparent.
Frontend — React + Vite + Tailwind CSS + Recharts. Six screens: Dashboard, Forecast, What-if Simulator, CFO Chat, Transactions, Settings. The dashboard shows KPI cards with sparklines, a revenue vs burn chart with AI-detected anomaly pins, the agent reasoning chain cards, and the RAG-grounded report — all in one view.
Challenges we faced
The RAG without a vector DB problem — we needed knowledge retrieval but had no time to set up embeddings or Pinecone. We solved it with tag-intersection scoring: Agent 1 outputs semantic tags, and the knowledge base chunks are pre-tagged by topic. Fast, deterministic, and explainable — judges can actually see which chunks were retrieved.
Making AI feel grounded, not generic — the biggest risk with a Claude-powered CFO is it gives advice that sounds smart but ignores your actual numbers. We solved this by injecting the full financial snapshot (runway, burn, margin, risk score, forecast) into every agent call and the chat context. Every response references specific dollar amounts.
The agentic chain timing — three sequential Claude calls averaging
4-5 seconds total. We return agentTimings in the response so the
frontend can animate the chain bar in real time, turning latency into a
feature that shows the AI "thinking."
Financial formula correctness — burn rate as a 3-month rolling average, volatility as StdDev/Mean, runway as cash-on-hand divided by burn — all amounts stored in cents to avoid floating-point errors. Getting these right mattered because the whole risk score depends on them.
What we learned
- RAG doesn't require a vector database at small scale — semantic tagging is fast, auditable, and good enough for a focused domain
- The agentic chain approach produces dramatically better output than a single prompt — each agent specializes and the final report reflects it
- Financial data is unforgiving — one wrong formula cascades through every metric, so we tested each service in isolation before wiring them together
- Showing AI reasoning (the agent cards, KB chunks used, timings) builds more trust than hiding it
What's next
- Replace linear forecasting with ARIMA/Prophet via a Python FastAPI service
- Add Monte Carlo survival simulation (10,000 runs) for true insolvency probability
- Real bank integration via Plaid or Flinks for automatic transaction sync
- Multi-agent orchestration with BullMQ for async processing
- Anomaly detection agent that flags unusual transactions automatically ```
Built With
- anthropic-sdk
- axios
- claude-api-(anthropic)
- csv-parse
- express.js
- helmet
- multer
- node.js
- postgresql
- prisma
- react
- recharts
- supabase
- tailwind-css
- vite
- zod


Log in or sign up for Devpost to join the conversation.