# Client-Facing Dashboards — Scoping Memo

**From:** Loom (Workflow Architect)
**To:** Larry (review) → Jimmie (approve)
**Date:** 2026-05-21
**Status:** Scoping only — no builds kicked off yet

---

## TL;DR

Three tiers, Sheets-via-Coefficient, **one file per client** (not a master with client tabs — privacy non-starter). Slate builds three brand-colored templates + an Apps Script deployer; Cord wires per-tier Coefficient pulls and refresh schedules; Ledger maps the 40 clients to tiers before anything ships. Pilot 1 client per tier for 2 weeks, then roll the remaining 37. Estimated **~25 hrs/month bookkeeper time saved** at full rollout — clears the ROI bar comfortably.

**One blocker question for Jimmie at the bottom — needs to be answered before Ledger starts the tier mapping.**

---

## 1. Tier Matrix

| Tier | Name | Boundary (who lands here) | Approx % of book |
|------|------|---------------------------|------------------|
| **T1** | Essentials | Compliance-only clients. Monthly close, no advisory engagement, no forecasting, fee at the low end. | ~55% (~22 clients) |
| **T2** | Standard | Active AR/AP cycles, sales tax, payroll JE coordination, recurring monthly review calls. | ~30% (~12 clients) |
| **T3** | Advisory | Fractional CFO clients. Forecasting, KPI scorecard, budget vs. actual, monthly review meeting. | ~15% (~6 clients) |

Every tier includes bookkeeping (per the positioning rule — no advisory-only).

*Percentages are placeholder estimates. Ledger confirms the actual split when he maps the 40-client roster.*

---

## 2. Metrics Per Tier

| Metric | T1 Essentials | T2 Standard | T3 Advisory |
|---|---|---|---|
| Cash position (operating + savings) | ✅ | ✅ | ✅ |
| P&L summary (MTD, YTD, vs PY) | ✅ | ✅ | ✅ |
| Balance sheet snapshot | ✅ | ✅ | ✅ |
| AR / AP totals | ✅ | ✅ | ✅ |
| Books-status indicator (last reconciled date) | ✅ | ✅ | ✅ |
| AR aging buckets (0–30 / 31–60 / 61–90 / 90+) | — | ✅ | ✅ |
| AP aging buckets | — | ✅ | ✅ |
| Top 5 expenses MTD/YTD | — | ✅ | ✅ |
| Revenue by customer (top 10) | — | ✅ | ✅ |
| Trailing-12 P&L trend chart | — | ✅ | ✅ |
| Gross margin trend | — | ✅ | ✅ |
| KPI scorecard (GM%, NM%, current ratio, days cash, AR days, AP days) | — | — | ✅ |
| Budget vs. Actual | — | — | ✅ |
| 13-week rolling cash forecast | — | — | ✅ |
| Owner comp tracking | — | — | ✅ |

Opinion, not a menu: keep T1 deliberately thin. The temptation will be to dump more into it "because Coefficient can pull it." Resist. T1 sells the upgrade to T2.

---

## 3. Refresh Cadence

| Tier | Schedule | Rationale |
|------|----------|-----------|
| **T1** | Weekly — Monday 6am CT | Books reconcile monthly; daily refreshes show noise. Monday morning = client sees a clean weekly snapshot. |
| **T2** | Twice-weekly — Mon + Thu 6am CT | AR/AP buckets benefit from mid-week visibility; collections decisions move faster. |
| **T3** | **Mixed:** daily on cash + AR/AP raw totals (6am CT). Weekly Mon refresh on the curated reporting layer. | Advisory clients want live cash; curated metrics only make sense weekly. |

---

## 4. Delivery + Access Model

**One file per client, view-only.** Master-with-tabs is rejected (privacy risk + permissions nightmare across 40 clients).

Per-client file structure:
1. **Cover tab** — J2-branded (green #25a354 header, orange #ffa333 accent, coral #e66c50 callouts), client name, "as of" timestamp, bookkeeper contact line.
2. **Dashboard tab** — single-screen visual summary appropriate to the tier.
3. **Detail tabs** — drillable backing data (P&L, BS, AR aging, etc.) per tier.
4. **Coefficient connection tab** — hidden from client view.

Access:
- Each client gets a unique view-only Google Sheets link emailed at onboarding.
- Sheet lives in a J2-owned Drive folder (`J2 Bookkeeping/Client Dashboards/<ClientName>`).
- Bookkeeper has edit access; client is view-only.

**Template maintenance after launch:** Slate builds an Apps Script deployer (master template → per-client copy with named ranges). When the master changes, the deployer can patch all 40 files. Bookkeepers don't hand-edit per-client files — they edit the master, redeploy. This is the part that keeps the program from rotting in 6 months.

---

## 5. Build Sequence + Dependencies

| # | Owner | Deliverable | Depends on | Est. effort |
|---|-------|-------------|------------|-------------|
| 1 | **Ledger** | 40-client → tier mapping roster (CSV in Team Inbox) | Jimmie answers blocker Q below | 2–3 hrs |
| 2 | **Slate** | Three template files (T1/T2/T3) in J2 brand, with cover + dashboard + detail tabs + named ranges | Pixel sign-off on cover-tab branding (1-day review) | 8–12 hrs per template |
| 3 | **Cord** | Three Coefficient configurations (one per tier) — schedules, ranges, refresh rules | Slate templates must lock cell positions first | 4–6 hrs per tier |
| 4 | **Slate** | Apps Script deployer (master → per-client file with renaming, sharing, folder placement) | Templates locked | 6–8 hrs |
| 5 | **Loom + Jimmie** | Pick 3 pilot clients (1 per tier) — 2-week observation | Ledger roster done | 30 min |
| 6 | **Slate + Cord** | Deploy to 3 pilot clients, observe, iterate | Deployer + Coefficient ready | 1 week elapsed |
| 7 | **Slate** | Deploy to remaining 37 clients | Pilot lessons applied | 1 day |
| 8 | **Echo** | Client-facing rollout email + onboarding language for the new dashboard link | Files deployed | 2 hrs |
| 9 | **Loom** | Bookkeeper training + SOP for template maintenance + exception playbook | Everything else done | 4 hrs |

**Critical path:** Ledger roster → Slate templates → Cord pipeline. Slate and Cord cannot overlap on step 2/3 — cell positions must be locked before Coefficient ranges are wired.

---

## 6. ROI Estimate

| Line | Value |
|------|-------|
| Current state — bookkeeper time assembling monthly reporting packages | ~45 min × 40 clients = **30 hrs/month** |
| Future state — QC + send | ~10 min × 40 clients = **6.5 hrs/month** |
| **Time saved** | **~23.5 hrs/month = ~70 hrs/quarter** |
| At loaded bookkeeper rate of ~$45/hr | **~$1,060/month, ~$12,700/year** |
| Build cost (Slate + Cord + deployer) | ~50 hrs one-time |
| Maintenance | ~2 hrs/month (template tweaks, exception handling) |
| Tool cost | $0 incremental (Coefficient already paid) |

Clears the 10-hrs/quarter threshold by 7x. Greenlight.

Secondary upside not counted above: justifies T3 pricing, reduces "where's my report?" emails, raises perceived service quality.

---

## 7. Constraints Honored

- ✅ Coefficient is the connector (G-Accon purged 2026-05-12, not used).
- ✅ J2 brand colors applied on every client-facing surface.
- ✅ Remote bookkeepers can maintain via master-template + Apps Script deployer (no per-file hand-editing).
- ✅ Memo formatted as tier matrix + sequenced plan, not prose wall.

---

## 8. Blocker — One Question for Jimmie

**Does the dashboard tier match the client's service-fee tier 1:1, or does every client receive the same dashboard tier regardless of what they pay?**

Why this matters: if dashboards are pegged to fee tiers, they become a **sales tool** — T1 clients see the locked T2/T3 metrics greyed out and have a reason to upgrade. If dashboards are uniform, they're a **fulfillment artifact** — simpler to deploy but no upsell lever. Two different builds.

Ledger can't start the tier mapping until this is answered.

---

## Next Action

**Larry — review this memo, then put the one blocker question to Jimmie. On his answer, I'll send the delegation brief to Ledger to start the client-tier mapping.**
