Features

Dashboard & analytics

The Dashboard is the Financial Brain of Quattora — the module that turns raw CRM and project data into revenue intelligence. It answers the question every agency owner asks: “Is the business healthy right now?”

ModulePurposeTime orientation
DashboardReal-time operational health: Loop health, what needs you, money, insightsPresent — what needs attention today
AnalyticsTrends over time: revenue trajectory, activity volume, YoY comparisonBackward — how you've been flying
ReportsOperational snapshots: pipeline health, project burn-down, forecastingForward — where you're going

Dashboard

The first screen users see after login. It opens with one sentence on what is late (“Clients are late on $5,800 they owe you, and you're late on $920 you owe suppliers”) and a line under it naming who to start with, then shows cards. Every card says which period it covers, in a small chip next to its title.

  • Loop health — last 90 days. A score out of 100 and four cards: Lead, Deal, Project and Profit.
  • Needs you — one list of what needs you now, biggest money at stake first.
  • Money — next 30 days. Owed to you — right now. Coming up — next 60 days. Team activity — the latest actions.
  • Arrange — the button in the header lets each person turn cards on or off and move them up or down. Optional cards: Trends, Numbers at a glance, Insights, Deals at risk, Retainers running hot, Clients gone quiet, Ready to bill, Owed to you by age, Cash flow and payroll, Recent invoices, Proposals awaiting signature, Contracts awaiting signature and Form submissions.

Plan gates are unchanged: dashboard:kpis-full (Sales) for the counters in Numbers at a glance, dashboard:insights (Studio), and dashboard:retainer-burn (Growth). A card your plan does not include is listed in Arrange with a lock and the plan it needs, before you click.

The Loop health score

The score is a mark out of 100: the average of the readings your workspace has data for. Every reading now looks at the same 90 days and is compared with the 90 days before. There are seven readings:

  • New deals added (the new Lead reading): the value of deals created, against what you won
  • Pipeline coverage: your weighted open pipeline against what you won
  • Win rate
  • On-time delivery
  • Billable time (utilization)
  • Days to get paid
  • Days to pay bills

Each card shows the previous value (“Down from 31% in the 90 days before”), coloured by whether the change is good, and a status: Healthy (70 or more), Watch (50 to 69) or At risk (below 50). The “i” on every card says what it measures, the period, what healthy means and where the data comes from. The Profit card shows project margin against your target margin (Settings → General) for owners and admins; a role that sees money but not costs sees “Clients pay in N days” instead. A role without money access does not see the section.

Your score changed. Billable time used to look at 30 days and days to get paid and days to pay bills at 60; they all use 90 days now, and the new Lead reading joins the average. The score will read differently for every workspace on the day this shipped — nothing about your business changed. The “down from” line says “No earlier score yet” until a score recorded 90 days ago exists.

Needs you

One list instead of four. Late money comes first (overdue invoices and overdue bills), biggest and latest first; then other rows with money; then the rest. A row leaves the list when the work behind it is done (invoice paid, bill approved, proposal signed, call logged) — there is no Done or Undo. A row whose reminder you already sent shows “Reminder sent 2 days ago” and sinks to the bottom for three days. For an unsigned proposal or contract, one click on the row sends the client a reminder (once a day per document).

Insights

The Insights card (getInsights) surfaces four types of actionable alerts. These are deterministic rule evaluations over live data — no LLM, no model call, no narrative, no confidence score, and no API key required. It is a normal Studio-plate feature (dashboard:insights) — it renders independently of the AI master switch and is not counted as AI usage.

InsightCriteria
Deals at riskNo activity for 7+ days (open deals only)
Tasks due soonDue date within next 3 days
Overdue tasksDue date is past, status not done
SLA breachsla_due_at is past, status not resolved

Analytics

Route: /org/[slug]/analytics. Two tabs came with the dashboard redesign: Loop (the score over time, every reading now against the 90 days before, and the trends the old KPI cards drew) and Cash (a 30, 60 or 90 day cash forecast that keeps late invoices in view). Always visible on Free with basic overview charts (analytics:basic-charts). The Revenue / Traffic / AR / AP tabs and revenue-trend analysis unlock at Full Loop (analytics:revenue-trends); full year-over-year comparison rides analytics:yoy (Full Loop). Date-range presets (7D / 30D / 90D / 12M / YTD / All + custom) are available on this page.

  • Revenue trend: area chart of won deal values over time vs. previous year
  • Activity volume: bar chart of CRM activity counts per period
  • Win rate trend: deal conversion rate over time
  • Team performance: activity count per team member

Reports

Route: /org/[slug]/reports. Forward-looking snapshots for pipeline analysis and forecasting. Full Loop feature (reports:page).

  • Pipeline by stage: deal count and value per stage with conversion rates
  • Deal conversion funnel: how deals progress through stages
  • Revenue forecast: weighted pipeline projection for the next 90 days
  • Project burn-down: actual hours logged vs. estimated hours per project

Technical reference

ItemDetail
Server actiongetDashboardStats(orgSlug, options?) in actions/dashboard.ts
Server actiongetInsights(orgSlug, locale?) in actions/dashboard.ts
Feature flagsdashboard:page (Free), dashboard:kpis-full (Sales), dashboard:insights (Studio), dashboard:retainer-burn (Growth)
Planned (reserved key, no UI)dashboard:ai-copilot — natural-language query bar (Studio + ai-pack)
Migration00034_dashboard_reports_feature_flags.sql (seeds flags)
Migrations (2026-10-04 redesign)00505 target margin, 00506 loop health on one 90-day period, 00507 daily snapshot columns, 00508 user_dashboard_layouts, 00509 document_signature_reminders, 00510 target margin range check