import { NavigationBlock } from "@/components/blog/NavigationBlock";
ABC 分析|重要度で在庫/商品を 3 区分に整理(実務テンプレ)
この記事が想定する読者:在庫・SKU整理・棚割りの優先順位を決めたいが、何をどう分ければよいか判断軸が欲しい担当者。
判断を誤るとどうなるか:閾値を固定のまま使うと自社のSKU数・粗利率・在庫コストと噛み合わず、重点管理が形だけになる。先に「何の軸でA/B/Cを分けるか」「閾値は目安として調整する」を決めると失敗しにくい。
売上や粗利の寄与で商品を A/B/C に分け、重点管理の優先順位を明確にします。
まずはここだけ(やさしい導入)
- 何をする?: 売上/粗利の寄与で SKU を A/B/C に分け、重点管理する
- いつ使う?: 在庫最適化、SKU 整理、棚割りの優先順位付け
- どう読む?: 累積構成比のカーブと A/B/C の閾値を見て方針を決める
用語ミニ辞典(1 行で)
- 構成比/累積構成比: 各 SKU の寄与とその累積
- 閾値: A/B/C を分ける境界(例: A=上位 70%)
- 長尾: C に属する多数の低寄与 SKU 群
最小コード
import pandas as pd
df = pd.DataFrame({
'sku':['s1','s2','s3','s4','s5'],
'sales':[120000,80000,60000,15000,5000]
}).sort_values('sales', ascending=False)
df['share'] = df['sales'] / df['sales'].sum()
df['cum_share'] = df['share'].cumsum()
def abc(c):
if c <= 0.7: return 'A'
if c <= 0.9: return 'B'
return 'C'
df['ABC'] = df['cum_share'].apply(abc)
print(df)
可視化(棒グラフ+累積曲線)
import matplotlib.pyplot as plt
df_plot = df.copy()
fig, ax1 = plt.subplots(figsize=(6,3))
ax1.bar(df_plot['sku'], df_plot['share'], color='#69b3a2', label='share')
ax1.set_ylabel('share')
ax1.set_ylim(0, max(0.4, df_plot['share'].max()*1.2))
ax2 = ax1.twinx()
ax2.plot(df_plot['sku'], df_plot['cum_share'], color='#ff6f61', marker='o', label='cum_share')
ax2.set_ylabel('cum_share')
ax2.set_ylim(0,1.05)
for thr in [0.7, 0.9]:
ax2.axhline(thr, color='gray', linestyle='--')
plt.title('ABC share and cumulative')
plt.tight_layout(); plt.show()
活用と注意
- A: 欠品厳禁/在庫厚め、B: 標準管理、C: 長尾最適化
- 閾値は業態に合わせ調整(粗利ベースでも実施)
- 季節性・プロモ影響は期間を分けて比較
実務ケーススタディ(在庫最適化)
目的: A は欠品厳禁、B は標準、C は長尾最適化で在庫コストを削減。
- 分析
- 粗利ベースで ABC を作成(売上よりも実益に直結)
- アクション
- A: 安全在庫を厚め、B: 需要予測ベース、C: まとめ発注/廃番候補
- 評価
- 欠品率/在庫回転/廃棄の改善を KPI にし、四半期で見直し
練習問題(理解を定着)
- A の割合が 50% を超えた。何が起きている?
- ヒント: 閾値設定が厳しすぎる/品揃えが偏り。粗利で再評価
- C に重要な戦略 SKU が混ざる。どうする?
- ヒント: 例外リストを設け、ABC の結果に盲従しない
- プロモ期間を含めると閾値が不安定。対処は?
- ヒント: 期間を分ける/プロモは別扱い
関連と次の一歩
判断の土台として押さえておくこと
- A/B/Cの閾値は目安:上位70%/次の20%/残り10%はSKU数・粗利率・在庫コストで調整する。売上だけでなく粗利・回転率の併用も検討する。
- 何の軸で分けるかを決める:重点管理の目的(在庫最適化・SKU整理・棚割り)に合わせて、構成比・累積の見方と閾値を揃える。
- 長尾(C群)をどう扱うか:切り捨てるか、まとめて扱うか、複数軸マトリクスで見るかを判断軸に置く。
次の一手:RFM分析/デシル分析/データ・統計の判断ハブ
よくある質問(FAQ)
- Q: A/B/C の閾値は固定?
- A: 目安に過ぎません。SKU 数・粗利率・在庫コストで調整
- Q: 売上だけで良い?
- A: 粗利や回転率での併用が有効。複数軸のマトリクス管理も検討
nextInCategory={[ { title: "POS 横断ミニケース|RFM / ABC / デシルを小さなデータで一気に演習", url: "/blog/data/pos-mini-case-rfm-abc-decile" }, { title: "デシル分析|顧客を 10 分位で把握(上位層の寄与を見抜く)", url: "/blog/data/decile-analysis-introduction" }, { title: "分散分析(ANOVA)|3 群比較の要点と事後検定・効果量の実務ガイド", url: "/blog/data/anova-practical-guide" }, { title: "アソシエーション分析(バスケット分析)|頻出アイテムとルールを見つける(実務ガイド)", url: "/blog/data/association-analysis-introduction" }, ]} philosophyLink={true} />