一个商品,一个可识别身份
SKU应当描述能够被独立采购、存储、销售和盘点的最小库存单位。例如同一款运动鞋的黑色42码与白色42码,外观相似但不能共用一个SKU;一箱24瓶与单瓶销售,也不能只靠备注区分。
我在看多仓库存问题时,不会先问企业有没有一套很长的编码规则,而会先问四件事:同一商品是否只有一个身份、不同包装是否被正确区分、每个仓的库存是否可比、订单和补货是否使用同一套口径。只要其中一项失真,系统里的库存数字就可能看似准确,实际却无法支持经营判断。
SKU应当描述能够被独立采购、存储、销售和盘点的最小库存单位。例如同一款运动鞋的黑色42码与白色42码,外观相似但不能共用一个SKU;一箱24瓶与单瓶销售,也不能只靠备注区分。
编码统一之后,还需要绑定品类、规格、单位、供应商、保质期、包装层级和仓储条件。否则仓库只是“不会重复建品”,但采购仍然无法判断哪个规格真正缺货。
积压通常不是某一天突然发生,而是重复建品、重复采购、错误安全库存、跨仓看不见余货、促销预测未回收等问题连续叠加的结果。SKU治理可以让这些问题被定位和量化。
库存健康不等于库存越低越好,而是让正确的货在正确的仓,以合理数量停留合理时间。评价编码效果,应该看库存周转、库龄、缺货率、调拨次数和报损率,而不是只看编码完成率。
单仓企业也会遇到库存不准,但多仓环境会把同一个小问题放大。总部看到的是汇总库存,仓库看到的是实物库存,电商看到的是可售库存,门店看到的是在途和预留库存,财务看到的又是按成本计价的库存。没有统一SKU和库存状态,这些数字都可能“各自正确、彼此矛盾”。
采购人员按供应商名称建立“蓝牙耳机-白色”,运营人员按平台标题建立“无线耳机白色款”,仓库又按外箱标签建立“BT-EAR-W”。如果三个名称没有被映射到同一主SKU,系统就会把一批真实的货拆成三批逻辑库存。
这种问题常见于企业从线下转向线上、从单仓扩展到区域仓时。旧系统里的货号、平台SPU、供应商货号和内部SKU并存,人员通过搜索习惯找到商品,最终形成“知道的人能操作,不知道的人会重复建品”的隐性规则。
一箱、六盒、单件分别对应不同销售动作,但系统只有一个SKU。采购按箱入库,仓库按盒拣货,门店按件销售,系统如果没有换算关系,库存数量就无法比较。看起来库存有很多,实际可能只够完成几笔订单;也可能因为单位混乱被重复补货。
解决这类问题时,我会把“基础库存单位”和“交易包装单位”拆开管理。基础SKU描述最小可售单元,包装条码、箱规、拆零规则和换算率放在包装层级中维护,并明确哪一种单位参与安全库存计算。
总部报表显示A仓有100件、B仓有80件,于是采购暂停补货。但A仓的100件中有60件已经锁定给团购订单,B仓的80件中有30件正在质检,剩余货物又因为区域配送成本过高,无法及时服务目标客户。总库存充足不代表可售库存充足。
因此库存看板不能只显示“账面数量”,至少要拆分现有、可用、已分配、在途、质检、冻结、退货和报损等状态。SKU是状态汇总的主键,主键错误,所有状态都会被放错地方。
某个SKU在大促前被预测为热销,企业按峰值备货;活动结束后,预测没有回收,系统仍然沿用高安全库存。接下来几周销量回归常态,仓库却不断补货,慢动销在多个区域仓重复沉淀。
这里的根因不只是预测偏差,也包括活动SKU没有独立标识、生命周期没有被记录、促销结束没有触发复盘。好的SKU体系应当允许我们区分常规款、活动款、季节款、试销款和淘汰款。
确定商品身份、属性、单位、包装与生命周期,建立唯一主键。
让采购、入库、上架、拣货、调拨、销售使用同一映射关系。
区分现有、可用、预留、在途、冻结、质检和退货等数量。
按SKU、仓、渠道和周期观察销量、周转、缺货及补货建议。
按库龄、动销、毛利和调拨成本选择促销、调仓、退供或停采。
| 岗位 | 最关心的问题 | 需要读取的SKU字段 | 如果字段不统一会发生什么 |
|---|---|---|---|
| 采购 | 该补哪一种、补多少、何时到 | 供应商、采购单位、交期、最小起订量、在途 | 重复向多个供应商下单,或把包装数量当成销售数量 |
| 仓库 | 收到的货放哪里、拣哪一个 | 条码、规格、库位、批次、效期、包装换算 | 上架错位、拣货错发、盘点差异增加 |
| 销售 | 能不能承诺客户、哪个仓发货 | 可售库存、预留库存、区域仓、渠道限制 | 超卖或承诺了无法及时配送的库存 |
| 财务 | 库存价值与损耗是否合理 | 成本、税率、库存状态、报损、退货 | 账面库存与实际价值不一致,积压成本被低估 |
| 管理层 | 库存是否健康、现金是否被占用 | 周转天数、库龄、动销率、缺货率、库存金额 | 只能看到总金额,无法判断问题发生在哪个SKU和仓 |
我不建议把所有库存异常都归结为“仓库执行不认真”。很多异常是制度、字段和指标共同造成的。下面这些误区在企业扩张时尤其容易出现,越早识别,后续清理的成本越低。
编码长度不能直接代表管理水平。把供应商、年份、颜色、仓库、渠道、价格全部塞进编码,短期看起来信息丰富,长期却会导致编码频繁变化。商品换一个仓、换一位供应商就要重建SKU,历史销量因此被切断。
更稳妥的做法是保持SKU身份相对稳定,把会变化的仓库、供应商和渠道放在关联字段中。编码承担唯一识别,属性字段承担分析维度,二者不要混为一谈。
备注适合补充说明,不适合承载库存决策。若颜色、尺码、容量等关键属性只存在于自由文本中,报表无法按属性聚合,系统也不能准确比较同系列商品的销量和库存。
关键属性应该结构化,例如颜色=黑色、尺码=42、容量=500ml。这样才能回答“哪个尺码缺货”“哪个颜色积压”“同系列中哪个规格贡献毛利更高”。
总库存是一个结果数,不是健康度指标。两家企业都拥有10000件库存,一家平均库龄12天,另一家平均库龄180天,资金占用和未来损失完全不同。
我会把库龄分为0至30天、31至60天、61至90天、91至180天和180天以上,并同时观察动销、毛利、退货率和效期。库龄越长,处理动作越应该从补货转向消化和止损。
“可售库存低”不一定意味着“需要采购”。可能是另一仓有可调拨库存,也可能是库存被订单预留、正在质检,或者销售计划已经下调。直接采购会把局部缺口变成全网过量。
补货决策应当同时检查全网可用量、在途量、调拨成本、供应商交期、需求趋势和目标服务水平。SKU编码统一后,这些检查才能在同一个粒度上完成。
重复SKU需要治理,但不能只看名称相似就合并。不同批次、材质、包装、售后政策、成本或法规属性可能要求独立管理。错误合并会造成销售承诺、成本核算和追溯风险。
合并前至少进行身份、规格、包装、条码、供应商、历史交易和实物抽样七项核验。能证明为同一库存单位时才合并,否则建立主SKU与别名映射。
系统可以让规则被执行,但不会自动替企业做出正确规则。若主数据导入前没有清洗,系统会把错误更快、更稳定地复制到每个仓和每个渠道。
上线后还需要设置数据责任人、变更审批、异常提醒和月度复盘。把SKU质量纳入日常管理,才能避免项目结束三个月后再次出现重复建品。
面对SKU混乱,我不会一上来就要求全部重建。重建会影响接口、条码、历史报表和员工习惯,必须先判断问题的性质。下面五层判断法可以把“数据问题”和“经营问题”分开处理。
先通过实物、包装、条码、规格和交易规则判断两个记录是否代表同一件可独立销售的货。如果只是名称不同但实物和交易规则完全一致,可以建立别名映射;如果颜色、容量、尺码、材质或售后属性不同,就必须保留独立SKU。
判断输出:唯一主SKU、合法别名、必须拆分的SKU清单。
将采购单位、库存基础单位、销售单位和物流包装单位分别记录。例如采购单位是箱,库存单位是盒,销售单位是瓶,就要明确1箱=6盒、1盒=24瓶的换算关系,并说明是否允许拆箱。没有换算关系的数字不能直接相加。
判断输出:基础单位、包装层级、换算率、拆零规则。
现有库存表示仓库账上数量,可用库存表示在当前规则下可以承诺给客户的数量。已分配、冻结、质检、退货、报损和在途都不能未经判断直接计入可售。多仓企业还要明确哪些仓能服务哪些区域和渠道。
判断输出:库存状态字典、可用库存公式、渠道和区域可售规则。
如果销售数据按SPU统计,库存按SKU统计,预测结果就不能直接下发到具体规格。应先把历史订单、退货、促销和渠道数据映射到可执行的SKU粒度,再决定安全库存。对于新款或低销量SKU,可以使用系列级参考,但必须标注为估算。
判断输出:需求粒度、统计周期、异常销量处理规则、预测来源。
看板发现积压只是开始。每一条异常都要落到动作:停止采购、跨仓调拨、组合销售、折扣处理、退供应商、拆分包装或核对实物。动作需要负责人、预计释放数量、预计完成日期和复盘结果,否则异常只会在报表中反复出现。
判断输出:异常工单、动作状态、结果指标、复盘周期。
我建议至少同时看五组指标:库存金额与占用资金、周转天数与周转率、库龄结构与慢动销金额、服务水平与缺货率、调拨与报损成本。单独追求低库存,可能让缺货上升;单独追求高服务水平,又可能制造更多积压。
可用库存 = 现有库存 − 已分配库存 − 冻结库存 − 质检待定库存 + 合规可用的在途库存
这里的“在途库存”不能无条件加回,需要根据预计到货日期、供应商履约稳定性和订单承诺规则决定。对于跨区域仓,还应增加“可服务区域”和“配送时效”两个约束,避免看见数量却无法兑现。
一个总库存数字很难指导动作。可执行的分析要把SKU作为主轴,同时展开仓库、渠道、供应商、时间和生命周期。下面的图表数据均为虚构的示例数据,用于演示分析方法,不代表真实企业表现。
假设某多仓企业库存金额合计为100%,观察库龄结构后,管理重点应从“总金额”转向“高库龄金额的来源SKU”。
解读:若91天以上库存占比持续升高,应优先检查促销结束、预测未回收、错误补货和跨仓调拨障碍,而不只是继续压低采购总额。
以下是一个用于项目管理的示例进度,不代表项目承诺。完成度需要以抽样通过率和业务验证为准。
解读:主数据导入完成不等于治理完成,单位换算、库存状态和异常闭环仍需要业务人员验证。
模拟三个仓库在连续六个月的平均周转天数。图表用于演示如何观察趋势,不证明重编码必然带来同样结果。
解读:趋势改善还需要结合销量变化、采购周期和促销活动验证,不能把所有改善都归因于SKU编码。
我建议将“可定位、可解释、可行动”作为看板字段筛选标准。字段太少,管理层无法判断;字段太多,用户无法快速使用。首屏可以保留以下核心字段,点击或下钻后再查看详细交易。
下面的企业、数据和结果全部为虚构的分析示例,仅用于说明方法。这里优先采用E数通作为数据分析与经营看板的示例工具:重点不在宣传某个确定结果,而在展示如何把分散数据汇总、建模、下钻并转成动作。
示例项目先不直接删除旧编码,而是建立主SKU、历史别名、平台商品ID、供应商货号和条码之间的映射。每个映射记录都要有来源、确认人和确认时间,避免“凭印象合并”。
主数据表还增加颜色、规格、容量、基础单位、包装换算、生命周期、效期管理和可售渠道等结构化字段。这样后续分析可以按属性筛选,而不需要在商品名称中猜测。
示例中把库存拆成现有、已分配、可用、在途、质检、冻结、退货和报损八类,并为每一类定义来源系统和计算规则。看板不再把所有数量简单相加,而是同时展示“账面规模”和“可兑现规模”。
当业务人员点击某个高库龄SKU时,可以继续看到仓库、批次、入库日期、近90天销量和未完成动作,从而把一个数字变成可以核查的任务。
示例项目将库存异常分成四种:重复编码、慢动销、局部缺货、状态不明。每种异常对应不同动作,不能用统一的“继续观察”处理。动作列表中保留责任人、预计处理量、截止日期和结果。
例如,华东仓慢动销但华南仓同SKU缺货时,优先评估调拨;全网都慢动销时,先停止补货并评估组合销售或退供;高销量但可用库存不足时,检查预留与质检,而不是立刻放大采购量。
| 观察信号 | 可能原因 | 需要核验的字段 | 优先动作 | 复盘指标 |
|---|---|---|---|---|
| 同规格出现3个以上编码 | 历史系统迁移、平台货号未映射 | 条码、规格、包装、历史订单 | 确定主SKU,保留别名映射并冻结新建 | 重复编码数、映射通过率 |
| 库龄超过90天且近30天无销量 | 活动结束、预测未回收、区域错配 | 生命周期、活动标记、仓间销量 | 停止采购,评估调拨、促销或退供 | 高库龄金额、库存释放量 |
| 总库存充足但频繁缺货 | 库存被预留、仓库不可服务目标区域 | 可用库存、订单分配、区域规则 | 调整分仓或释放无效预留 | 缺货率、订单满足率 |
| 系统数量与实盘差异较大 | 单位换算、损耗、退货未入账 | 基础单位、盘点记录、退货状态 | 抽样盘点并修正转换关系 | 盘点差异率、调整次数 |
| 调拨次数持续增加 | 补货按仓独立计算,未看全网需求 | 仓间销量、调拨成本、交付时效 | 建立全网库存与区域服务模型 | 调拨频次、调拨成本、服务水平 |
示例说明:进度条表示项目阶段完成情况,不等同于库存改善百分比。真正的结果要看高库龄金额、缺货率和周转等经营指标。
Excel适合一次性的清洗和抽样,但多仓SKU问题具有持续变化的特点:新商品不断增加,订单不断流入,库存状态不断变化,供应商交期也会改变。如果每周依靠人工复制粘贴,团队很难保证口径一致,也很难追踪上周的异常是否被真正解决。
以E数通为例,合理的使用方式是把ERP、WMS、订单、采购和渠道数据按统一主键汇总,在看板中提供总览、明细、趋势和下钻。工具不代替业务判断,但能让判断基于同一份数据,并减少重复整理时间。
企业规模、SKU数量、仓库数量、商品生命周期和系统基础不同,治理路径也应该不同。下面我把常见情况拆开,便于团队先找到最小可行切口,再逐步扩大范围。
优先做主数据清单、基础单位、重复编码和库龄分层,不必一开始建设复杂的全网调拨模型。可以选择销量最高、金额最高和最容易混淆的前100个SKU做样板,验证规则后再推广。
重点是统一主SKU和库存状态,并把仓库作为分析维度。企业可以先选择一个品类或一个区域仓做试点,打通采购、库存和订单数据,再处理跨仓可见性和调拨规则。
重点不只是清洗存量,还要控制新增质量。需要建立主数据治理角色、字段字典、变更审批、接口映射和自动校验。对高频上新的企业,编码申请必须嵌入商品生命周期流程。
不要先花几个月设计完美编码,而应先建立积压清单。按库存金额和库龄分成四组:高金额高库龄、高金额低库龄、低金额高库龄、低金额低库龄。高金额高库龄需要管理层直接决策,低金额高库龄可以批量清仓,高金额低库龄要重点防止继续补过量。
同时冻结明显重复的新建SKU,避免清理过程中继续产生新的分叉。清单中的每个SKU都要有下一动作和预计处理量,只有库存从异常池中真正释放,治理才算产生经营价值。
先检查“缺货”是否是真缺货。把客户订单、预留库存、质检库存、在途库存和区域仓库存拆开,确认是需求预测偏低、库存分配错误、仓库服务半径不合理,还是入库状态没有及时更新。很多企业同时存在积压和缺货,根因正是库存没有被放到需要它的地方。
在解决缺货时,也要设定库存上限、补货周期和调拨成本,防止为了提高服务水平而把所有仓库都堆满。服务水平与资金占用必须放在同一个决策面上。
| 成熟度 | 当前特征 | 第一个月做什么 | 三个月后看什么 | 不建议做什么 |
|---|---|---|---|---|
| 起步期 | 依靠表格和经验,重复SKU较多 | 清理重点SKU,建立必填字段和责任人 | 重复建品率、负库存、盘点差异 | 一次性重建全部历史编码 |
| 规范期 | 有系统,但仓与渠道口径不一致 | 统一状态、单位和主数据映射 | 可用库存准确度、跨仓可见率 | 只看系统库存,不做实物抽样 |
| 协同期 | 多仓多渠道,补货与调拨复杂 | 建立全网需求和区域服务规则 | 周转天数、缺货率、调拨成本 | 按单仓独立追求最高库存 |
| 优化期 | 数据较完整,需要精细化经营 | 按生命周期和毛利分层管理 | 库存回报、库龄金额、预测偏差 | 用单一KPI考核所有品类 |
管理上最危险的不是有取舍,而是假装没有取舍。例如统一编码会带来迁移成本,追求高服务水平会增加库存占用,仓库越分散越贴近客户却越难集中管理。把这些代价提前说清楚,方案才更容易得到业务团队支持。
| 决策主题 | 方案A | 方案B | 适合情形 | 我的建议 |
|---|---|---|---|---|
| 历史重复SKU | 立即合并 | 主SKU+别名映射 | 身份完全一致可合并;历史接口多时需稳妥迁移 | 先映射、后验证、再分批合并,避免历史数据断裂 |
| 仓库布局 | 集中库存 | 区域分仓 | 订单集中且时效要求低适合集中;区域时效要求高适合分仓 | 用需求密度、配送时效和调拨成本共同评估 |
| 安全库存 | 偏高保障服务 | 偏低减少资金 | 供应不稳定或缺货损失高时偏高;商品易过期时偏低 | 按SKU生命周期和服务等级分层,不采用统一比例 |
| 编码内容 | 编码携带大量属性 | 编码简单稳定、属性字段独立 | 属性长期稳定且系统能力弱时可适度编码;多变环境应拆字段 | 建议保持短且稳定,把变化属性放到主数据字段 |
| 分析工具 | 人工表格 | 自动化看板 | 数据量小且变化慢可用表格;多仓多渠道更适合看板 | 先做一个可复用看板,再逐步自动化,不追求一次到位 |
| 积压处理 | 大幅折扣快速回款 | 慢速销售保持毛利 | 现金压力大或效期临近适合快速处理;品牌和毛利敏感时需分层 | 按库龄、毛利、效期和替代性组合决策 |
可追溯性、单位准确性、批次和效期管理、库存状态清晰、历史交易可解释。这些内容一旦被牺牲,后续看板再漂亮,也无法支撑审计、售后和经营判断。
复杂预测模型、自动补货、全链路实时同步、精细化配送成本模型。企业可以先用规则和固定周期建立稳定基线,再根据数据质量逐步提高自动化程度。
服务水平目标、清仓折扣、调拨阈值、安全库存和停采标准。这些不是IT或仓库单独能够决定的经营规则,需要销售、采购、财务和管理层共同确认。
库存积压会反复出现,是因为商品不断上新、渠道不断变化、供应商不断调整。清理存量只是起点,长期效果取决于新增SKU是否经过控制、异常是否及时发现、动作是否有结果记录。
新商品申请必须填写规格、单位、包装、条码、供应商、生命周期和可售渠道。系统或表格先检查名称相似、条码重复和关键字段缺失,再进入审批。
价格、供应商和仓库可以变化,但不能随意改变主SKU身份。若实物或销售规则改变,应走拆分流程;若只是名称或渠道变化,应更新属性或建立别名。
每天或每周查看负库存、重复条码、异常高库龄、可用库存为负、单位换算缺失和订单与实物差异,并按严重程度分派给责任人。
每月复盘新增SKU数量、重复率、积压金额、缺货率、盘点差异和调拨成本。指标变化要能回到具体规则,不能只在月报中描述“库存有所改善”。
| 字段组 | 字段示例 | 管理目的 |
|---|---|---|
| 身份 | 主SKU、历史别名、平台ID、条码 | 保证不同系统识别同一实物 |
| 属性 | 品类、品牌、颜色、尺码、容量、材质 | 支持筛选、分析和同类比较 |
| 数量 | 基础单位、采购单位、销售单位、换算率 | 避免不同包装数量直接相加 |
| 供应 | 供应商、交期、最小起订量、采购状态 | 支持补货和停采判断 |
| 生命周期 | 试销、常规、活动、季节、清仓、停产 | 匹配不同库存策略 |
以下回答尽量用业务语言解释技术术语,并给出可以落地的判断方法。示例中的商品、数字与场景均为虚构说明,不代表任何特定客户的真实情况。
我经常看到企业把供应商货号直接当成内部SKU,但同一个供应商可能更换货号,不同供应商也可能用不同编码描述同一件商品。SKU是企业内部可持续管理的库存身份,应该稳定地连接采购、仓储、订单和分析;供应商货号可以作为外部映射字段保存,而不应成为唯一主键。这样即使换供应商,历史销量、库存和库龄仍然能够连续。
我曾经见过把年份、仓库、渠道、供应商和促销批次全部写进编码的设计,表面上非常详细,实际却导致同一商品不断产生新身份。编码越详细不等于库存越清晰,关键是稳定身份与结构化属性是否分工明确。建议把不经常变化的核心身份保持稳定,把仓库、渠道、活动和供应商等变化信息放到独立字段,避免历史数据被切碎。
通常不需要因为仓库不同就创建不同SKU。SKU描述商品本身,仓库应该作为库存事实的独立维度,例如“主SKU+仓库+批次+状态”共同记录数量。若把仓库写进SKU,跨仓汇总会变得困难,也会让调拨像商品变更一样复杂。只有当不同仓库的实物、包装或销售规则真的不同,才需要拆成独立SKU。
SKU编码规范不会自动消化库存,但会让积压的来源被看见。没有统一编码时,同款货可能分散在多个记录中,企业低估真实库存并重复采购;统一后,可以看到全网总量、各仓库龄、近90天销量和在途数量,再决定停采、调拨或促销。因此编码是识别和分析的基础,库存下降还需要需求判断、补货规则和异常动作共同完成。
可用库存不是仓库账上的全部数量,而是经过预留、冻结、质检、区域和渠道规则筛选后,可以被当前订单承诺的数量。例如某仓有100件,20件已分配给未发订单,10件正在质检,15件只允许门店销售,那么对某个电商区域来说,可用量可能只有55件。企业需要统一可用库存公式,并在看板中同时展示现有量和不可用原因。
ERP和WMS通常负责交易记录和仓储执行,但经营人员还需要跨系统、跨仓库、跨渠道比较趋势。若每次都人工导出采购、订单和库存表,再手工匹配SKU,容易出现口径不一致、版本不一致和无法追踪处理结果的问题。以E数通为例,分析看板可以把系统数据按统一主键汇总,提供总览、下钻和趋势,帮助团队把“找数据”变成“看异常、做动作”。
不能只按名称相似度合并。至少要核验实物、条码、规格、包装层级、销售单位、成本、供应商、售后政策和历史交易;对于食品、化妆品或需要批次追溯的商品,还要核验效期和法规属性。如果无法证明是同一个可独立管理的库存单位,建议保留不同SKU,同时建立主SKU与别名关系。先映射再合并,比一次性删除更安全。
我建议并行但分层推进:先对重点SKU做实物和身份盘点,确认主SKU与单位,再同步定义库存状态和补货口径。若只做编码而不核对实物,错误会被固化;若只盘点而不统一身份,结果很快会重新分散;若只改补货规则而不处理可用库存,采购建议仍然会失真。可以用一个品类或一个仓做四周试点,验证后再扩展到全网。
当SKU身份唯一、单位清楚、状态可见、需求可追踪、动作有闭环时,库存管理才真正从“仓库记账”走向“全链路经营”。这套方法不要求企业一次性推翻现有系统,而是先把最影响现金和服务水平的SKU找出来,建立可验证、可复制的治理节奏。

