How to Give Customers Real-Time Delivery Tracking
Practice4 minInnovialabs editorial team
In short
Customers need three things: timely status notifications, a link to a page showing the courier on a map and an honest, updating arrival time. Data comes from the courier app or GPS, and it reaches customers via SMS, Telegram and a tracking page.
What customer delivery tracking is
Real-time tracking means the customer can see what is happening with their order without calling support. It rests on three elements:
- Status notifications: order packed, handed to courier, courier on the way, delivered.
- A tracking page behind a unique link: status, a map with the courier's position and arrival time.
- ETA, the estimated time of arrival, updated as the route progresses.
The goal is simple: fewer "where is my order" calls and fewer failed deliveries when the customer is not home.
Where the data comes from
- Courier app. Sends phone location and check-ins: picked up, on the way, delivered, delivery failed.
- GPS tracker in the vehicle. More reliable for your own fleet, but the driver still marks stop statuses.
- Routing system or TMS. Knows the stop sequence and counts how many stops remain before the customer.
- Store or back-office system. Knows when the order was packed and shipped.
All events flow into one service that decides what to send to the customer and when.
Which notifications to send
| Event | What to tell the customer |
|---|---|
| Order handed to delivery | Date and time slot, tracking link |
| Courier has started the route | Approximate time, order number |
| One or two stops before you | Courier arriving soon, refined ETA |
| Delay | New time and a short reason |
| Delivered | Confirmation and a rating request |
| Delivery failed | What happens next and how to pick a new time |
Do not report every internal step. Extra messages annoy people and train them to ignore you.
The live courier map page
What to get right:
- No login required, but a long random token in the link so it cannot be guessed.
- Show the courier on the map only on the final leg, when they are heading to this customer. This protects the privacy of the courier and other customers.
- Stop showing location once the order is delivered.
- Mobile-first layout: almost everyone opens the link on a phone.
- Action buttons: contact the courier through a masked number or chat, leave a note, reschedule.
Position updates on the page use periodic polling or WebSockets. Update frequency is a trade-off between smoothness and load on your server and the courier's battery.
How to calculate an honest ETA
ETA is based on remaining stops, service time at each one and traffic forecasts. Rules:
- show a time range, not an exact minute;
- recalculate after every completed stop;
- when the time shifts noticeably, notify right away, not after the customer is already waiting;
- compare predictions with actuals and adjust service times per stop.
Channels: SMS, Telegram, push
- SMS reaches almost everyone but costs money per message and has length limits. Good for key events.
- A Telegram bot is free to send from and supports buttons and links. But a bot can only message users who started it, so offer the subscription at checkout.
- Push notifications, if you have a mobile app.
- Email works for confirmations and receipts but poorly for urgent statuses.
A practical setup: Telegram for subscribers, SMS as a fallback for everyone else.
Common mistakes
- Showing the courier on the map while they are still delivering other orders.
- Promising an exact time that is then missed.
- Sending notifications that contradict the real status because of sync delays.
- Giving the customer no way to reply or reschedule.