Where the catalogue numbers come from

July 27, 2026 · View on GitHub

Provenance for every figure hard-coded in index.html. Verified 27 July 2026.

Published in machine-readable form as danielrosehill/storage-container-dimensions on Hugging Face — same figures plus the VDA 4500 KLT sizes, 121 individual vendor listings, and per-row standards-conformance fields. build.py in that repo is the generator; if a capacity changes, change it there and mirror it into the GROUPS array here.

A printable rendering of the whole catalogue — every size, its typical internal dimensions, its capacity and the vendor spread, divided by family — is at reference/storage-container-reference.pdf in that repo. It is generated from the CSVs, so it cannot disagree with them.

The dataset also carries what this file cannot: vendor_capacity_low_l and vendor_capacity_high_l on every row, the range of capacities implied by each vendor's own published internal dimensions for that size. The catalogue below uses the low end of that range.

The calculator's whole point is comparing containers on usable capacity, so the capacity figures matter more than the dimensions. Getting them wrong by 10 % changes which box wins a comparison.

The two families

Euro stacking containerAttached-lid container (ALC)
Wallsstraightsloping (tapered towards the base)
Lidseparate purchaseintegral, hinged, included in the price
Stacks when fullyesyes (typically 9 high)
Nests when emptynoyes, ~75 %
Usable / external~76–78 %~73–75 %

That table is the answer to "are ALCs Euroboxes?" — no. They share the 600 × 400 and 400 × 300 footprints and interoperate on the same pallets, but they are a different product with a different height grid and different volumetrics. Hence the tool being renamed away from "Eurobox calculator".

Euro stacking containers

Capacities are computed from published internal dimensions rather than copied from vendor "nominal litres", which round up by 5–10 %.

The internal footprint is consistent across manufacturers if they are all measuring at the same height, and they are not. Salesbridges publishes 570 × 370 mm internal for a 600 × 400 box where Plastic Box Shop publishes 555 × 355 and Yosibox 550 × 360 — the first is the top opening, the others are near the base, and a euro crate is slightly tapered, so all three are honest. The spread is 11 % in litres on the same box. The rules below take the conservative reading, which is why the catalogue's 60 × 40 × 32 box is 59.6 L where the market quotes it at anything from 60 to 66. Full evidence, per vendor: guidance/internal-dimensions.md in the dataset repo.

The rules:

  • 600 × 400 boxes are internally 550 × 355 mm, internal height ≈ H − 15 mm
  • 400 × 300 boxes are internally 350 × 250 mm, internal height ≈ H − 10 mm
  • 300 × 200 boxes are internally 260 × 160 mm, internal height ≈ H − 10 mm
  • 800 × 600 boxes are internally 750 × 550 mm, internal height ≈ H − 20 mm

Cross-checks against real SKUs (all agree within ~1 L):

SKUExternalPublished internalPublished LFormula gives
Yossibox G-4623600 × 400 × 230550 × 360 × 2154242.0
Yossibox G-4634600 × 400 × 340550 × 360 × 3256463.5
Yossibox T-4631600 × 400 × 315—5858.0 (at H 310)
plasticboxshop 60 L600 × 400 × 320550 × 350 × 3006059.6
plasticboxshop 76 L600 × 400 × 400550 × 350 × 3907679.1
plasticboxshop 20 L400 × 300 × 220350 × 250 × 2102018.4

The 800 × 600 figures are the weakest of the set — they are formula-derived, and the only vendor publishing internals for that footprint (Salesbridges, 770 × 570 mm) implies 8–9 % more capacity than the formula gives. Thin-walled Rako 800 × 600 containers are marketed at ~134 L against the formula's 124 L, so treat the 800 × 600 row as conservative.

Sources: ../../Eurobox-Procurement-Research/research/06-yossibox-rigid-skus.md (Israeli retail, verified 2026-07-23) and the plasticboxshop.co.uk Shopify catalogue (see "Pulling supplier catalogues" below).

Attached-lid containers

ALC capacities are the manufacturers' published nominal figures. Unlike the Euro boxes these cannot be derived geometrically — the wall taper is not published, and it varies down the range.

600 × 400 — the mainstream sloping range, mutually stackable and nestable across Loadhog and Schoeller Allibert Kaiman:

External HNominal LUsable / external
250 mm4473 %
310 mm5675 %
367 mm6574 %
400 mm8083 %

400 × 300: 222 mm → 22 L, 264 mm → 25 L, 306 mm → 30 L.

Two cautions, both confirmed rather than inferred:

  • The 400 mm / 80 L entry is an outlier at 83 % efficiency where the rest of the range sits at 73–75 %. Either it has less taper or the 80 L is a generous round number. It is in the catalogue as published; do not read a 60 × 40 × 40 ALC as genuinely more space-efficient than its siblings without measuring one.
  • Nominal capacity for the same external size varies by up to 6 % between ranges. At 600 × 400 × 310 mm: Loadhog 56 L, "CS" heavy-duty 55 L, recycled crocodile-lid 53 L. The catalogue uses the Loadhog/Kaiman figure. For a real purchase decision, use the specific supplier's number.

The 75 % nesting ratio is from vendor copy ("nest up to 75 % when empty") and is what drives the "Empty, nested" figures. Euro stacking containers are modelled as not nesting at all, which is right for straight-walled solid boxes but wrong for the bi-colour stack/nest variants — those are not in the catalogue.

The Kaiman height grid (264 / 308 / 365 / 400 at 600 × 400, and 222 / 264 / 306 at 400 × 300) came from IPL Schoeller's sitemap and product pages. Their product pages publish external dimensions only; internal dimensions and nesting ratios are in a leaflet PDF behind a lead-capture form, which is why the capacities here come from retailers instead.

Pulling supplier catalogues

The useful trick, and the one worth remembering: plasticboxshop.co.uk runs on Shopify, so its full catalogue including prices is available as JSON with no key and no scraping:

curl -s "https://www.plasticboxshop.co.uk/collections.json?limit=250"
curl -s "https://www.plasticboxshop.co.uk/collections/alc-containers/products.json?limit=250"
curl -s "https://www.plasticboxshop.co.uk/collections/euro-stacking-containers/products.json?limit=250"

body_html carries the spec prose (internal and external dimensions, capacity, nesting and stacking claims); variants[].price carries the price. Any Shopify storefront answers /products.json and /collections.json the same way — check for sitemap.xml naming sitemap_products_*.xml to identify one.

Lightspeed eCom storefronts do the same with ?format=json, which is how salesbridges.eu was captured. The tell is cdn.webshopapp.com in the page source. Both a category and a single product answer:

curl -s "https://www.salesbridges.eu/en/products/plastic-crates/?format=json&limit=100"
curl -s "https://www.salesbridges.eu/en/eurobox-60x40x32-cm-open-handle-euro-container-clo.html?format=json"

The category payload has no content field, so the spec table — and with it the internal dimensions — only comes from the per-product fetch. Script: scripts/capture_salesbridges.py in the dataset repo. Useful by-product: their 60 × 40 lid is listed as a €3.95 product option, a cleaner figure for the lid-cost note below than the Israeli ₪23.

What did not work, so as not to repeat it:

  • DuckDuckGo HTML, Bing and Mojeek all return bot challenges to curl.
  • schoellerallibert.com product paths 404; the live site is iplschoeller.com, reachable via schoellerallibert.com/sitemap.xml → iplschoeller.com/sitemaps/en.xml.
  • BigDug and similar render their category pages client-side — the HTML has no product data in it.
  • hudsonexchange.com has no sitemap.xml and 404s on guessed collection paths.

Volume price

The comparison metric — purchase price ÷ usable capacity, in currency per usable litre, with the same number per m³ alongside.

There is no industry-standard name for this. Freight and self-storage quote per m³, supermarket unit pricing does the same job for groceries, and container manufacturers quote per box. The term "volume price" is this tool's own.

Litres are the primary scale because every container on the market lands between roughly 0.10 and 10 per litre in any major currency, which reads better than the four-digit figures the per-m³ form produces.

Deliberately not modelled: freight and duty (which scale with external volume, not usable, and would favour the Euro box further), lid cost for Euro boxes bought with lids (add it to the unit price yourself — an Israeli 60 × 40 lid is about ₪23), and any bulk-break pricing. Currencies do not convert; one comparison is one currency, because a hard-coded FX rate would silently rot.