Analytics & BI · Sales funnel
An automotive retail group collected leads through five channels across 13 CRM and ERP tables. The pipeline combines these records into one sales funnel, with consistent lead counts and conversion at each stage.
The problem
Online forms, calls, showroom visits, manual entries and CRM leads used different formats. Comparing conversion meant first reconciling records across 13 tables.
What I built
I built a universal SQL engine on Apache Spark that runs eight ordered stages. The first five normalize each lead channel into a common shape; the next two derive funnel levels and per-stage metrics; the last merges everything into one analytics-ready funnel table that Power BI reads directly.
Source tables are pulled with parallel JDBC extraction, and stages are chained in memory — no intermediate writes to the database — so the whole funnel rebuilds in one clean pass.
The result
The dashboard shows funnel KPIs, the share of each lead channel and conversion by brand using the same data model.
Drill-down
Managers can compare conversion by brand and consultant, then examine the stage where results differ.
| Brand | Traffic | → Lead | → Visit | → Test drive | → Contract | → Delivery |
|---|---|---|---|---|---|---|
| Luxury | 99,887 | 63.5% | 34.0% | 22.0% | 7.6% | 7.6% |
| BMW | 30,974 | 71.6% | 40.0% | 24.1% | 6.5% | 7.0% |
| Mercedes-Benz | 45,799 | 49.5% | 27.8% | 19.0% | 8.3% | 8.6% |
| Audi | 4,544 | 64.7% | 34.8% | 26.1% | 4.8% | 4.8% |
| Volvo | 12,791 | 81.0% | 42.3% | 24.8% | 8.6% | 7.3% |
| Lexus | 5,779 | 90.7% | 32.4% | 26.2% | 6.9% | 6.4% |
| Mass-market | 240,485 | 72.8% | 35.8% | 20.1% | 11.3% | 10.9% |
| Toyota | 71,644 | 67.3% | 34.6% | 17.6% | 11.4% | 11.9% |
| Renault | 25,217 | 69.3% | 31.3% | 24.8% | 9.6% | 9.4% |
| Volkswagen | 22,005 | 68.8% | 27.1% | 16.7% | 12.9% | 13.4% |
| Škoda | 25,133 | 73.4% | 42.1% | 28.7% | 13.6% | 14.8% |
| Mazda | 17,099 | 86.7% | 49.6% | 19.1% | 11.0% | 9.0% |
| Total | 368,695 | 67.6% | 32.7% | 19.1% | 9.4% | 9.2% |
Built to be fast & affordable
Built to be trusted
The outcome
Quantified business results (reporting time before/after, conversion lift) — add real numbers.
Stack & role
Sole data engineer — architecture, build, data-quality and deployment.
We can review how your systems count leads and deals, then agree on a common reporting model.
Discuss your project →