Analytics & BI · Sales performance

Lead follow-up by team and manager

CRM activity totals included cancelled tasks and short calls, making follow-up hard to assess. The report counts completed activities and qualifying calls, tracks lead progress and shows gaps between contacts for each team and manager.

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

Activity totals hid gaps in follow-up

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

Which activities count

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

A shared view of team follow-up

The report compares activities per lead, time between contacts and changes in funnel position. Managers can use it to identify cases that need a closer look.

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 · →
Low activity, declining lead progress
1V. K.follow-up needs review0.6 · ↓
2I. H.slow follow-up0.8 · ↓
3P. K.slow follow-up1.0 · ↓

The point

Where follow-up needs attention

Four measures show different aspects of follow-up by team and manager. They support a review of the work; they do not explain every difference in sales results on their own.

  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

Follow-up measured with consistent rules

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
  • Gaps in follow-up visible for review

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

Built to be trusted

Rules behind the activity metrics

  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?

We can turn your CRM records into a report on completed activities, lead progress and contact frequency for each manager.

Discuss your project →