Fast local delivery is expanding again, but small teams get crushed when promises exceed capacity. This playbook shows how to design pickup and local delivery operations: time windows, batching, substitutions, inventory allocation, and customer communication.
There is a pattern retail keeps repeating:
Customers get used to convenience. Then the industry overpromises. Then operators burn out. Then the market cools. Then a new wave of technology arrives and makes the promise feel possible again.
We are in another convenience wave right now. Fast delivery is expanding again, and customers are being trained to expect "near now" fulfillment even from local businesses. The demand is real. The danger is also real: small teams get crushed when delivery promises exceed operational capacity.
This is a playbook for doing local delivery and pickup without turning your day into constant firefighting. It is written for the realities of small teams: limited drivers, limited prep space, and owners who also do payroll.
Start with the constraint: time is not inventory
Many operators plan delivery like it is inventory: "We have the items, so we can take the order."
But time is your real inventory. You have a fixed number of minutes in the next hour, and every order consumes some of them:
- Pick time
- Pack time
- Handoff time
- Drive time
- Customer communication time
If you want to offer 30-minute delivery, you have to price and schedule it like a scarce resource.
The three delivery models (and when to use each)
1) Pickup-first (best for most small businesses)
Pickup is the easiest convenience win. Customers get speed. You avoid route planning. You maintain food quality (for restaurants) and reduce claims (for retail).
Pickup-first works when you:
- Offer clear windows (10-15 minute slots)
- Keep a dedicated pickup shelf/table
- Send a "ready" message only when it is actually ready
2) Batching delivery (high efficiency, slightly less magical)
Batching means you deliver multiple orders in a route. Customers may wait longer, but your cost per delivery drops dramatically.
This works when you:
- Offer delivery windows (example: 5-6pm, 6-7pm)
- Use a simple "route cut" time (orders placed after 5:20 go to next window)
- Communicate clearly (customers tolerate waits when expectations are honest)
3) True 30-minute (use it as a premium option)
If you promise 30 minutes, treat it like a premium service:
- Limited radius
- Limited order size
- Capacity caps per hour
- Clear substitution and out-of-stock rules
Do not offer it to everyone at all times. Offer it when you can actually win.
Operational moves that prevent delivery chaos
A. Inventory allocation: reserve what you sell fast
If you sell through multiple channels, you need a way to avoid the classic failure: you sell the last item in-store and online at the same time.
Practical solutions:
- Set "safety stock" for delivery channels (do not promise the last unit)
- Update inventory immediately on sale (not nightly)
- Use cycle counts for fast movers so your available count is real
B. Substitution rules: decide before the rush
When a picker finds an item out of stock, the worst time to decide policy is while the driver is waiting.
Pick a default:
- No substitutions (simple, but may lose orders)
- Substitute same category and equal price (operator-friendly)
- Text customer for approval (best experience, but adds time)
C. Packaging as a system
Packaging is not aesthetics. It is performance:
- Standard bag sizes
- Consistent label placement
- Tamper evidence for trust
- Hot/cold separation for food
Build a packing station layout that reduces motion. Small improvements here compound across every order.
D. Customer communication templates
Write messages before you need them:
- Order received
- Order delayed (with an honest new ETA)
- Substitution request
- Ready for pickup
- Out for delivery
When the day is chaotic, templates keep you from improvising under stress.
How M&M POS helps you run delivery and pickup like an adult
Fast fulfillment is not just a delivery app problem. It is a transaction and inventory problem. Your POS is where the truth lives: what was ordered, what was paid for, what is in stock, what was refunded, and what went wrong.
If you want a clean operational base for pickup and local delivery, start with M&M POS. Keep your items and inventory accurate, then build fulfillment rules around real capacity instead of hope. If you are ready to design your workflow, download M&M POS and start with a pickup-first model, then add delivery in controlled windows.
A quick self-check (print this)
- Do we cap delivery capacity per hour?
- Do we have a limited radius for premium speed?
- Do we have a default substitution policy?
- Do we know our pick/pack time per order?
- Do we have packaging standards?
- Can we explain delays in one sentence without panic?
If you can answer those, you can offer convenience without sacrificing sanity. That is the real competitive advantage.