The floor-divided-by-pallet shortcut overstates capacity almost fourfold; aisles, beam pitch and the unracked floor decide the count.
Count pallet positions from the racking module, not from the floor area: positions = racking zone area × pallets per m² per level × beam levels × a cross-aisle factor. An illustrative 20,000 m² warehouse with 12.0 m clear height holds 32,604 positions in wide-aisle racking, 1.63 per m² of floor, and 42,146 in very narrow aisle. At 85 per m² of rent that is 52.14 per position a year, or 40.34 with the narrower aisles.
Worked in full in Logistics and Industrial Real Estate by Julian R. Sterling, with every figure reproduced in a free workbook.See the book on Amazon →
Pallet capacity is what an occupier is really renting, and it is the figure that turns a rent per square metre into a cost the logistics manager recognises. It is also the figure most often overstated, because the quick method divides the floor by the size of a pallet. A warehouse is mostly aisles, docks and air, and the count has to be built up from the racking layout.
| Input | Value |
|---|---|
| Gross internal area, m² | 20,000 |
| Share of floor in the racking zone | 72% |
| Clear height, m | 12.0 |
| Clearance kept below the haunch, m | 1.0 |
| Beam pitch per level, m | 1.8 |
| Bay width, m, holding 3 pallets per level | 2.7 |
| Rack depth, m, back to back with a flue of | 1.1 and 0.1 |
| Aisle width, m: reach truck / very narrow aisle | 3.0 / 1.8 |
| Racking run left after cross aisles and fire breaks | 90% |
| Rent per m² a year (illustrative) | 85 |
The other 28 per cent of the floor is the dock apron, marshalling, offices, battery charging and plant. In a cross-dock or e-commerce building it is often larger, and the count falls with it.
Module width = 2 × rack depth + flue + aisle
Pallets per m² per level = 2 × pallets per bay ÷ (module width × bay width)
Beam levels = ROUNDDOWN((clear height − top clearance) ÷ pitch, 0)
Positions = racking zone × pallets per m² per level × levels × cross-aisle factor
In Excel: =Zone*2*3/((2*1.1+0.1+Aisle)*2.7)*ROUNDDOWN((Clear-1)/1.8,0)*0.9. The ground level counts as one of the levels.
| Step | Wide aisle | Very narrow aisle |
|---|---|---|
| Module width, m | 5.3 | 4.1 |
| Area of one bay module, m² | 14.31 | 11.07 |
| Pallets per m² per level | 0.419 | 0.542 |
| Beam levels | 6 | 6 |
| Positions per m² of racking zone | 2.26 | 2.93 |
| Pallet positions | 32,604 | 42,146 |
| Positions per m² of floor | 1.63 | 2.11 |
| Rent per position a year | 52.14 | 40.34 |
Very narrow aisle adds 9,543 positions, 29.3 per cent, from the same building and the same rent of 1,700,000. It costs something the table does not show: guided turret trucks, a floor flat enough to run them, and slower picking. Whether 9,543 positions are worth that equipment is the occupier's calculation, but the landlord should know that a building able to take VNA offers that option and one with a poor floor does not.
| Clear height, m | Levels | Wide aisle | VNA | Rent per position, wide | Rent per position, VNA |
|---|---|---|---|---|---|
| 8.0 | 3 | 16,302 | 21,073 | 104.28 | 80.67 |
| 10.0 | 5 | 27,170 | 35,122 | 62.57 | 48.40 |
| 12.0 | 6 | 32,604 | 42,146 | 52.14 | 40.34 |
| 13.5 | 6 | 32,604 | 42,146 | 52.14 | 40.34 |
| 15.0 | 7 | 38,038 | 49,171 | 44.69 | 34.57 |
| 18.0 | 9 | 48,906 | 63,220 | 34.76 | 26.89 |
Capacity rises in steps, not in proportion to height. At 12.0 m the stack uses 10.8 of the 11.0 m available, leaving 0.2 m idle; a building at 13.5 m holds no more pallets of this size than one at 12.0. Pricing the extra 1.5 m pro rata is paying for air, which is the argument against rent per cubic metre.
The racking zone matters as much as the height. At 65 per cent of the floor the wide-aisle count is 29,434; at 80 per cent, 36,226. A building with deep docks and a large mezzanine-free marshalling area trades capacity for throughput, and the count should reflect the occupier's layout, not the brochure's.
Dividing the floor area by the pallet footprint of 0.96 m² and multiplying by the levels gives 125,000 positions: 3.8 times the real figure. The error is in ignoring aisles, flues, beam pitch and the floor that is not racked, and it makes every rent look cheap per position. Build the count from the module, and check the levels against the actual clearance under the sprinklers, not the nominal eaves height.
Racking zone × pallets per m² per level × levels × 0.9: 32,604 wide-aisle positions on 20,000 m² at 12.0 m, 52.14 of rent per position a year. Height pays only in whole beam levels. The book's rent and cube sheets, with the racking and handling cost deducted, are in the free workbooks for this case, and why the extra height is not worth a cube-parity rent is worked in should warehouse rent be priced per cubic metre.
In wide-aisle racking with six beam levels, an illustrative warehouse holds 2.26 positions per m² of racking zone, or 1.63 per m² of total floor once docks and offices are excluded. Very narrow aisle racking raises that to 2.93 and 2.11, because the aisle shrinks from 3.0 m to 1.8 m.
Divide the annual rent by the pallet positions the layout actually achieves. An illustrative 20,000 m² warehouse at 85 per m² costs 1,700,000 a year; with 32,604 wide-aisle positions that is 52.14 per position, falling to 40.34 with 42,146 very narrow aisle positions.
No, capacity rises only in whole beam levels. With a 1.8 m pitch and 1.0 m kept below the haunch, an illustrative warehouse holds 32,604 positions at both 12.0 m and 13.5 m, and gains a level only at 15.0 m, reaching 38,038.
This article is one calculation from Logistics and Industrial Real Estate. The book takes the same case from first principles to the decision, chapter by chapter, and every figure it prints is a live formula in the free companion workbooks.
Get the book on Amazon →Free companion files
Also on Amazon UK · Amazon Germany · Amazon France · Amazon Canada
Reading guide: real estate investing, finance and fund management → · All 681 articles →
If this book helped, or didn’t, a few lines on Amazon are worth more than they look: they are what the next reader goes on. Write a review. The workbook stays free either way.