Features

Dashboard & analytics

The Dashboard is the Financial Brain of OpsDash — 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: KPIs, activity feed, 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. Surfaces the most important operational signals in a single view without requiring navigation.

  • Free: Basic KPIs (total revenue, pipeline value, win rate, activity count) + activity feed
  • Sales: Full KPIs (+ expected revenue, team stats, revenue delta) + activity feed (dashboard:kpis-full, dashboard:activity)
  • Studio: Insights card (deterministic rule-based alerts — no model call, no AI Pack; dashboard:insights)

KPI cards

KPIWhat it showsTier
Won RevenueTotal value of deals closed as Won in the selected periodFree
Pipeline ValueTotal value of open deals (not Won or Lost)Free
Win Rate% of closed deals that were WonFree
Activity Trend% change in CRM activity volume (first half vs. second half of period)Free
Expected RevenueSum of (deal value × probability) for open deals — weighted pipelineFree

The dashboard has no date-range picker — the deal-flow KPIs are locked to a rolling last-30-days window (the header shows a “KPIs · last 30 days” caption). Ranged exploration (7D / 30D / 90D / YTD / All / custom) lives on the Reports and Analytics pages. Won-Revenue, Contacts, and Deals show a year-over-year trend arrow when historical data exists.

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. 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 + the advanced-analytics add-on). 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-basic (Free), dashboard:kpis-full (Sales), dashboard:activity (Sales), dashboard:insights (Studio)
Planned (reserved key, no UI)dashboard:ai-copilot — natural-language query bar (Studio + ai-pack)
Migration00034_dashboard_reports_feature_flags.sql (seeds flags)
Dashboard & analytics — OpsDash Docs | OpsDash