Warehouse Location Naming: Aisle-Bay-Level Codes and Check Digits
For dc general managers, warehouse engineers and 3pl site leads · Understand the problem

Warehouse Location Naming: Aisle-Bay-Level Codes and Check Digits: Illustrative warehouse pallet racking and peak-buffer capacity review; not a client facility.
Quick answer: warehouse location naming convention
A warehouse location naming convention writes each slot as zone, aisle, bay, level and position in fixed-width fields, such as CA-07-034-C-2. Bays ascend in the walking direction with odd numbers left and even right, levels are letters from the floor up, pick order is stored separately, and voice labels carry random check strings that differ between neighbours.
TL;DR — what you’ll learn
- Fixed-width fields with leading zeros stop sort errors and look-alike codes; three-digit bays avoid the 12-04 versus 12-40 confusion that two-digit bays invite.
- Store pick sequence as its own integer with gaps of ten, so re-slotting or one-way traffic never forces a rename of 14,400 locations.
- Random two-digit voice check strings with neighbour exclusion let only 1% of random wrong slots match; three digits cut that to 0.1%.
- In the illustrative case, renaming 14,400 locations costs $10,632 or ₹3,15,680 and pays back in 3.1 months in the US and 7.2 months in India.
Topics: warehouse location naming convention · check-digit labels · voice picking check digits · pick-path order · aisle bay level location code
All quantities, amounts, product codes and events are illustrative teaching examples.
A voice picker hears "aisle twelve, slot four, B", walks to the beam marked 12-40-B, reads back the last two digits printed on the label, and the system accepts it. The real slot, 12-04-B, is thirty-six bays back down the aisle. The order ships with the wrong pump seal, and the cycle count three days later shows a phantom shortage in one slot and a surplus in another. Nobody keyed anything wrong; the naming scheme made the two codes look and sound alike.
Location codes are a design decision that outlives the racking. A scheme with fixed field widths, an agreed walking direction, a pick sequence held apart from the code and check strings that differ between neighbours stops most wrong-slot confirmations before they become mis-shipments. This guide sets out the field structure, numbering rules for bays and levels, two kinds of check digit, label layout, GS1 encoding where trading partners need it, India's owner-wise storage rule, and the cost of renaming a live building.
- Who this is for: DC general managers, warehouse engineers and 3PL site leads setting up a new building, re-racking an old one or preparing a WMS go-live.
- What it adds: a field-width calculator, a worked GS1 modulo-10 check digit, a voice check-string assignment query, a re-label cost model in dollars and rupees, and a sign-off checklist.
What a location code has to do before anyone prints a label
A location code serves five readers at once: the WMS as a unique key, a person as a route instruction, a scanner as barcode content, a voice system as a spoken confirmation, and an auditor as a count reference. A scheme designed for only one of them, usually the database, fails the other four. Decide who owns each attribute before the first label file is generated.
The code itself should carry only position. Size, temperature class, pick or reserve status, client ownership and rack capacity change over a building's life, so they belong in the location master as attributes, not inside the string. When a reserve bay becomes a pick face, nothing printed on the beam should need to change.
Scroll horizontally to see all columns.
| Attribute | Maintained by | Approves a change | Why it sits outside the code |
|---|---|---|---|
| Zone, aisle, bay, level and position | Warehouse engineer | Site general manager | Physical position only; changes only when racking moves |
| Pick sequence number | Industrial engineer or operations analyst | Operations manager | Walk order changes with slotting and one-way rules |
| Voice check string | WMS administrator | Inventory control lead | Must be reassigned when neighbours change |
| Location type and dimensions | Warehouse engineer | Inventory control lead | Pick, reserve, floor or overflow can switch over time |
| Rated beam or shelf capacity | Engineering or safety lead | Rack inspector | Comes from the rack design, not the naming plan |
| Owner or client code at multi-client sites | 3PL account manager | Site general manager | Clients move between zones as volumes change |
Our article on warehouse slotting decisions covers which items deserve the forward pick face. This one assumes those decisions will keep changing and asks a narrower question: how should the slots be named so that every reassignment, relabel and count still points a person to the right beam?
Field order and widths: zone, aisle, bay, level and position
Write the code from the largest physical unit to the smallest, and give every field a fixed width with leading zeros. A fixed width stops "2" sorting after "12", keeps labels aligned, and lets a validation rule reject a code with a missing field. Choose widths for the largest building you might grow into, not today's layout.
- Zone, two characters: letters such as CA for chilled ambient or FZ for freezer, kept short because pickers say it on every pick.
- Aisle, two or three digits: two digits allow 99 aisles; a building with mezzanine aisles numbered separately may need three.
- Bay, three digits: 999 bays per aisle is generous, but three digits avoids the 12-4 versus 12-40 confusion that two-digit bays invite.
- Level, one letter: A for the floor or first beam, counting upward; skip I and O so they are never read as 1 and 0.
- Position, one digit: the pallet or bin slot within a bay, counted left to right as the picker faces the rack.
A building with 24 aisles of 60 bays, five levels and two pallet positions per beam holds 24 × 60 × 5 × 2 = 14,400 locations. With separators, CA-07-034-C-2 is thirteen characters, and without them twelve fit easily in the twenty-character limit discussed later for GS1 encoding. Pick one separator, a hyphen, and print it, but let scanners and voice ignore it.
Field-width and check-digit worksheet
Locations N = A x B x L x P
A = aisles, B = bays per aisle, L = levels, P = positions per bay
Example: 24 x 60 x 5 x 2 = 14,400
Digits needed for a numeric field with maximum value m:
d = floor(log10(m)) + 1 (add one digit of headroom for growth)
GS1 modulo-10 check digit on a numeric location key k1..kn:
weight 3 on the rightmost digit, then alternate 1 and 3 moving left
S = sum(digit x weight)
check = (10 - (S mod 10)) mod 10
Worked key 0120734:
4x3 + 3x1 + 7x3 + 0x1 + 2x3 + 1x1 + 0x3 = 43
check = (10 - 3) mod 10 = 7 -> encoded key 01207347
Odd-even bays and the walking direction along an aisle
Number bays so that a person walking the aisle in its normal direction meets ascending numbers, odd on the left and even on the right. With that rule, bay 034 is always across the aisle from bay 033 or 035, and a picker who knows only the number knows which side to look at. Mirror numbering, where both faces share the same numbers, doubles the chance of a wrong-face pick.
Fix the direction once, from the main cross aisle or the dock end, and keep it even where aisles are one-way in alternate directions. Readers who are tempted to number each aisle in the direction of travel for a serpentine route should resist; route order belongs in the pick sequence attribute, and the method for setting it is covered in our guide to pick path optimization.
End-of-aisle locations, floor lanes and staging areas need the same discipline. Give bulk floor lanes their own zone with the lane number in the aisle field and the depth position in the bay field, rather than inventing a different pattern. Staging lanes at the dock follow the dock door numbering, so that a load built in lane D07-02 is visibly linked to door 7.
Levels, positions and the floor-level question in pallet racking
Letter levels from the floor up and keep the letters fixed when beam heights change. Teams argue about whether level A is the floor slot or the first beam; either works if it applies to the whole building. What fails is mixing them, so that A means floor in selective racking and first beam in the carton-flow module next to it.
- Floor slots under the first beam: call them level A everywhere, even where the bay has no floor slot, and mark the unused code inactive rather than skipping the letter.
- Shelving inside a pick module: treat each shelf as a level and each divider cell as a position, so a bin label reads like a pallet label one scale smaller.
- Mezzanine floors: give each floor its own zone code rather than adding a floor field that only one area uses.
- Half-pallet or double-deep slots: use the position digit for left and right, and a type attribute for front or back depth, so the code length never changes.
Resist encoding beam height in the letter. When a site later lowers the second beam to fit taller pallets, a height-coded scheme forces a rename of every location above it, while a plain letter only needs the location master's height attribute updated. Height, weight limit and clearance checks belong in the putaway rule table, which reads those attributes at the moment a pallet is assigned.
Check digits that stop a scan or voice read at the wrong slot
A wrong-slot confirmation is caught only if the thing the picker confirms differs between neighbouring slots. Two different tools do that job. A barcode carries the full location code, so a scan of the wrong label returns the wrong code and the WMS rejects it. A voice picker cannot scan, so the label prints a short check string that the picker reads aloud instead.
The barcode symbol already has its own symbol check character, which guards against a misread of the printed bars. A location check digit guards against something else: a person keying or speaking a code by hand. For numeric location keys, the GS1 modulo-10 method in the worksheet above is well understood and catches every single-digit error. For voice, mathematical check digits are a poor choice because neighbours often share a check digit pattern.
- Random, not derived: assign each location a two- or three-digit check string at random, so that 12-04-B and 12-40-B carry unrelated values.
- Neighbour exclusion: forbid the same string within a defined neighbourhood, typically the same bay face plus one bay either side on all levels.
- Length by risk: two digits give 100 values and a 1% chance that a random wrong slot shares the string; three digits cut that to 0.1% for high-value zones.
- Printed large and alone: the check string should be the biggest characters on the label, separated from the location code so the picker cannot read the code by mistake.
-- Assign voice check strings so no two neighbours share a value
UPDATE location l
SET check_string = (
SELECT LPAD(CAST(c.val AS VARCHAR(2)), 2, '0')
FROM candidate_values c
WHERE c.val NOT IN (
SELECT CAST(n.check_string AS INT)
FROM location n
WHERE n.zone = l.zone
AND n.aisle = l.aisle
AND ABS(n.bay - l.bay) <= 1
AND n.check_string IS NOT NULL)
ORDER BY RANDOM()
FETCH FIRST 1 ROW ONLY)
WHERE l.check_string IS NULL;
The opening example failed because the check value was the last two digits of the bay field. Bays 004 and 040 share no last two digits, but the site's label printed "04" for one and "40" for the other, and a picker reading under pressure reversed them. The timestamped log below shows the shift on which it surfaced.
- 21:14, night shift: Voice task 7781-03 directs a picker to CA-12-004-B-1 for 6 units of SKU 40417; the picker walks to CA-12-040-B-1 and reads back "four zero" from its label.
- 21:15: The WMS accepts the confirmation because its rule compares the spoken value with the last two bay digits and, after an old configuration change, tolerates the two digits in either order.
- 21:40: Pack station scan of carton 0049917 records SKU 40471, which the pack check flags as a variance; the supervisor overrides it as a "labelling issue" on the item.
- Day 3, 09:05: Cycle count CC-2207 finds 6 units short in CA-12-004-B-1 and 6 units over in CA-12-040-B-1, and the customer reports a wrong part on order 55210.
- Fix applied: random two-digit check strings with neighbour exclusion, the either-order tolerance removed, and pack-check overrides limited to inventory control staff.
Voice-directed picking confirmation should use a random two- or three-digit check string held in the WMS location master, never a value derived from the bay number; with neighbour exclusion across adjacent bays, a random wrong slot matches only 1% of the time at two digits and 0.1% at three.
Label layout: character height, level colours and barcode position
A beam label has to be read in under a second from where the picker stands, which is usually not where the label designer stood. Print the check string largest, the full code second, and the barcode where a scanner can reach it without stretching. Mount labels on the beam directly below the slot they identify, with an arrow when the slot sits above the beam.
- Level colours: a fixed colour per level letter, the same in every aisle, lets a picker confirm the level before reading digits; do not reuse colours the site already uses for hazard or quality status.
- Upward arrows: where a label on beam B identifies the slot above it, print an arrow pointing up, and never mix up-arrow and down-arrow conventions in one building.
- High-level placards: reach-truck levels need long-range barcodes or a placard at floor height listing every level of the bay, because a handheld cannot read a small label eight metres up.
- Freezer labels: use a face stock and adhesive rated for the freezer's temperature and apply them before the room is pulled down, because cold beams do not take adhesive well.
Printer darkness, quiet zones and print-quality grading matter for these labels as much as for shipping labels. The point here is content: the barcode should encode exactly the code the WMS stores, with no separators, prefixes or check string that the scanner then has to strip.
Encoding internal slots with GS1 AI 414 and AI 254
Most buildings do not need GS1 location identifiers inside the racking at all; a plain Code 128 barcode of the internal code works. GS1 encoding earns its place when a location must be understood by a trading partner, for example a hospital storeroom shelf a supplier replenishes, or a customer-owned cage in a 3PL building that the customer's own scanners read.
The GS1 Application Identifier table gives two pieces. AI 414 carries a 13-digit Global Location Number identifying a physical location, ending in a check digit. AI 254 is the GLN extension component, up to 20 characters from GS1's 82-character set, and it is only valid together with AI 414. A shelf in a partner's storeroom can therefore be read as the building's GLN plus an internal code such as CA07034C2.
Internal warehouse locations shared with trading partners can be encoded in GS1-128 as AI 414, a 13-digit physical-location GLN with a modulo-10 check digit, followed by AI 254, a GLN extension of up to 20 characters; codes like CA07034C2 fit inside that 20-character limit without separators.
Multi-client 3PL sites and India's owner-wise storage rule
In India, a warehouse operator's location scheme has a legal job as well as an operational one. Rule 58(5) of the CGST Rules, 2017 requires the owner or operator of a warehouse or godown to store goods so they can be identified item-wise and owner-wise, and to facilitate physical verification by the proper officer on demand. Rule 58(4) requires books covering receipt, movement, dispatch and disposal for the period goods remain stored.
Rule 58(1) also requires warehouse operators who keep records under section 35(2) of the CGST Act, and who are not already registered, to enrol on the GST portal in form GST ENR-01. For a multi-client site, the practical effect is that an officer standing at a bay must be able to learn, from the label and the WMS, whose goods are on it. That rules out schemes where client identity exists only in a pallet licence plate nobody can scan on the spot.
Multi-client warehouses in India must store goods so a GST officer can identify them item-wise and owner-wise under CGST Rules 2017 Rule 58(5); a WMS location enquiry that returns owner, item and quantity for any slot within 30 seconds, with zero mixed-owner slots, meets that test.
- Dedicated client zones: simplest for verification; the zone code itself names the client, at the cost of space when one client shrinks.
- Shared zones with owner attribute: efficient, but the location enquiry screen must show owner, item and quantity per slot, and each pallet label must carry the owner name.
- Mixed-owner slots: avoid them; a single slot holding two owners' stock makes owner-wise identification depend on reading every carton.
The US has no federal rule on how a warehouse names or segregates internal locations, so the equivalent pressure comes from 3PL contracts, client audits and insurers rather than a regulator. A US site can therefore adopt shared zones more freely, but a 3PL running sites in both countries should design one scheme that satisfies the Indian rule and apply it everywhere.
Renaming a live building: relabel cost in dollars and rupees
A full rename of a 14,400-location building usually pays back within a year if the old scheme causes measurable wrong-slot picks. The cost is labels, a few nights of labour and WMS configuration; the saving is avoided mis-shipments. The figures below are illustrative and should be replaced with a site's own label price, wage rate and mispick cost.
Scroll horizontally to see all columns.
| Line | US DC ($) | India DC (₹) | How it is calculated |
|---|---|---|---|
| Labels printed and applied | 5,040 | 2,01,600 | 14,400 × $0.35 or × ₹14 per label |
| Relabel labour, two people over four nights | 1,792 | 14,080 | 64 hours × $28 or × ₹220 |
| WMS location master and check-string load | 3,800 | 1,00,000 | 40 hours × $95 or × ₹2,500 |
| Total one-time cost | 10,632 | 3,15,680 | Sum of the three lines |
| Annual pick lines | 1,200,000 lines | 9,00,000 lines | Site volume |
| Wrong-slot mispick rate before and after | 0.12% to 0.03% | 0.12% to 0.03% | Measured from count variances |
| Mispicks avoided per year | 1,080 | 810 | Lines × 0.09 percentage points |
| Cost per mis-shipped line | 38 | 650 | Return, re-ship, credit and recount |
| Annual saving | 41,040 | 5,26,500 | Mispicks avoided × cost per line |
| Payback | 3.1 months | 7.2 months | One-time cost ÷ annual saving × 12 |
The Indian payback is longer because labels cost a larger share of the saving at lower wage and claim costs, which is why Indian sites often relabel in phases, starting with the fastest-moving zone. How to measure the before-and-after mispick rate, and how to separate wrong-slot errors from wrong-quantity errors, is set out in our guide to the mispick rate.
Scroll horizontally to see all columns.
| Task | Fixed rule | Software or AI assistance | Person accountable |
|---|---|---|---|
| Accepting a spoken check string at a slot | Exact match only, no transposition tolerance | None | WMS administrator owns the setting |
| Validating a new location code | Reject wrong field width, unknown zone or a skipped level letter | None | Warehouse engineer |
| Reassigning check strings after a re-rack | Neighbour exclusion enforced on save | Proposing a full reassignment list for the changed aisles | Inventory control lead approves |
| Identifying a slot from a photo of a torn label | Block picking from the slot until relabelled | Reading the remaining characters to suggest the likely code | Supervisor confirms against the rack |
| Changing level lettering in one module | None; requires a change request | Listing every open task and stock record affected | Site general manager signs off |
Sign-off checklist before the label order is placed
Most naming mistakes become permanent the day the label print run arrives, so the sign-off belongs before the purchase order, not after. Walk the checklist with the engineer, the WMS administrator, an experienced picker and, at a 3PL, the account manager for the largest client.
Scroll horizontally to see all columns.
| Item | Test | Evidence | Signs |
|---|---|---|---|
| Field order and widths | Every code the same length; growth headroom in aisle and bay fields | Full location list exported from the WMS | Warehouse engineer |
| Bay numbering direction | Ascending in the standard direction, odd left and even right | Marked-up floor plan | Operations manager |
| Level letters | Same letter meaning in every racking type; I and O unused | Elevation drawings per racking type | Warehouse engineer |
| Pick sequence | Stored as its own attribute with gaps for inserts | Location master extract | Industrial engineer |
| Check strings | Random, neighbour exclusion passed, exact-match setting confirmed | Exclusion query report with zero conflicts | WMS administrator |
| Label proof | Readable from the picker's position at every level | Photographs of a test bay | Experienced picker and supervisor |
| Owner identification at multi-client sites | Owner visible at the slot and in the enquiry screen | Demonstration to the account manager | 3PL account manager |
A naming scheme that passes these tests can survive re-slotting, new racking and a WMS replacement without a single relabel. More warehouse design and operations guides are on the logistics and supply chain hub. If a new WMS or a re-rack is on your plan and you want location design included in the scope, you can share your requirements with us.
Discuss this workflow
Describe your current systems, the recurring exception and the outcome you need. Keep shipment, customer and financial records out of the initial message.
Common operational questions
Practical answers for operations, engineering, and finance teams working on warehouse location naming convention in logistics & supply chain.
Should a location code sort in the order pickers walk?
What is a check digit on a warehouse location label?
Do warehouse locations need GS1 identifiers?
Does Indian GST law affect how a 3PL names its locations?
References
Sources checked 13 November 2026. US and India statutory authorities and vendor documentation support platform facts; the worked examples and diagrams are original.
- GS1 - Application Identifiers reference data (AI 414 and AI 254)Machine-readable AI table checked for AI 414 (N13 with check digit, physical location GLN) and AI 254 (X..20, requires AI 414). Accessed 13 November 2026.
- GS1 - General Specifications, check digit calculation for GS1 keysStandard modulo-10 method with alternating weights 3 and 1 from the rightmost digit. Accessed 13 November 2026.
- CBIC - Central Goods and Services Tax Rules, 2017, Rule 58Sub-rule (1) enrolment in GST ENR-01, sub-rule (4) warehouse books and sub-rule (5) item-wise and owner-wise storage. Accessed 13 November 2026.
- ASC X12 — EDI Supply Chain & Transportation Transaction Sets (204/210/214/856/940/945)US standard for electronic data interchange across shippers, 3PLs, and motor carriers.
- FMCSA — 49 CFR Part 395 Hours of Service & Electronic Logging Devices (ELD)US federal motor carrier dispatch and driver duty-status compliance mandate.
- ULIP & NIC GST E-Way Bill Portal — Unified Logistics & Rule 138 ComplianceIndian statutory goods-in-transit and multi-modal logistics verification framework.