我第一次真正意识到"商品组合优化"比"单品分析"难十倍,是在一家做家居收纳的中型电商公司做数据顾问的时候。当时他们仓库里躺着 417 个 SKU,老板拍着桌子说"把不赚钱的砍掉一半,库存周转立马就好了"。结果运营团队砍掉了 180 个 SKU,第二个月 GMV 掉了 23%,连带率从 1.6 掉到 1.2,客单价跌了 41 元。砍掉的不是"不赚钱的",而是那些单价低、毛利薄、但承担"凑单引流"和"关联带出高毛利品"功能的组合型商品。
这个案例我后来在至少五个不同类目的项目里见到过类似版本,组合优化的失败,几乎从来不是"数据不够",而是把结构问题当成了单品问题处理。这篇手册就把这个案例从头拆到尾,把每一步的判断标准、岔路和返工都摆出来,而不是给你一个漂亮的框架图。
市面上关于商品分析的教程,90% 卡在同一个地方:它们能告诉你"用 ABC 分类""看价格带""做购物篮分析",但不会告诉你,A 类占比到多少算健康、价格带断层到什么程度必须调整、关联强度多高才值得为它设计组合推荐。没有判断标准,你做完一堆透视表,依然不知道下一步该动手还是该等着。
我把这个家居收纳案例的完整拆解流程走了一遍,先抛出几个反常识的结论,后面用案例逐步验证。
如果你的目标是"跟着一个真实案例走完从诊断到调整的全流程",这篇内容就是为这个目标写的。每一步我都会标注:这一步能省吗、判断标准是什么、数据条件不足时怎么降级处理。

先把案例交代清楚,避免你误以为是某个真实品牌的经营数据。这是一个基于真实项目脱敏重构的复合案例,数据为示意性数据,但业务逻辑、指标阈值和分析步骤都来自我实际做过项目。
案例主体设定为一家中型家居收纳品牌,线上为主,覆盖天猫、京东和抖音三个渠道,主营收纳盒、置物架、挂钩、衣物整理袋、桌面收纳等品类。核心背景如下:
| 维度 | 优化前状态 | 问题表现 |
|---|---|---|
| 在售 SKU 数 | 417 个 | 近一年新增 156 个,缺少淘汰机制 |
| 月动销 SKU 数 | 228 个 | 动销率 54.7%,近一半 SKU 零动销 |
| 整体毛利率 | 38.2% | 低于同类目头部约 6 个百分点 |
| 库存周转天数 | 96 天 | 同类目健康区间约 60-75 天 |
| 连带率 | 1.6 件/单 | 组合推荐基本靠人工,无结构策略 |
| 客单价 | 112 元 | 价格带分布集中,缺少中间过渡 |
这个起点是我特意选的,它不是"病入膏肓"的极端案例,而是大量中型电商的真实状态:有点乱,但还没到必须大动手术的程度。这种状态最难做决策,因为不优化也能活,优化错了损失却很直接。
组合优化的分析地基是一张"SKU 全维度明细表",每个 SKU 一行,至少包含以下字段。我在实际项目里见过太多团队拿着一张只有销量和标题的表就开始分析,最后结论全是错的。
订单明细表往往是最容易被忽略的一张,但没有它,第四章的关联分析就只能空谈。它的存储量通常比较大,我建议按近 90 天单独拉一份,够用。
坑一:重复 SKU 编码。 这个案例里 417 个 SKU 中有 19 个编码重复,原因是同一个商品在不同渠道建了不同编码,运营在导出时用商品标题做了二次合并,导致销量被重复计算。处理方法是用"商品标题+规格"作为唯一键做一次交叉核对。这个坑的隐蔽性在于,重复的往往都是畅销品,不查会显著高估头部集中度。
坑二:退货未剔除。 初期分析用的是"下单量",不是"净销量"。衣物整理袋这个品类退货率高达 21%(主要是尺寸不符),如果不剔除,它的动销表现会被严重高估,甚至在 ABC 分类里被误判成 A 类。必须用净销量 = 销量 – 退货量。
坑三:季节性未标注。 收纳品类有强季节性,换季前后(3-4 月、9-10 月)销量会整体抬升。如果直接拿旺季数据做分层,会把大量"季节性冲量"的 SKU 误判为长期主力。做法是至少对比同比数据,或对季节性品类单独加一列"季节系数"做修正。

ABC 分类的核心逻辑很简单:按某个指标排序后累计占比。行业默认口径是 A 类累计销售额占 70%-80%、B 类占 15%-20%、C 类占 5%-10%。但我要提醒你,这个默认口径不是圣旨,它只是"典型的帕累托分布"。真正该问的是:你的类目是不是符合帕累托结构。
操作方法三步走:
听起来机械,但阈值设定有讲究。这个案例里,累计销售额到 70% 时命中了 63 个 SKU(占 15.1%),到 90% 时命中 152 个。如果照搬"20% SKU 贡献 80% 销售"的说法,就会得出一个错误的分层。
分层结果出来后,我做的第一件事不是看 A 类,而是看 C 类。这个案例里 C 类有 265 个 SKU,合计贡献不到 10% 销售额,但占了近一半库存面积。这是"结构臃肿"的信号,但不是"该砍"的铁证,后面还要看它们的关联角色。
| 分类 | SKU 数 | SKU 占比 | 销售占比 | 平均毛利率 | 库龄 90 天以上占比 |
|---|---|---|---|---|---|
| A 类 | 63 | 15.1% | 70.3% | 42.1% | 6% |
| B 类 | 89 | 21.3% | 20.1% | 37.5% | 18% |
| C 类 | 265 | 63.6% | 9.6% | 33.8% | 47% |
注意 C 类那一行:近一半的 SKU 库龄超过 90 天,毛利率也最低。这时候"砍"的直觉非常强烈。但,如果这 265 个 C 类里有一部分是"关联带出型商品",砍掉它们会直接伤害 A 类。这一步的结论只能定性为"C 类需要进一步筛查",不能直接下刀。
这是大多数人最想知道、却最少被回答的问题。基于我做过的零售和电商项目,给一组参考区间,注意,这是综合经验得出的参考基准,不是权威统计,你要结合自己类目调整。
这个案例 A 类占比 15.1%,属于健康。真正的问题在 C 类的质量,不是数量问题,是"大量低效 SKU 占用资源且互相重叠"的结构问题。
只用销售额做 ABC 分类,会制造两种典型误判。第一种是把"高销量低毛利"的引流品捧成 A 类,给它配上最好的资源位和最多的采购预算,结果越卖越亏。第二种是把"低销量高毛利"的利润品打入 C 类,直接砍掉,结果整体毛利率反而下降。
这个案例里就有一个典型:一款折叠收纳凳,月销只有 92 件,销售额排在 180 名开外,销售额口径下妥妥的 C 类。但它的毛利率是 61%,是全场最高,而且是 A 类主力置物架的高频关联购买品。这样的 SKU 绝对不能砍。所以正确的做法是用销售额和毛利额双维度做交叉分层。

价格带分析被跳过的原因很实在:它不像 ABC 分类那样有现成阈值,也不像销量排名那样直观。但它恰恰是组合结构问题的"照妖镜"。商品组合的本质是"一组价格锚点和功能角色的搭配",价格带断层意味着你的组合无法引导用户从低价往上买,客单价自然卡死。
这个案例的客单价 112 元,看起来还行,但当我们把价格带拉开看,问题立刻暴露。
价格带划分的粒度取决于类目价格跨度。通用做法是:把价格从低到高按区间分段,每段的价格跨度控制在 20%-30% 左右。家居收纳这个类目价格从 9.9 元到 399 元,我把它分成了 6 段。
然后做一张"价格带 × 一级品类"的矩阵表,每个格子里填两个数字:SKU 数和销售额占比。这张表一拉出来,结构问题就藏不住了。
| 价格带 | 收纳盒 | 置物架 | 挂钩 | 整理袋 | 桌面收纳 | 销售额占比 |
|---|---|---|---|---|---|---|
| 9.9-29 元 | 18 | 0 | 46 | 12 | 9 | 31% |
| 29-59 元 | 37 | 8 | 14 | 28 | 22 | 28% |
| 59-99 元 | 24 | 19 | 2 | 11 | 16 | 19% |
| 99-159 元 | 4 | 13 | 0 | 3 | 3 | 7% |
| 159-259 元 | 2 | 11 | 0 | 1 | 1 | 9% |
| 259 元以上 | 1 | 7 | 0 | 0 | 0 | 6% |
看到问题了没有?99-159 元这个价格带,收纳盒只有 4 个 SKU、桌面收纳只有 3 个、挂钩直接断档,而它的销售额占比只有 7%。 这是一个典型的"价格带断层",用户在 59-99 元看完之后,要么跳不下去继续买便宜的,要么被断层卡住流失,很难自然过渡到 159 元以上。
问题一:价格带断层。 99-159 元区间是"客单价提升的咽喉",但供给严重不足。用户想多花点钱买更好的,你没有。这直接解释了为什么客单价卡在 112 元,大部分成交都压在 99 元以下(合计占 78%),高价带又缺乏承接。
问题二:品类重叠。 收纳盒在 9.9-29、29-59、59-99 三个价格带都有密集布局(合计 79 个 SKU),但很多 SKU 之间功能和规格高度重叠,只是包装或尺寸的微调。这种"同价格带内的自我竞争"会分散流量、拉低整体转化,是 C 类 SKU 臃肿的一个重要成因。
这里给一组我实际在用的判断条件,你可以直接对照:
这里我特别想强调第 4 条。很多运营把客单价上不去归因于"流量不精准",但实际是价格带结构没给用户往上走的台阶。 这个案例里,如果当时一味去投更精准的流量,客单价大概率还是上不来。

一提到购物篮分析,很多人立刻想到复杂的关联规则算法、支持度、置信度、提升度。我直接说:在中小电商场景下,你不需要跑 Apriori 算法,一张订单明细表加一个数据透视就够了。
核心逻辑只有一句话:统计"同时出现在同一订单里的 SKU 组合",看哪些组合出现频率明显高于随机。 具体三步:
第三步的"关联发生率",本质就是置信度,只是换了个不吓人的说法。用数据透视表就能实现,SQL 也能写,代码量不到 20 行:
-- 购物篮关联分析:找出高频共现的SKU组合 -- 输入表:order_detail(order_id, sku_id) SELECT a.sku_id AS sku_a, b.sku_id AS sku_b, COUNT(DISTINCT a.order_id) AS 共现订单数, ROUND( COUNT(DISTINCT a.order_id) * 1.0 / (SELECT COUNT(DISTINCT order_id) FROM order_detail WHERE sku_id = a.sku_id), 4 ) AS 关联发生率 FROM order_detail a JOIN order_detail b ON a.order_id = b.order_id AND a.sku_id GROUP BY a.sku_id, b.sku_id HAVING COUNT(DISTINCT a.order_id) >= 30 -- 过滤低频组合 ORDER BY 共现订单数 DESC;
这段 SQL 在近 90 天订单明细上跑,几百万行数据大概几秒到几十秒,完全够用。你不需要任何高级工具。
在这个案例里,跑出来最有价值的发现有三个。
发现一:置物架 + 挂钩的强关联。 主推款置物架(A 类)和某款免钉挂钩的关联发生率达到 34%。也就是说,每 100 个买了这款置物架的订单里,有 34 个同时买了这款挂钩。这个挂钩本身销量不高,销售额口径下是 C 类,但它是置物架的"配件型强关联品"。砍掉它,置物架的完整使用场景就被破坏。
发现二:整理袋 + 收纳盒的弱关联。 两类商品关联发生率只有 8%,几乎接近随机。这说明它们服务的是不同的收纳场景(一个是衣物、一个是杂物),强行捆绑推荐效果会很差。这个发现帮我们避开了一个"看起来合理其实无效"的组合方案。
发现三:低价收纳盒是"凑单入口"。 一款 19.9 元的收纳盒,几乎出现在所有客单价超过 150 元的订单里,关联发生率异常高。它的角色不是"利润贡献者",而是"凑单品",帮助订单跨过包邮或满减门槛。这种 SKU 绝对不能因为"毛利低"就砍掉。
关联发生率没有绝对的高低标准,因为不同类目的基线不同。但可以用一个相对判断法:看这个组合的发生率,是否明显高于"随机共现"的基线。 随机基线大概可以用"SKU-B 在全部订单里的购买率"来近似。
这条规则里第 4 条特别重要。我见过很多团队拿着 3-5 个订单的共现数据就下结论,说"这两个商品强关联",结果上架组合链接后转化惨淡。小样本的关联是噪声,不是信号。

走到这一步,你手里应该已经积累了足够多的诊断结论。接下来最关键的,是把"发现"翻译成"动作"。很多分析报告之所以落不了地,就是因为它们停留在"发现问题",没有给每个问题配一个动作。我通常把动作归为四类:
| 动作类型 | 适用对象 | 判断依据 | 风险点 |
|---|---|---|---|
| 保留 | 双高 SKU、强关联配件、凑单入口品 | 销售额+毛利双高,或承担明确组合角色 | 别给过多资源,避免资源稀释 |
| 调整 | 价格带断层需要补品的方向、重叠 SKU | 结构缺失或内部竞争 | 调整周期长,需要供应链配合 |
| 淘汰 | 双低 SKU 且无关联角色、库龄高 | 销售额低、毛利低、无关联、库存积压 | 要分批,避免一次性伤害关联结构 |
| 引入 | 断层价格带、缺失场景品类 | 价格带缺口、关联场景缺失 | 引入新品失败率高,需小步试错 |
把前面三步的发现翻译成动作,这个案例的方案大致是这样:
动作不是并列的,必须有先后。我的排序原则是:先做低风险、快见效的,再做高风险、慢见效的。
组合优化从来不是运营一个部门的事。这个案例里涉及的联动部门包括:采购(补品和淘汰的进货计划)、供应链(库存处理和周转)、视觉(组合包装和详情页)、财务(毛利核算口径)。如果在动作制定阶段没有把这些部门拉进来,方案一定会在执行阶段卡住。 我见过太多分析报告做得很漂亮,但因为没和采购对过补品清单,最后无疾而终。

组合优化的效果追踪,我用的是"四指标+两健康度"的结构。
| 类别 | 指标 | 优化前 | 优化后 3 个月(示意数据) | 说明 |
|---|---|---|---|---|
| 核心 | 动销率 | 49.3% | 67.5% | 剔除双低 SKU 后自然抬升 |
| 核心 | 整体毛利率 | 38.2% | 41.6% | 保留高毛利利基品+组合推荐带出 |
| 核心 | 库存周转天数 | 96 天 | 71 天 | 分批淘汰+补品优化 |
| 核心 | 连带率 | 1.6 件 | 1.9 件 | 组合推荐配置见效 |
| 健康度 | C 类 SKU 占比 | 63.6% | 48.2% | 反映结构臃肿改善 |
| 健康度 | 99-159 元价格带销售额占比 | 7% | 13% | 反映价格带断层改善 |
强调一遍,这些是示意性数据,用来展示一个健康的优化周期应该呈现的方向和幅度。真实项目的数字会因类目、执行力度、市场环境而有很大差异。你不要拿这些数字去承诺业绩。
第 1 个月:看过程指标,不看结果指标。 这时候 GMV 和毛利率很可能因为淘汰了部分 SKU 而短期下滑,不要去救。要关注的是:动销率有没有抬升、组合推荐的点击率有没有起色、淘汰后关联订单有没有异常下滑。这个阶段最怕"看到销量掉了就慌,把砍掉的 SKU 又加回来"。
第 3 个月:看结果指标。 毛利率、库存周转、连带率这些"慢指标"应该开始体现变化。同时要重点看价格带补品的表现,如果补品上线后 99-159 元价格带销售占比没有提升,说明问题不是"缺品",而是"缺信任背书",那就要换一套思路,从内容、评价、品牌力去解决。
不是所有优化都会成功,敢于回退是专业能力的体现。以下情况我建议回退:
回退不是失败,是数据在纠正你的判断。 我在项目里最怕的不是回退,而是团队明明看到了下滑信号却硬扛着不改,那才是真正的失败。
组合优化是有节奏的持续动作,不是一个项目。我的建议节奏是:

不是所有团队都有完整的数据基础。我把常见的三种情况分开说,你可以直接对号入座。
这种情况最务实的三步:
购物篮分析可以暂时跳过,等你攒够了订单明细表再补。这个阶段的目标不是"做全",而是"先动起来"。
这是大部分中型电商的状态。你应该做的:
在这个阶段,像数跨境这类跨境电商数据分析平台(官网:https://shukuajing.jiushuyun.com/?utm_source=seo&utm;_plan=est&utm;_unit=gys)可以提供一种参考思路:把多平台、多店铺的商品数据聚合到同一个分析口径里,避免每个渠道单独分析导致的"结构失真"。当你同时运营多个平台时,单品在某一个平台的销售额排名可能不高,但跨平台汇总后它可能是核心单品,如果只按单平台数据做 ABC 分类,会系统性地误伤这类跨平台主力品。
这也是我在做多渠道项目时最常遇到的陷阱。
你已经具备条件做更精细的分析,建议加上:
但要注意,工具越强越容易陷入"分析瘫痪"。我见过太多 BI 团队做了半年分析,一个动作都没落地。分析的终点必须是动作,不是报告。

最后,我把整篇手册的取舍逻辑收口成一张清单。这是在多个项目里反复验证过后的判断。
回顾整个流程,我认为最需要警惕的三个错误是:
第一,把砍 SKU 当目标。 417 砍到 237 是结果,不是目的。目的是让结构效率提升,让每个 SKU 都承担清晰的角色,利润、引流、凑单、配件、场景,四选一或兼备。
第二,单维度决策。 只用销售额、只用毛利、只用销量,任何单维度都会制造误判。这个案例里,如果只按销售额砍 C 类,会砍掉高毛利利基品;如果只按毛利砍,会砍掉引流凑单品。
第三,做完不追踪、不迭代。 组合优化三个月不跟踪必反弹。因为市场在变、用户偏好在变、竞争品在变,静态的结构很快会过期。
如果你读到这里,说明你确实想把组合优化这件事做扎实。我给出一个可以直接启动的 7 天行动计划,把这篇手册压缩成可执行的最小版本。
提醒一:用示意性数据练手可以,但不要拿它去承诺业绩。 不同类目的指标基线差异极大,你的实际结果取决于类目、执行力和市场环境。任何给你"保证提升 XX%"的方案,都要警惕。
提醒二:先动起来比做全更重要。 我见过太多团队卡在"数据还不够全、工具还不够好",结果一年过去一个动作都没做。哪怕你只能做 ABC 分类和简单淘汰,也比不动强。
提醒三:组合优化的本质是"结构判断",不是"单品判断"。 这篇手册从头到尾都在讲一件事,每个商品在结构里扮演什么角色。把这个想清楚,你就超过了绝大多数只会看排名的运营。
如果你现在手上正好有一个结构臃肿、客单价卡住、库存压得喘不过气的商品池,别再纠结从哪一步开始了。就从今天的第 1 天清单起步,先把数据拉出来。你会发现,真正难的不是分析,是迈出第一步。
我们店铺SKU有四百多个,老板天天说动销率低让我优化组合,我第一反应就是把卖不动的下架。但上次砍完一批之后,整体销售额反而掉了,还被采购投诉说砍掉的是引流款。我就很困惑,组合优化到底应该从哪一步开始,是不是不能一上来就砍?
不要先动SKU,先做分层。第一步是用最近一个完整销售周期(建议12周,避开大促)的销售额和毛利额两个维度分别做ABC分类,把SKU分成九宫格:高销高毛、高销低毛、低销高毛、低销低毛等。判断依据是,销售额A类但毛利C类的SKU往往是引流款,不能直接砍;
真正该优先处理的是销售额C类且毛利C类的双低SKU。先出分层结果表,再谈动作,砍SKU是第四步的事,不是第一步。
我看很多教程都说A类占20%、B类30%、C类50%,我照着套发现我们店A类只有30个SKU却占了85%的销售额,按这个标准分出来严重失衡。是不是阈值定错了,还是有别的分法?
20/30/50只是经验起点,不是固定标准。正确做法是按销售额累计占比切分:累计到70%的SKU为A类,70%-90%为B类,90%-100%为C类,SKU数量占比由数据自然决定,不强求比例。
你这种情况说明SKU结构本身高度集中,A类30个就是真实结果,反而要警惕过度依赖,如果这30个里有几个断货,整体销售会崩。判断依据是看A类的绝对数量和集中度风险,而不是看它是否符合教科书比例。
我们品类做了ABC分类,也砍了一批SKU,但感觉货架还是乱,同一个价格区间挤了七八个相似产品,高价位段却几乎是空的。有同行说要做价格带分析,但我不太清楚具体操作步骤和判断标准是什么。
价格带分析的核心是把「价格」和「品类」交叉成矩阵。操作上:先把品类内所有SKU按售价从低到高排序,用分位数(比如每25%一档)或自然断点划分出3-5个价格带;再统计每个价格带里各二级品类的SKU数量和销售额占比。判断标准看两点:一是某个价格带SKU数量多但销售额占比低,说明同质化内卷,要合并或淘汰;
二是高价格带SKU数量极少但销售额占比高,说明供给不足,是引入机会。它被低估是因为ABC只看总量不看结构位置,价格带能暴露「挤在一起」和「断层」这两类问题。
我们是中小店,没有购物篮分析工具,只有订单明细表。想做组合搭配推荐,但不知道从哪下手,也怕算出来的关联是巧合。想问问用Excel能不能做,以及算出来多高的关联度才值得真的去推组合。
Excel完全可以做最小可行版本。方法:导出订单明细,做成「订单号-SKU」的透视表,用COUNTIFS两两统计同时出现的订单数,再除以包含任一SKU的订单数得到支持度,除以单个SKU订单数得到置信度。
判断标准:支持度低于1%基本是噪声,置信度低于15%不建议主推,优先选支持度和置信度双高、且两个SKU毛利都不差的组合。注意要剔除大促凑单订单,否则关联会被虚高。先跑Top50 SKU的两两组合就够用,不用全量。


读者评论
数据清洗那三个坑太真实了,尤其是重复SKU编码导致高估头部集中度,我们公司就因为渠道编码不统一,把同一个爆款算了两遍,差点误判成A类必须重点保。
ABC分类只看销售额确实会误伤,低销高毛利的利润品被砍掉后整体毛利率反而跌了,这个案例里的折叠收纳凳就是典型,双维度交叉分层才是正确做法。
关联购买分析用订单明细加透视表就能跑出最小可行结论,这点很实用。很多教程一上来就推复杂工具,其实数据条件不够时降级处理反而更快落地。
组合优化是持续动作而不是一次性项目,这句话说到痛点。我们去年砍完SKU后三个月就反弹了,因为没有建立淘汰机制和关联角色的动态监控。