We poured the foundation — and turned on your first live dashboard.
system introduction
Prepared by Ethan TryhubczakAnchorWorks The Briefing Room · 2026
Capture everything, compute every number§ The one idea the whole system is built on.
Capture everything from day one. Compute every number, never type it. Visualize in sequence.
Owner of the truth§ The one idea the whole system is built on.
When two systems disagree on a number, the field's designated owner wins (Stripe owns cash, GoHighLevel owns pipeline). One fact, computed once, shown at every altitude.
The adjustments table — the only place a human writes§ The foundation: a warehouse-shaped database.
Raw logs are machine-only. When a human needs to correct something, they append a dated, reasoned entry to adjustments — and the reports net the raw data against it.
Build once, filter many§ How one database serves all seven departments.
Same data, one formula, many lenses. Build once, filter many.
We poured the foundation — and turned on your first live dashboard.
Today we did two things. We built the database that every future number will live in, shaped so it never needs a rebuild. And on top of it we lit up the Leadership dashboard — reading real numbers straight from that database, nothing typed in by hand. This page teaches you exactly what that means, and how the same foundation quietly serves all seven departments.
Capture everything from day one. Compute every number, never type it. Visualize in sequence.
Most companies bolt tracking on later — and discover the data they needed was never captured, and can't be reconstructed. We do the opposite. From the very first lead and the very first hire, every event is written to an append-only ledger: a record that is only ever added to, never edited. Dashboards don't store numbers — they read the ledger and calculate. Change the underlying data and every number moves on its own. That's the difference between a spreadsheet someone fudges and a system you can trust to sell the company on one day.
02 · Major Accomplishments
What was done.
01Four layers, each with one job.
What was doneData flows top to bottom. We built the middle two today; the outer two get wired as real sources and departments come online.
A · Collection Webhooks · GTM/pixels · pg_cron
Emits events — a page view, a booked call, a Stripe payment. It never stores the truth; it just reports what happened. Wires up as each real source connects.
B · Storage — the truth Supabase (Postgres) · built today
The append-only ledger. One row per event, IDs as keys, immutable. This is the foundation we poured in Phase 0.
C · Reconciliation SQL reporting views · built today
The calculators. SQL views compute every KPI from the raw rows — so a number is never hand-keyed, and a human can only correct data in one audited place.
D · Presentation Live dashboard · Phase 1 spine live
Read-only dashboards per department, reading straight from the views. The Leadership overview is live now; the rest follow in build order.
02The foundation: a warehouse-shaped database.
What was done"Warehouse-shaped" means we built it today the way a $100M company's data warehouse is structured — so it scales up without ever being rebuilt.
1 · Raw tables — the append-only ledger
What was doneThese are the source of truth. Every fact is one row, stamped with a stable ID and a set of dimension tags. Rows are never edited or deleted — corrections go somewhere else (below). That immutability is what lets any future dashboard look back at clean, complete history the moment it's built.
Every fact row also carries tags: department team owner_id client_id source_funnel utm_* — remember these; they're the trick behind serving all seven departments.
2 · Reporting views — the calculators
What was doneA view is a saved SQL query. It holds the formula, not the number. Ask the view for "Company MER" and it computes revenue ÷ marketing spend on the spot from the raw rows. This is why nothing can be faked — there's no cell to overwrite.
We shipped 9 views — company KPIs, the five department north-stars, the revenue curve, team output, plus sales & client-success detail. Each owns its formulas, taken straight from the model you and Chris locked in the prototype.
3 · The adjustments table — the only place a human writes
What was doneRaw logs are machine-only. When a human needs to correct something, they append a dated, reasoned entry to adjustments — and the reports net the raw data against it. You get a permanent audit trail: "what the machine saw" versus "what we corrected," and why. People who read the numbers can never quietly edit them.
06How one database serves all seven departments.
What was doneHere's the part worth internalizing. We do not build a spreadsheet per department or a tab per person — that's the trap that makes systems sprawl and rot. Because every row is tagged, the exact same rows roll up to any altitude just by filtering:
Company → Department → Team → Individual rep
Filter the ledger to department = 'sales' and you have the Sales dashboard. Filter to one owner_id and you have that rep's scorecard. Same data, one formula, many lenses. Build once, filter many. That principle is what makes seven departments (and eventually every individual) cost almost nothing extra to add.
Already feeding Leadership
Five of these seven already report their north-star into the live Leadership dashboard as a color-coded tile. Their full dashboards get built in sequence — but their number is captured and rolling up today.
07The Leadership dashboard, reading real data.
What was doneThis is a screenshot of the running app. Every number on it was computed by the SQL views from the ledger — none of it is typed into the page.
Reading the screen — every element drives a decision
Hero stats + MER gauge
Is acquisition efficient enough to scale? Company MER 4.2× against a 5.0× goal (84% there), blended CAC, EBITDA margin, cash. The gauge fills and the number counts up on load.
The five department tiles
Which department needs attention? Each shows its north-star vs target and an attainment %. You read the whole company's health in one glance.
The colored dots & bars
Green / amber / red is the health language — hit target = green, within 90% = amber, below = red. Right now Client Success is the only amber tile (NRR 103% vs a 105% target).
Revenue vs target
Are we tracking to the month? Cumulative cash against the target line, with today marked. $3.1M against a $2.9M to-date target.
Team output bars
Is output healthy, separate from profit? SDR meetings, closer cash, onboardings, time-to-first-lead — the activity that produces the results above.
Gold, used sparingly
Gold is earned — under ~5% of the screen. It marks only the one number your eye should land on. If everything were gold, nothing would be.
08How we proved it's real, not a mockup.
What was doneA beautiful dashboard with fake numbers is worthless — and it's the trap the plan explicitly warns about. So we tested it the only honest way: we reached into the database and changed one value, then refreshed the page. The tile moved on its own.
We set automation success to 88% in the database → the tile dropped, turned red, attainment fell to 89%. Then we set it back. Nothing on the page knew the number ahead of time — it only knows how to ask. That's the guarantee: when real data flows in, the dashboards are already correct.
09The rules from the repo — and that we kept every one.
What was doneBuild in phase order — never ahead. We built Phase 0 (schema) then the Phase 1 spine only. No jumping to department dashboards the business isn't ready for.
Read live from Supabase — nothing hardcoded. Data is fetched in exactly one file; components render whatever the views return. Proven with the mutation test.
One design source — gold is earned (≤5%). Every color, font and radius comes from the locked tokens.css. No invented values.
Decision-first — no vanity metrics. Every tile answers one of the dashboard's 2–3 decisions. If a number doesn't inform a decision, it's not on the screen.
Warehouse-shaped from day one. Append-only raw tables, IDs as keys, reconciled reporting — so scaling up is a lift-and-shift, not a rebuild.
Secrets in .env, work on a branch → PR. No keys committed. Everything shipped on phase-1-leadership-spine as PR #1 for Chris to review and wire live.
10Day-One Foundation
What was donePhase 0 · done
The Supabase ledger, reporting views, and the tag scheme every department reads from.
11Leadership Overview
What was donePhase 1 · live (spine)
Data flowing, the company's health visible, five departments rolling up. The pipes are proven.
03 · Metrics
By the numbers.
11
tables built for the ledger
9
reporting views (the calculators)
1
live dashboard shipped
0
numbers hardcoded
Target · 3.0–5.0×
MER — Marketing Efficiency Ratio
Target · ≤ $1,000 (ceiling $2k)
Blended CAC
Target · ≥ 6 : 1
LTGP : CAC
Status · 11× — PASS
CFA — Client-Financed Acquisition
Target · ≥ 40
Rule of 40
Target · ≥ 105%
NRR — Net Revenue Retention
Green · ≥ 80
Client Health Score
Target · show ≥75% · close ≥20%
Show & Close rate
Target · ≥ 60%
% at $100k/mo
Target · ≤ 30 days
Time-to-first-lead
04 · Next Priorities
What comes next.
01
Phase 2 · next
Acquisition & Sales
Funnels → strategy session → triage → close. CPL, show/close rates, cost-per-booked-call — the metrics that decide if the business works.
02
Phase 3
Churn Defense
Client Success (health score, NRR) + Program Delivery (% at $100k, time-to-first-lead). Built the moment there are clients to keep.
03
Phase 4
Everything else
Ownership, Operations, and per-rep granularity — each built as the leader who'll use it comes on.
① Chris points the app at the cloud Supabase and swaps the sample data for real ingestion — no app changes, the views are the contract.
② Then your pick: the "chat with your KPIs" AI panel (a stub today), or the Sales dashboard.