Russian Post: OCR + AI router cut parcel processing time by 38%
Average parcel processing time at a sorting center dropped from 47 to 29 seconds (-38%). Address-reading accuracy rose from 96.3% (manual entry) to 99.4% (OCR). Manual-sort operator headcount cut from 8,200 to 2,300 — the remaining work only on hard cases the ensemble couldn't decode. Key metric: % of parcels delivered within SLA. Before: 81%. After: 96%. This restored user trust in the state post: in 2024 Russian Post NPS turned positive for the first time in a decade (+14, was -23 in 2022). The December 2024 crisis went almost unnoticed: peak load processed by the same capacity, no queues. Project economics: 4.7 billion rubles invested (hardware + development + integration). Direct savings: 8.1 billion rubles per year from reduced manual work. ROI payback in 7 months. Additional benefit: "address not found" returns dropped, cutting logistics costs by another 1.2 billion rubles.
Background
Russian Post is the country's largest logistics operator: 38,000 offices, 230,000 employees, 7.8 million postal items per day. Flow includes 4.2M parcels (e-commerce), 2.1M letters (legally-significant correspondence), 1.5M small packets. Main sorting centers: Moscow (Vnukovo), St. Petersburg, Novosibirsk, Khabarovsk. Through 2023, much of routine work — reading and sorting — was manual: 8,200 operators sat at conveyor belts entering recipient postal codes.
Problem
Main problems: recognition accuracy, speed, cost. Manual input accuracy: 96.3% (3.7% of parcels went to wrong addresses, giving 290,000 "lost" items per day — about 0.4% of volume). Speed: an operator enters 800-1,100 codes per hour. Cost: 18 rubles per parcel just for manual sorting, excluding salaries at other stages.
Additional problem: handwriting. 23% of addresses are written by hand (especially in regions). Old OCR systems (purchased in 2017) recognized printed fonts at 89%, but block-letter handwriting at 71%, cursive at 43%. Those 23% always went to manual processing.
Most painful: peak seasons. In December volume grows 2.4×. In December 2022 Moscow had 12 million unprocessed parcels piled up — all conveyors jammed, operators short-staffed. Domestic delivery times stretched from 4 to 14 days. Complaints to the Ministry of Digital Development hit records.
Solution
The Post team built a two-layer pipeline. Layer 1: modern OCR with three models running in parallel. A Vision Transformer (custom-trained on 14M labeled parcel images from Post data) for printed fonts, 99.1% accuracy. TrOCR (Microsoft, fine-tuned on Russian handwriting) for block-letter handwriting, 94% accuracy. The third — Donut OCR (NAVER) used as a "second eye": looks at the same image and cross-checks with model 1. If two models disagree — image goes to a human.
Layer 2: AI router. Based on the recognized address, optimally routes the parcel through the sorting center network. Before: rigid logic "region → regional center → office". Now: the model considers current load of each center, delivery time, transport routes (trucks, air, rail), cost. Output: the optimal route for the current network situation.
Hardware at sorting centers: 4K camera over conveyor belt, belt speed 1.4 m/s (2 parcels/second). Each frame is processed on a local edge server (NVIDIA A2 ×4 per center) in 380ms. Decision is made before the parcel reaches the next sorting fork.
Special feature: feedback loop. If a parcel returns as "address not found" — the system does retrospective analysis: which model erred, what the ground truth was, uses it as a new training sample. Continuous learning without human-in-the-loop. Models now retrain every 6 hours.
Result
Average parcel processing time at a sorting center dropped from 47 to 29 seconds (-38%). Address-reading accuracy rose from 96.3% (manual entry) to 99.4% (OCR). Manual-sort operator headcount cut from 8,200 to 2,300 — the remaining work only on hard cases the ensemble couldn't decode.
Key metric: % of parcels delivered within SLA. Before: 81%. After: 96%. This restored user trust in the state post: in 2024 Russian Post NPS turned positive for the first time in a decade (+14, was -23 in 2022). The December 2024 crisis went almost unnoticed: peak load processed by the same capacity, no queues.
Project economics: 4.7 billion rubles invested (hardware + development + integration). Direct savings: 8.1 billion rubles per year from reduced manual work. ROI payback in 7 months. Additional benefit: "address not found" returns dropped, cutting logistics costs by another 1.2 billion rubles.
Lessons learned
- Ensemble of 3 OCR (transformer + TrOCR + Donut) is more accurate than one big model. Disagreement = uncertainty.
- Continuous learning without human-in-the-loop works if there's reliable "retrospective ground truth" — "address not found" returns.
- AI router (load balancing) gives nearly as much ROI as OCR. Don't forget the second layer.
- Sorting throughput = belt speed × frame processing time. Don't optimize just the model, optimize the pipeline.
- Cutting operators from 8,200 to 2,300 is the main political challenge. Training those who remain to work with AI matters more than those laid off.