Food and grocery delivery
A delivery platform is a promise about time made to three parties at once, and the whole system exists to keep it.
The estimate is the product. Everything the customer feels — trust, patience, whether they order again — hangs on whether the number you showed them was true. And that number is a chain of guesses: how long the merchant takes to accept, how long the food takes to cook, whether a courier is free, how long the ride is at this hour in this weather. Getting it approximately right is a modelling problem; getting it honest is a design one, because a wide range shown plainly beats a precise number that turns out to be fiction.
Grocery and prepared food look similar and behave differently. Restaurant orders are small, hot, and intolerant of delay. Grocery baskets are large, tolerate scheduling, and introduce the problem that dominates everything else: substitution. An item is out of stock while the picker is in the aisle, and now somebody has to decide — swap it, ask the customer and wait, or refund. That single flow touches the picker app, the customer app, the payment (because the total just changed after authorisation) and support. Platforms that treat groceries as restaurants with more items discover this in week three.
The merchant side is where these platforms are usually weakest, and it is the side that determines whether the promise holds. A kitchen console has to be usable by someone with wet hands, at speed, during the busiest hour, on whatever tablet is already on the counter. If accepting an order takes three taps and a scroll, merchants accept late or in batches, the estimate you showed the customer becomes wrong, and no amount of routing sophistication downstream repairs it.
How we work
- The estimate is modelled from real observed times per merchant and per hour, not a flat number, and shown as a range when the confidence is genuinely low.
- Substitution is designed as a first-class flow across picker, customer and payment — not bolted on when the first basket comes back short.
- The merchant console is built for one hand and one glance, and tested during a real service rather than in a meeting.
An operations console. The filters re-filter the board and dim the map.
What this includes
Pick what you need and send it over.
Questions
- Do we need our own courier fleet?
- Not to start. Many platforms launch with the merchants' own drivers or a third-party fleet and add their own later. What matters is that the software does not assume which it is, because the day you mix both — your couriers, theirs, and a partner's — is the day an assumption baked into dispatch becomes expensive.