Location Capacity lets you cap how much inventory allocation sends to each location. You define a capacity per location (in units), and after the nightly allocation run Toolio projects what each location will be holding at the end of the capacity check window. When that projection exceeds the capacity, Toolio trims recommended transfers until the location fits, and flags every adjusted transfer so you can see exactly what changed.
💡 Location Capacity is gated by the isLocationCapacityEnabled feature flag. Reach out to your customer success manager to enable it for your organization.
Use Cases
Stop allocations from overfilling stores with limited backroom or floor space.
Enforce different capacities for different areas of a store, for example a Womens section and a Mens section, using capacity partitions.
Keep a small buffer above capacity acceptable by using the capacity threshold, so minor overages don't trigger cuts.
See at a glance which recommended transfers the system reduced, and what the original recommendation was.
How the Capacity Check Works
The capacity check runs automatically after the scheduled nightly allocation run, and on demand from the Recommended Transfer Orders screen. For each location (or capacity partition) it:
Projects the location's end-of-period inventory at the end of the capacity check window (see below): what it holds today, plus inbound receipts within the window, minus forecast sales. This is the same end-of-period figure you see on Allocation Details.
Compares that projection against the location's capacity ceiling: capacity × (1 + threshold %). A location projected over capacity but within the threshold is left alone.
If the projection exceeds the ceiling, reduces recommended transfers until the projection fits, following the cut order described in How Cuts Are Applied.
The Capacity Check Window
The window is anchored to receipts, separately for each location and capacity partition. Toolio takes the earliest upcoming receipt date within the partition (or within the whole location when no partition grain is set), adds the configured number of days (default 6), and projects inventory to the end of the fiscal week that date lands in. The window always ends on a fiscal week end, and because the anchor is per partition, two partitions at the same store can be checked against different week ends. The window is capped at your allocation calculation window.
Transfers receipting after the window end are not cut. They are picked up by the capacity check once their receipt date moves into the window.
The Over Capacity Threshold
The Over Capacity Threshold % is a percentage buffer on top of capacity: how far over its unit capacity a location may go before allocations are cut. With a capacity of 1,000 units and a threshold of 10%, cuts only start once the projected inventory exceeds 1,100 units, and cutting stops as soon as the projection is back at or below 1,100. This keeps small, harmless overages from churning your transfers. The threshold defaults to 0%, so out of the box cuts start as soon as the projection exceeds capacity.
Setting Up Location Capacity
Two places hold the setup: capacity values per location, and org-level behavior settings.
Defining Capacities
Navigate to Settings > Organization Settings > Locations, select a location, and open the Location Capacity tab in the detail panel. Enter the location's Unit Capacity there. When a partition grain is configured (see the next section), the tab shows one row per partition, and you set a capacity for each. A location without a capacity value is not constrained.
Allocation Configuration Settings
The org-level settings live in Settings > Module Settings > Allocation > Allocation Configuration:
Capacity Check Window (Days)— the number of forward days used to anchor the window, default 6. Capped at your allocation calculation window.Capacity Partition Grain— the product hierarchy levels capacity is partitioned by (see the next section).Over Capacity Threshold %— the percentage buffer described above.Protect Potential Lost SalesandProtect Shortfall— whether transfers covering potential lost sales or shortfall are protected from cuts.
Capacity Partition Grain
By default, capacity is a single number for the whole location. Alternatively, the Capacity Partition Grain setting lets you partition capacity by product hierarchy levels (Division, Department, Class, Subclass), for example giving a store a Womens capacity of 800 and a Mens capacity of 200. Each selected level splits a location's capacity into one row per combination, and levels can be skipped: selecting only Department gives one capacity per department, across every division above it.
The grain is org-wide. Every location uses either total-location capacity or the same partition scheme. Each partition is enforced independently: if the Womens partition is over capacity, only Womens transfers are cut, even if the Mens partition has room to spare. There is no total-location ceiling while partitions are in use.
How Cuts Are Applied
When a location (or partition) is over its ceiling, Toolio reduces recommended transfers in a specific order until the projection fits.
What Is Not Cut
Any transfer of a SKU projected to hit potential lost sales or shortfall at that location during the window, when the corresponding protection toggle is on. The protection covers all of that SKU's transfers there, not just the portion covering the gap.
Initial allocations — a location's first allocation of a product is always delivered in full.
Redistribution transfers.
Transfers receipting after the capacity window ends.
Pack transfers — the capacity engine currently reduces only transfers that are not part of a pack shipment. Packed transfers are left uncut, though their units still count in the projection.
Transfers with no System In Transit To Ship Units recorded — the run has no baseline to reduce from. This is common on transfers created before the feature was enabled.
Cut Order
Cuts start with the transfers that arrive latest and work backward:
Transfers are grouped by receipt date. The latest receipt date within the window is cut first and fully exhausted before any earlier receipt date is touched, so the units your locations need soonest are the last to be reduced.
Within a receipt date, products with the lowest forecasted sales are cut first. Toolio cuts one transfer order multiple from each product in turn, cycling through until the projection fits or the tier is exhausted.
Cuts respect transfer order multiples: a product that ships in multiples of 6 is always reduced in steps of 6. Because of this, a location can end up slightly below its ceiling rather than exactly at it.
❗ Cuts have no safety-stock floor. When capacity is tight, a transfer can be reduced below the destination's safety stock or minimum presentation level. If every eligible transfer is exhausted and the location is still over its ceiling, the remaining overage is reported but nothing else is cut.
Reviewing Adjusted Transfers
On the Recommended Transfer Orders screen:
The Capacity Adjusted column is
Trueon every transfer the capacity check reduced. It is filterable, so you can isolate all adjusted transfers in one view.The System In Transit To Ship Units column shows the allocation engine's original recommendation, before any capacity cuts or manual edits. It is read-only and refreshed on every allocation run.
The regular
In Transit To Ship Unitsvalue, along with every other transfer metric on screen, in exports, and downstream, reflects the capacity-constrained result.
In the example above you can see the cut order at work: the transfer receipting Oct 11 was cut to zero before the one receipting Oct 6 was reduced from 167 to 94, and transfers receipting after the capacity window were left untouched.
To undo a specific cut, edit the transfer's units manually. Manual edits are kept until the next allocation run or recalculation regenerates the recommendations.
Capacity Summary
The Capacity Summary, opened from the ⋮ menu on the Recommended Transfer Orders screen, shows what the last capacity run did on each location and partition in your current filter.
The tiles at the top total up the run: how many partitions are in the filter, how many were over capacity, how many recommended transfers and units were cut, how many units remain over after cuts, and how many partitions have no capacity or have not been checked yet.
The grid below breaks the same story down per location and partition: Capacity, Ceiling, Projected, Fill (the projection as a percentage of capacity), Over by, and how many transfers and units the run cut there. A partition with a capacity value that no run has evaluated yet shows no projection. You can filter, group, and sort the grid like any Toolio grid.
Use it as the starting point after a run: it tells you where cuts landed and which locations need attention because the run could not bring them under their ceiling, for example when only protected SKUs, initial allocations, packed transfers, or transfers with no System In Transit To Ship Units remain.
Recalculating On Demand
Use Recalculate Capacity Constraints in the ⋮ menu at the upper right of the Recommended Transfer Orders screen to re-run the capacity check without waiting for the nightly run. This is useful right after changing capacities, the threshold, or the window, and after a manual allocation run, which does not trigger the capacity check on its own.
Before it runs, a confirmation explains two things worth knowing:
The recalculation covers all locations matching your current filter, expanded to whole partitions, so transfers beyond the current screen can change. With no filter applied, it covers every location that has a capacity value.
It starts fresh from the system-recommended values. Every transfer inside the window of every partition it evaluates is reset, including transfers in partitions that are under capacity, so any manual override on those transfers is replaced.
The action is available to Admin users and to users granted the dedicated recalculate permission.
FAQs
What happens if a location has no capacity defined?
Nothing. Locations without a capacity value are skipped by the check, and their transfers are never capacity-adjusted. Note that 0 is not accepted as a capacity: to remove a constraint, clear the cell, which deletes the value.
Can a location still end up over capacity?
Yes. Protected SKUs, initial allocations, packed transfers, transfers with no System In Transit To Ship Units recorded, and inventory already at the location all count toward the projection but cannot be cut. When those alone exceed the ceiling, the location remains over capacity rather than forced down, and the Capacity Summary shows where this happened and why.
Does the capacity check change my manual edits?
The nightly run and Recalculate Capacity Constraints both reset every transfer inside the window of every partition they evaluate back to system values, including partitions that were never over capacity, so manual overrides on those transfers are replaced. Edits you make after a run are kept until the next one.
Does a manual allocation run apply capacity constraints?
No. Only the scheduled nightly allocation run triggers the capacity check automatically. After running allocation manually, use Recalculate Capacity Constraints to apply the constraints.
Are pack transfers reduced?
Not currently. The engine reduces only transfers that are not part of a pack shipment. Packed transfers still count toward the projected inventory, but they are not reduced. Whether and how packed transfers get cut by whole packs may change in a later release.
Do exports and downstream systems see the original or the reduced units?
The reduced units. Every transfer metric, on screen, in exports, and in downstream integrations, reflects the capacity-constrained recommendation. The original value is preserved in the read-only System In Transit To Ship Units column.
