Analytics & BI · Sales performance

Are your managers actually working their leads? Now you can prove it.

Management couldn't tell which teams really worked their leads and which let them go cold — the CRM's activity counts looked busy either way. I built a lead-work-density & temperature engine, per team and per manager, that counts only real effort, tracks whether every lead is warming or cooling, and shows exactly where follow-up breaks down.

RoleSole Data Engineer
IndustryAutomotive retail
ScopePer team · per manager · per lead
StackPySpark · PostgreSQL
46kleads scored for real effort & temperature
6temperature states, recomputed daily
‹X›%more leads actively worked (add real)

The problem

Effort you couldn't see — or trust

The CRM showed "activities", but it counted cancelled tasks and five-second missed calls. So a team that barely touched its leads looked just as busy as one that worked them hard — while leads quietly went cold and nobody noticed until the deal was lost.

First, count only real work

Numbers that reflect effort, not CRM noise

Completed activities only

Only finished actions of the right categories count. Cancelled and rejected tasks are dropped.

Real calls only

Only outbound client calls with over 30 seconds of conversation. Missed and short calls don't pad the score.

Clean leads only

Incorrect and technical leads are flagged out, so a team's numbers aren't inflated by junk records.

What I built

From CRM events to a per-manager scorecard

Leads, activities, calls, visits and test drives are cleaned into real-effort facts per lead. A temperature engine then snapshots every lead every day, normalizes its funnel stage to a 0–1 scale, and compares it to where it was a week ago — labelling it warming or cooling.

Everything rolls up into a scorecard per team and per manager: how hard they work each lead, how fast they follow up, and whether their leads are heating or cooling.

Sources — leads · activities · calls · visits · test drives
1–6
Real-effort factsOnly completed activities & calls > 30s · clean leads
7
Lead temperatureDaily stage 0–1, compared with 7 days ago → warming / cooling
8
Team & manager scorecardDensity · cadence · temperature · bad-lead %
Power BI performance dashboardEvery team and manager, measured

Lead temperature

Is each lead getting closer to a deal — or slipping away?

Every day, each lead's funnel stage is scored 0–1 (negative for "interest lost") and compared with a week earlier. That single comparison sorts every lead into one of six temperature states — and the 7-day dynamics tells you whether the whole base is heating or cooling.

Delivery Warming No change New New / cold Cooling

The result

One scorecard — who works leads, who lets them cool

Every team on one screen: how densely they work each lead, how fast they follow up, and whether their leads are warming or cooling. The laggards stop hiding behind padded activity.

TeamLeadsDensityActs/dayFollow-up gapTemp7-day trendBad leads
Team North9,544 2.270.0414.3d15.4%↓ −28.1%0.16%
Used Cars19,517 1.740.0810.3d10.3%↓ −26.2%1.68%
Team Central3,734 2.250.0713.5d11.3%↓ −35.6%2.92%
Team East3,643 3.450.137.8d11.6%↓ −28.8%1.56%
Team South2,296 5.570.195.8d6.5%↓ −26.2%0.65%
Team West1,518 5.050.147.1d7.0%↓ −27.5%0.40%
Team Premium2,562 3.900.1013.2d2.5%↓ −23.2%0.16%
Team Flex216 0.820.0225.8d60.6%↑ +12.4%0.74%
Total46,3322.470.0811.0d11.4%↓ −28.3%0.74%
Top managers — high density, leads warming
1O. F.fast follow-up6.1 · ↑
2Y. C.fast follow-up5.4 · ↑
3P. A.steady4.9 · →
Coasting — low density, leads cooling
1V. K.leads neglected0.6 · ↓
2I. H.slow follow-up0.8 · ↓
3P. K.slow follow-up1.0 · ↓

The point

Spot the team that's coasting — before the leads are gone

Four hard-to-game signals combine into one objective effectiveness read per team and per manager. No more arguing about who "works hard" — the numbers say it.

  The numbers caught it

  • Used Cars & Team Central — low density and the fastest-cooling leads (−26% to −36%): leads were being neglected, not worked.
  • Team South & West — density above 5 with the tightest follow-up gaps: the teams actually doing the work.

The outcome

From padded activity to provable performance

Before

  • Activity counts padded with noise
  • Leads cooled unseen until lost
  • No objective measure of effort
  • No way to hold a team accountable

After

  • Real-effort density per team & manager
  • Cooling leads flagged daily, in time to act
  • An objective, hard-to-game effectiveness read
  • Follow-up enforced — more leads actually worked

Quantified results (more leads worked, conversion lift, faster follow-up) — add real numbers.

Built to be trusted

A metric the team can't game

  Real effort, fairly measured

  • Strict definitions of "work" — only completed activities and real calls over 30 seconds, so the score can't be padded.
  • Bad-lead filter — incorrect and technical leads are excluded and tracked as a data-quality metric.
  • Daily temperature snapshots — each lead is re-evaluated every day, not once at the end.
  • Telegram alerts & Apache Airflow — orchestrated, monitored, refreshed reliably.

Stack & role

How it's built

Sole data engineer — metric design, the temperature algorithm, data-quality and deployment.

Apache SparkPySparkSpark SQL window functionsApache AirflowPostgreSQLPower BITelegram alerts

Can't tell which managers really work the pipeline?

I'll turn your CRM activity into an honest, per-manager scorecard — real effort, lead temperature, and follow-up speed — so coaching goes where it counts.

Book a strategy call →