ⓘ Data note: Dashboard KPIs reflect the full 30.2M parcel enterprise-scale dataset. The Excel workbook uses a 1.2M row sample — figures will differ slightly. ML metrics are validated on a 20% held-out test split. Business impact projections are modelled estimates.

Pargo Parcels Data Warehouse

Completed Project -- 30M parcels | 210M tracking events | 36 months | Snowflake + DBT
Total Parcels
30.2M
+12.4% YoY 2024 vs 2023
Tracking Events
210M
+9.1% YoY
Avg Collection Rate
91.9%
+2.1pp vs prior year
RTS Rate
5.5%
+0.3pp vs target (5.2%)
Avg Transit Hours
44.2h
-3.1h vs 2023
Avg Dwell Days
3.8d
Within 5-day SLA
Active Customers
10.0M
+18% registered 2024
Active Pickup Points
4,000
Across 9 provinces

Monthly Parcel Volume (2023-2026)

Parcel Status Mix

Parcels by Province

Service Type Split

On-Time Collection SLA
71.3%
(dwell ≤5 days, collection SLA)
Avg Transit Hours
44.2h
Target: 48h
Exceptions / 1000
14.2
+1.1 vs 2023
Active Couriers
500
Across all regions

Transit Hours Distribution

Dwell Days Distribution

Weekly RTS Rate Trend (last 52 weeks)

Top 10 Retailers by Parcel Volume

Retailer Scorecard (Top 15)

RetailerIndustryTier ParcelsGMV (ZAR)On-Time % RTS RateRevenue Est.
On-Time Collection SLA
71.3%
dwell ≤5 days (collection SLA)
Long Dwell (>7d)
4.2%
Above 3% target
Slow Transit (>72h)
9.8%
Courier performance
Total Breaches (36mo)
5.4M
SLA, RTS, or dwell

SLA Breach Types

Breach Rate by Province

RTS Risk Model -- ROC-AUC by Algorithm

Feature Importance (XGBoost -- RTS Risk)

ML Model Inventory

ModelAlgorithmTarget FeaturesMetricScoreStatus

Data Architecture

RAW Layer (Snowflake)

8 tables: 4 dimensions + 4 facts. Loaded via PUT + COPY INTO batch pattern. CLUSTER BY (LOAD_YEAR, date). Parquet/Snappy. PURGE=TRUE.


DIM_COURIERSDIM_CUSTOMERS DIM_PICKUP_POINTSDIM_RETAILERS FACT_ORDERSFACT_PARCELS FACT_TRACKING_EVENTSFACT_RETURNS

STAGING Layer (DBT Views)

8 staging models cleaning and standardising RAW data. Type casting, deduplication, derived fields (TRANSIT_HOURS, DWELL_DAYS). All views for zero storage cost.

MARTS Layer (DBT Tables)

4 mart tables: parcel performance, daily ops, retailer scorecard, SLA breaches. Clustered for analytical query performance.

ML_FEATURES Layer (DBT Tables)

3 feature store tables: RTS risk features, customer LTV features, courier reliability. Fed into Snowpark ML stored procedures.

Data Scale

TableRowsPeriod
DIM_COURIERS500Static
DIM_CUSTOMERS10,000,000Static
DIM_PICKUP_POINTS4,000Static
DIM_RETAILERS150Static
FACT_ORDERS~25,000,00036 months
FACT_PARCELS~30,000,00036 months
FACT_TRACKING_EVENTS~210,000,00036 months
FACT_RETURNS~5,000,00036 months

Snowflake Tasks & Alerts

Scheduled Tasks (3)

Nightly parcel summary (02:00 SAST) | Hourly RTS check | Daily SLA report (06:30 SAST)

Alerts (2)

RTS spike alert (>15% threshold) | Tracking event volume drop (>50% below 7d avg)

Where the parcels move — 9 SA provinces

Real province-level parcel volume, plotted at each province's capital city. Circle size = share of the 30.2M enterprise-scale parcel volume.

Circle size = parcel volume
Ask about Pargo Parcels
Hi! Ask me about the data, the ML models, the provinces, or the tech stack.