Customer Health Dashboard V1 — Live Data
Grid View
Practice Detail
Portfolio Health
Portfolio Performance
RCM Performance · click any card to open RCM Trends →
Population Health Performance · click any card to open Pop Health Trends →
All Practices
Clear filters
Data: Connected Not Connected ~est. Hubspot pipeline not yet built — services/pop health use seeded defaults; core metrics from BigQuery live
Products:
Services:
0 practices
Practice Health Profile Advisor PM System State Visits (30d) Est. Revenue NPS Data Products Services
Grid View
Practice Detail
Showing 0 accounts for Joshua
PracticeHealthProfileStateVisits (30d)Show RateEst. RevenueNPSProducts
Alerts
Practices flagged by health score thresholds
Portfolio Trends
Snapshot across all 0 active practices
Clear
Visit Volume — Month over Month
~est. Simulated — pipeline not yet connected
Show:
Est. Revenue — Month over Month
~est. Simulated — pipeline not yet connected
Health Distribution
Current snapshot
Profile Breakdown
Practices by profile tier
NPS Distribution
Score spread across practices
Top At-Risk Accounts
Lowest health scores — needs immediate attention
Adoption Rate
% of practices with each active
Adoption by Profile
% of practices per tier with each active
Top Practices by Est. Revenue
Ranked by past 30-day estimated allowed
PracticeAdvisorProfileVisitsAvg Rev / VisitEst. RevenueHealth
Advisor Workload
Account assignments, coverage, and engagement across all advisors
RCM Trends
Revenue cycle health across RCM customers · 0 practices enrolled
All Practices
Clear
~est. RCM data is partially live. Charges & collections from BigQuery for enrolled practices. AR balance & AR days still estimated — Metabase pipeline pending.
Total Charges vs. Collections
Monthly — all RCM practices
AR Days Distribution
Industry benchmark: <40 days
RCM Practice Detail
All practices on RCM service, sorted by collection rate  ·  = seeded estimate
PracticeAdvisorProfile Total Charges Total Collections Collection Rate Total AR AR Days Health
ZocDoc Trends
New patient bookings, revenue, and ROI across ZocDoc practices · 0 practices enrolled
All Practices
Clear
● Live ZocDoc data is live from BigQuery. Source: dbt_scratch.xpt_metabase__zocdoc_monthly_practice_booking_summary · True new patients (Marketplace) only · Last refreshed May 2026
Portfolio ROI Over Time
Avg ZocDoc ROI across all enrolled practices
New Patients Over Time
Monthly Marketplace new patient bookings (portfolio total)
ROI by Practice
All-time · revenue ÷ ZocDoc spend (true new patients only)
Revenue vs. Cost by Practice
All-time historical revenue vs. total ZocDoc spend
ZocDoc Practice Detail
All-time metrics per practice · sorted by all-time ROI
Practice Advisor Profile New Patients Historical Rev Future Est. Rev ZocDoc Cost All-time ROI Active Since Health
Population Health Trends
ACO enrollment, covered lives, and value-based care programs
All Practices
Clear
~est. Pop Health data is simulated. Real values from HubSpot + Payment Tracker (Gsheet) + BigQuery. Sources: ACO contracts, capitation payments, covered lives, APCM/RPM/CCM claims.
Program Enrollment
Practices enrolled per program
ACO Contract Types
Distribution across contract types
Capitation by Practice
Monthly capitation $ — top earners
Pop Health Practice Detail
All practices with at least one active population health program  ·  ~est All pop health data is seeded
Data Sources
Connected systems and ingestion pipeline status
SourceTypeFields ingestedRefreshStatus
Metabase / RCM DBSQLVisits, est. allowed, show rate, covered livesDaily● Connected
Product DBSQLAnnual/Chronic Recall, Rep Mgmt, Pulse Emails, Coding Bootcamp, Daily Huddle, Provider Util, Pop HealthOn change● Connected
CRM (Airtable)REST APIPractice name, state, EMR, profile, advisorReal-time● Connected
NPS Survey ToolREST APINPS score per practiceMonthly◐ Partial — nulls present
ZendeskREST APIOpen tickets, RCM-tagged, ticket ageNear RT◐ Pipeline needed
QuickBooksREST APIMonthly ARR, contract typeMonthly◐ Pipeline needed
Google CalendarOAuth APIAM meetings, duration, account ID mappingWeekly◐ Pipeline needed
Pop Health SourceTBDACO enrollment, covered lives, capitation $Monthly✕ Not identified
Score Configuration
100-point model — denominator adjusts automatically based on which services a practice uses. RCM and Pop Health points only apply to enrolled practices.
Health Status Thresholds
Score cutoffs for Green / Yellow / Red. Scores are calculated as Points Earned ÷ Applicable Points × 100.
Healthy (score ≥) 70
Monitor (score ≥) 45
Below Monitor threshold = At Risk (red)
1 · Ops Performance
Visit and revenue growth thresholds — defined per profile tier, since a Launcher growing 5% MoM is healthy, while an Optimizer at capacity just needs to hold volume.
Max points:
Scoring mode:
Practices are ranked by visit volume and revenue within their profile tier. Top third earns full points, middle third earns 60%, bottom third earns 15%.
~est. Growth mode requires historical pipeline (30/60/90-day rolling window). Percentile mode is the active proxy until connected.
2 · RCM Health RCM customers only
Points only counted for practices on Duet RCM. Denominator adjusts for non-RCM practices.
Max points:
Avg Days in A/R
● Excellent
Under days
● Good
days
● Needs Attention
Over days
A/R Over 90 Days (% of Total A/R)
● Excellent
Under %
● Good
%
● Needs Attention
Over %
Patient A/R as % of Total A/R
● Excellent
Under %
● Good
%
● Needs Attention
Over %
3 · NPS Score
Practices with no NPS data (or score of 0) are removed from the denominator — no penalty, no points. Practices that do respond earn their tier points plus a participation bonus for the engagement signal. ~40% survey completion rate expected.
Max points:
● Excellent
9.8 – 10.0
pts
● Good
9.5 – 9.7
pts
● Fair
9.0 – 9.4
pts
● Poor
< 9.0
pts
🤝
Participation Bonus
Awarded to any practice that submits an NPS score (any value > 0)
bonus pts — on top of tier score
No Response / Score of 0
NPS removed from denominator entirely. Practice is scored out of remaining applicable points. No penalty, no reward.
4 · Effort / Engagement
Each profile tier has a standard expected monthly AM hours. Hubspot activity (meetings + email time) is measured against that baseline. Practices below baseline score lower.
Max points:
Launcher
Expected hrs / mohrs
≥ 100% of baseline → full points
75–99% → 60% of points
50–74% → 30% of points
< 50% → 0 points
Scale
Expected hrs / mohrs
≥ 100% of baseline → full points
75–99% → 60% of points
50–74% → 30% of points
< 50% → 0 points
Optimize
Expected hrs / mohrs
≥ 100% of baseline → full points
75–99% → 60% of points
50–74% → 30% of points
< 50% → 0 points
~est. Effort scoring requires Hubspot pipeline. Until connected, all practices receive 60% of max effort points as a neutral placeholder.
5 · Product Adoption
Points awarded based on % of applicable products active. Some products are tier-specific.
Max points:
● Full (10 pts)
≥ 80% of products active
● Good (7 pts)
60–79% active
● Fair (4 pts)
40–59% active
● Low (0 pts)
< 40% active
Alert Configuration
Define what triggers an alert and how your team gets notified
Health Score Alert Thresholds
Set the composite percentile cutoffs that determine when a practice enters Alert or Monitor status. These thresholds drive the Alerts page and the red/yellow badges across the dashboard.
At Risk (below threshold) 35th pctl
Monitor (below threshold) 60th pctl
Metric Trip Wires
Individual rules that flag a practice regardless of overall health score. Each rule can be toggled on/off and the threshold value adjusted.
RuleActiveThresholdUnit
Show Rate drops below
Fires when a practice's show rate falls under the threshold
80%
% of appts
Visit volume drops below
Fires when 30-day visit count falls under threshold
100
visits / 30d
NPS drops below
Fires when NPS score falls under threshold
9.3
score
Active products drops below
Fires when fewer than N products are enabled
3 of 7
products
AR Days exceeds RCM only
Fires when average days in AR exceeds industry benchmark
40d
days in AR
Collection rate drops below RCM only
Fires when net collection rate falls under threshold
70%
collection %
Notification Delivery
Choose how and when alerts are delivered. Notifications are scoped by role — AMs receive alerts for their own accounts only, Ops Leaders and above receive all alerts.
Channels
Email
Sends to advisor's email on file
Slack
Posts to configured channel via webhook
In-app only
Dashboard badge + Alerts page only, no external delivery
Frequency
Who gets notified
Assigned Advisor only
Ops Leader (Joshua Stidham)
All team members
Healthy
Health Score
Ops Performance
Product Engagement
Population Health
Explanation