The allocation list is built in a spreadsheet
Branch and product splits, case packs and shelf capacity are balanced by hand. Two people doing the same job produce two different lists.
Decision software for grocery chains
Mind Send · Allocation Management
Decide with a demand forecast which product goes to which store, and how much. Initial allocation, shipment and transfer come from the same model.
Mind Send is the module that calculates, for a grocery chain, how much of the stock in the central warehouse and in branches should go to each branch, together with the demand forecast; initial allocation, warehouse dispatch and branch-to-branch transfer decisions all come out of the same model.
Branch and product splits, case packs and shelf capacity are balanced by hand. Two people doing the same job produce two different lists.
The need to transfer is only noticed after the sale has been lost. The product turns into dead stock in the wrong branch.
Shipments are sent without regard to the branch's shelf and back-room capacity, so cases sit in the back room.
Sending the right product to the right branch recovers part of the sales lost to empty shelves. Published research puts that loss at roughly four per cent of sales for fast-moving retail.
Enter your own figures and the calculation updates as you type.
2.1× its cost · pays for itself within 6 months
Source: Corsten and Gruen, Harvard Business Review 2004 (via Pygmalios 2026)
Shipment quantity is calculated from demand forecast and branch shelf capacity, not from past sales alone.
The first shipment for a new product or a new branch and daily replenishment and transfer are not separate systems; all of them see the same constraints.
Who changed a suggestion and why is recorded; the decision is not argued about later.
For a new product listing or a new branch opening, the first shipment quantity is calculated from the branch cluster, comparable product history and capacity constraints.
An ideal stock level is set from sales velocity; any branch that falls below the threshold gets a replenishment proposal.
A branch holding dead stock is matched with a branch selling the same item quickly. Transfer cost is included in the proposal.
Allocation is not done on total units alone; the minimum shipment pack (case) and branch shelf capacity are respected. Lost sales are measured through unmet demand.
Branches are clustered by revenue, floor area, customer profile and sales curve; allocation differs by cluster.
The proposed list does not go straight to dispatch. A planner approves, rejects or changes each line, and every decision leaves a trace.
Shipment proposals are produced automatically on every run from the demand forecast, stock on hand and constraints; the planner only approves or changes them.
Shipment quantities follow the demand forecast by branch and product, not past habit.
Branch shelf and back-room capacity enter as constraints; a branch is never offered more than it can take, and limited stock goes first to the branch with higher demand.
Product misallocated for a weekly promotion, a Bayram holiday or a new branch opening is corrected by transfer as soon as the rate of sale shows it.
Replenishment follows the rate of sale, with shelf capacity as a constraint.
For how many branches and users?
Included in the package
The figure is a starting point for a conversation, not a final price. Scope is settled in that conversation; prices exclude VAT.
No. Ideal stock, unmet demand and shipment quantity are calculated with defined formulas; an allocation run with the same parameters produces the same list every time. The AI's job is to explain the output — why a branch received less and which constraint was binding.
Yes. The shipment list is produced at branch and product level, with the minimum shipment pack and shelf capacity carried as constraints on every line. In a grocery chain, getting allocation right depends on deciding by each branch's own rate of sale; allocating on chain totals leaves one branch's shelf empty while filling another's back room.
Yes, line by line. The change is recorded: who moved which line to what value, and when, is kept in the approval history. That way, once the campaign is over you can see whether the variance came from the proposal or from the intervention.