Short answer
Dark store replenishment works when three numbers stay healthy: purchase order fill rate above 90–95%, enough days of cover in the platform warehouse for your lead time plus a buffer, and store-level availability checked often enough to catch gaps the same day. Plan extra stock before campaigns and track hours empty for hero SKUs.
Key takeaways
- You control supply into the platform; the platform controls movement into dark stores. Manage both with data.
- Days of cover must be longer than your lead time plus a safety buffer.
- Build campaign stock 1–2 weeks ahead and switch hero SKUs to hourly checks during the campaign.
- Hours empty is the best single number for how well replenishment is working.
Quick commerce turns inventory planning into a many-location problem. Instead of one warehouse, your stock sits across platform warehouses and hundreds of dark stores, each running down at its own pace. This playbook gives you the numbers and routine to keep shelves full.
How stock flows on quick commerce
- 1
Your warehouse or factory
You produce or buy stock and hold it centrally.
- 2
Platform warehouse
The platform raises purchase orders (POs); you deliver against them.
- 3
Dark stores
The platform moves stock from its warehouse into local dark stores based on its forecast.
- 4
Customer
A customer within a few kilometres orders and receives it in minutes.
A gap at any step shows up as an empty shelf at the last step. Your job is to make sure the first two steps never become the bottleneck, and to spot problems at the third step fast.
The three numbers to manage
| Number | Formula | Healthy range (typical) |
|---|---|---|
| PO fill rate | Units delivered ÷ units ordered | 90–95%+ |
| [Days of cover](/glossary/days-of-cover) | Stock on hand ÷ average daily sales | Lead time + 3–7 day buffer |
| Availability % | Stocked stores ÷ listing stores | As high as possible for hero SKUs |
Reorder point
Reorder point = Average daily sales × Lead time (days) + Safety stock
Safety stock ≈ Average daily sales × Buffer days
Planning stock for campaigns
Campaigns on quick commerce can double or triple daily sales in specific cities. If stock isn't positioned before the campaign starts, you pay for the demand and then can't serve it.
- Two weeks out: estimate the uplift by city from past campaigns. Raise production or purchase orders.
- One week out: confirm inbound delivery dates with the platform. Check days of cover by warehouse.
- Two days out: switch hero SKUs to hourly or 15-minute availability checks.
- During: watch listed-but-out-of-stock by city; pull ads from cities where shelves empty.
- After: compare uplift against availability to learn how much demand you could not serve.
A weekly replenishment routine
| Day | Task | Owner |
|---|---|---|
| Monday | Availability and listed-OOS by city for hero SKUs; export empty stores | Quick commerce manager |
| Monday | Escalate store list to account manager | Quick commerce manager |
| Tuesday | PO fill rate review; chase short deliveries | Supply / ops |
| Wednesday | Days of cover by warehouse; plan next dispatch | Supply / ops |
| Friday | Hours empty and sell-through by city; adjust next week's plan | Founder or category lead |
Tools that help
You can run this in spreadsheets, but the store-level availability part is where spreadsheets break: nobody can manually check hundreds of dark stores several times a day. Shelf Watch handles the checking and alerting; MarQet BI puts days of cover, sales and availability in one morning view.
Frequently asked questions
What is a good PO fill rate for quick commerce?
Most brands aim for 90–95% or higher on hero SKUs. Persistent fill rates below 90% usually show up as store-level stock-outs a few days later.
How many days of cover should I keep for Blinkit?
Enough to cover your lead time into the platform warehouse plus a buffer of roughly 3–7 days, more for hero SKUs and before campaigns.
Who controls replenishment into dark stores?
The platform moves stock from its warehouses into dark stores. The brand controls supply into the platform and can escalate store-level gaps with data.

Written by
Ayush Singhal, Founder, MarQetAyush founded MarQet to give D2C founders one system for customer conversations, daily performance and quick-commerce shelf availability.