Overview
Click any number below to jump straight to that data.
Trends
Case volume, reconstructed churn stock, open signals by category, and task mix — from ingested orders and the latest program run.
Loading trends…
What this does
Upload Dental Infinity case data and competitor snapshots, the engine turns them into prioritized signals per dentist/practice (ordering drop-off vs. their own baseline, remake/hold friction vs. network benchmark, complaint severity, competitor exposure), and you can build a segment, draft a campaign, and send it — to real email if you configure SMTP in .env, or as a safe dry run otherwise.
Latest Growth Program (click to open)
Practices & Dentists
Directory of every practice and dentist built from uploaded case data. Click a row for detail — use Back to return with filters kept.
Practices
| Practice | Region | Area | Tags |
|---|
Dentists
| Name | Practice | Stage | Tags |
|---|
Signals
Open, actionable alerts produced by the last weekly program run.
| Priority | Category | Dentist | Practice | Detail | Action |
|---|
Tasks
Every actionable signal becomes a real, assignable, attempt-tracked task.
Task Status Report
| Task | Category | Dentist | Practice | Due | Attempts | Status | Raised |
|---|
Offers & promotions
Flyer-sourced only — prices and hooks match Dental Infinity print assets. Status active/draft; DRY_RUN stays on until SMTP is configured.
CTA contacts (from flyers)
Phone 020 8129 1810 · WhatsApp 07477 352709 · labadmin@dentalinfinitylab.co.uk · dentalinfinitylab.co.uk
Segments
Define who a campaign should reach — by open alert, lifecycle stage, or both.
Create segment
Existing segments
| Name | Created |
|---|
Click a segment's name to preview members, or "Build campaign" to jump to Campaigns with it preselected.
Campaigns
Draft, review, and send a message to a segment.
Build a campaign
Placeholders: {{dentist_name}} {{practice_name}} {{signal_detail}} {{recommended_action}}
Campaigns
| Name | Segment | Status | Sent at |
|---|
Weekly Growth Program
Generate and review the consolidated, prioritized program for a week.
Generate
Runs commitment checks, overdue flags, and the signal engine for the chosen week, then consolidates results per dentist/practice using the selected event template (P0 remake → P1 win-back → P2 churn-report).
Latest program
Admin
Data uploads and the tunable thresholds behind the signal/task engine.
Data uploads
Case data (orders)
DIL case-level export (CSV). Builds/updates practices, dentists and orders.
Competitor snapshots
Practice / lab_name / period / metric / value.
Contact emails (for real sending)
Case exports have no email addresses. Upload a list with Practice Name + Email (and optionally Doctor/User Group) — e.g. an MLC logged-in-users export — to attach send-to addresses to practices/dentists.
Upload history
| Time | Type | Filename | Rows |
|---|
Program configuration
These thresholds drive the signal and task engine — edit and save without a restart. Defaults come from config.js; nothing here is a validated rule, just a tunable starting point.