From Airtable Ledger to a Live Earnings Dashboard: One Link, the Whole Financial Picture
My own consulting finances used to live in a spreadsheet — every invoice logged, no real understanding of where the year was heading. I built a live dashboard on top of my Airtable invoicing base that turns the same ledger into insight: pace to target, a year-end forecast with scenarios, seasonality, channel mix, and FX impact. It runs as a Claude artifact, shared as a single link — and it's embedded live on this page.
Financial sources of truth
1
One Airtable base produces the invoices and feeds the dashboard. No separate reporting spreadsheet to maintain.
Analytical lenses
5
Pace to target, year-end forecast with scenarios, seasonality, channel mix, and FX impact.
Manual report building
0
Everything recalculates in the browser every time the dashboard opens. Nothing to refresh, export, or reconcile.
The Challenge
This one is my own story. I run a consulting practice with clients across Europe, North America, and APAC — multiple channels, multiple currencies, uneven months. My invoicing already ran through a custom Airtable CRM and invoicing system, so the data itself was clean and complete. The understanding wasn't.
Before the dashboard, the analysis layer was a spreadsheet, and it left the questions that actually matter unanswered:
No sense of pace. Was I ahead of or behind my target for the year? I could not say without an hour of manual work — so mostly, I didn't.
No projections. The spreadsheet described the past. It said nothing about where the year would land, or what a strong or weak second half would do to the total.
Invisible patterns. Seasonality, channel dependence, and the cost of currency movement were all in the data — and all effectively invisible. Decisions ran on gut feel.
The Solution
Instead of another spreadsheet tab, I built a self-contained React dashboard that reads the Airtable invoicing base and turns it into a live read on the year. Built with Claude Code, charted with Recharts, and hosted as a live Claude artifact — one shareable link, no servers, no BI licence.
Five lenses, all recalculating in the browser:
Pace to target — where the year stands against the goal, at a glance.
Year-end forecast — projected full-year earnings with optimistic, expected, and conservative scenarios.
Seasonality — which months earn and which go quiet, so quiet ones can be planned for instead of discovered.
Channel mix — which client sources the revenue actually comes from, and how concentrated that is.
FX impact — what invoicing in multiple currencies does to the totals.
One ledger — the Airtable invoicing base
One link — the live dashboard
Decisions made on numbers, not gut feel
One ledger in Airtable → one live dashboard link → decisions on numbers.
Because the dashboard is a Claude artifact, there was nothing to deploy and nothing to maintain: claude.ai hosts it, the link is the distribution, and the portable React code stays mine to move to any static host whenever I choose. The same delivery model applies when I build one for a client — the code is yours to keep.
The Results
My finances finally have a single source of truth that produces insight, not just data. I know my pace against target every time I open the link. The forecast turns "how is the year going?" from a feeling into a number with scenarios around it. Seasonality means quiet months get planned for in advance; channel mix shows where the practice is concentrated; FX impact is measured instead of suspected.
And the reporting overhead is gone entirely — no report to rebuild, no formulas to babysit, no export to reconcile. The ledger is the report.
Tools & Skills
Data VisualizationAirtableReactRechartsClaude ArtifactClaude CodeAI-Assisted DevelopmentForecasting
Live demo
Explore the dashboard
This is the real thing, running on claude.ai inside this page. Load it and click around — every figure recalculates in your browser.
Why build a dashboard instead of sticking with a spreadsheet?
A spreadsheet stores data; it doesn't answer questions. Mine held every invoice I had ever sent, yet I couldn't say whether I was on pace for the year, which months would be quiet, or how much currency movement was costing me. The dashboard sits on top of the same Airtable invoicing base that produces my invoices — one source of truth — and turns the ledger into answers: pace to target, a year-end forecast with scenarios, seasonality, channel mix, and FX impact, with zero manual report-building.
What does the earnings dashboard actually show?
Five views, all recalculating in the browser: pace to target (where the year stands against the goal), a year-end forecast with optimistic, expected, and conservative scenarios, seasonality (which months earn and which go quiet), channel mix (which client sources the revenue actually comes from), and FX impact (what multi-currency invoicing does to the totals).
What is a Claude artifact, and why host a dashboard as one?
A Claude artifact is a self-contained web application hosted on claude.ai and shared as a single link — no servers to run, no BI licence to pay, nothing to deploy. For a personal or small-team dashboard that's ideal: the full React code remains portable, so the same dashboard can be moved to any static host at any time. There is no lock-in.
Could you build a dashboard like this on my data?
Yes. The same approach works on any structured source — an Airtable base, a spreadsheet, a CRM export — and for any metric set: revenue and forecasting, project profitability, pipeline health, customer metrics. Because the build is AI-assisted, it takes days rather than months, and you own the code outright.