安全在庫は1行の数式に集約できます。サービスレベルのZスコア × 需要の標準偏差 × リードタイムの平方根。この3つの数字を正しく押さえれば、欠品も過剰在庫も大幅に減ります。

2023年の秋、私はメンフィス郊外の3PL倉庫を訪れました——約200,000平方フィート、主に小型家電です。そこの一番売れ筋のスペースヒーターが、ブラックフライデーの9日前に欠品しました。補充用のコンテナがまだ海上にある間、約$35,000の売上が消えていきました。棚には何もなく、売るものも何もない。

3か月後、同じ建物で正反対の光景を見ました。別の顧客が、動きの鈍い加湿器用フィルターを9か月分も抱え込み、約50万ドルの資金が棚の上でホコリをかぶり、毎月保管料を払いながら在庫を減らしてくれと懇願してきました。

2人のマネージャーから同じ質問を受けました。実際どれくらい持てばいいのか。私の答えは2回とも同じでした。当てずっぽうはやめて、計算しましょう。

最初の問い:注文を何件失ってもいいですか

1つ目の変数は、許容できる欠品確率です。統計学者はこれをサービスレベルと呼び、Zスコアに対応づけます。

満たしたい注文の割合 Zスコア
90% 1.28
95% 1.65
97.5% 1.96
99% 2.33
99.9% 3.09

ここには、多くの人が実際には計算したことのないトレードオフがあります。サービスレベルを95%から99%に上げると、Zスコアは1.65から2.33に上がります——これは安全在庫が41%増えるということです。現実の棚に置かれる現実のお金が、充足率4ポイントのためにです。

だから私は顧客にはいつも階層化を勧めます。A品目(売れ筋)は95〜98%。B品目(安定した売れ行き)は90〜95%。C品目(ロングテール)はほとんど、あるいは全く安全在庫を持たない。C品目のお金を使って99%のサービスレベルを守るのは、現金を燃やすようなものです。

平均値は嘘をつく。真実を語るのは標準偏差。

2つ目の変数は需要の標準偏差です。多くの倉庫が1日平均の販売数から安全在庫を計算していますが、これがこの作業全体で最大の落とし穴です。

2つのSKUを想像してください。どちらも1日平均200単位の販売です。一方は毎日つまらないほど190〜210単位を売ります。もう一方は通常の日は80単位、プロモーション時は800単位売ります。平均は同じ。この2つが同じ安全在庫を持つべきでしょうか。明らかに違います。

標準偏差はこの「ブレ」を数値に変えます。難しくありません。SKUの過去12週間の出庫数量を日別または週別でエクスポートし、ExcelのSTDEV関数で計算するだけです。データが8週間分しかなくても、8週間で使いましょう。勘よりはましです。

カートンが積まれた倉庫の棚、1区画だけ在庫が少なく空きスペースが見える

もう一つの落とし穴:プロモーション週はベースラインから外してください。800単位のブラックフライデー週を日常データに混ぜると標準偏差が膨らみ、通常日には役に立たず、ピーク時には足りない安全在庫になってしまいます。私の顧客はプロモ週を別にフラグ管理しています——通常週は日常の計算で、プロモ2か月前に専用のバッファを積むのです。

リードタイムこそ危険な領域

3つ目の変数はリードタイムで、需要データと同じ時間単位で測ります。需要が日次なら、リードタイムは日数です。

この公式はリードタイムそのものではなく、その平方根を使います。これが多くの人の直感を裏切ります。リードタイムを7日から28日に延ばす——4倍に——しても、安全在庫は2倍にしかなりません。不確実性は蓄積しますが、蓄積のペースはどんどん緩やかになります。

契約上の数字ではなく、実際のリードタイムを使ってください。契約書には21日と書いてあっても、実際は30日、ピーク時には40日というのを私は何度も見てきました。過去6か月の実際の到着日の平均を取ってください。それが唯一有効なリードタイムです。

リードタイム自体が大きくブレる場合——海運が2週間のこともあれば5週間のこともある——は、公式のフルバージョンを使います。安全在庫 = Z x sqrt(L x 需要分散 + 平均需要の二乗 x リードタイム分散)。リードタイムの変動をそのまま織り込めます。需要は安定しているのに船が当てにならないSKUには、このバージョンが命綱になります。

実際に数字を回してみる

3つの入力がそろえば、公式は1行です。

安全在庫 = Zスコア x 需要の標準偏差 x sqrt(リードタイム)

実際の例で見てみましょう。あるSKU:1日平均需要150単位、1日需要の標準偏差45単位、海上補充リードタイム14日、目標サービスレベル95%(Z = 1.65)。

安全在庫 = 1.65 x 45 x sqrt(14)、計算すると約1.65 x 45 x 3.74、およそ278単位です。

発注点 = 1日需要 x リードタイム + 安全在庫 = 150 x 14 + 278 = 2,378単位。在庫が2,378になったら発注すれば、欠品はめったに起きなくなります。

このバッファのコストはいくらでしょう。単位原価$30なら、278単位で$8,340の資金が拘束されます。年8〜10%の資本コストなら、年$670〜$830の保有コストです。一方、9日間の欠品で失った売上は$35,000。計算してみてください——私はもう計算済みです。

そして逆向きの診断にも使えます。公式が「あるSKUの安全在庫は半年分の売上をカバーする」と言ったら、入力が間違っています。プロモデータが標準偏差に混ざったか、リードタイムを盛りすぎています。公式は嘘をつきません。入れる数字の方が、時々嘘をつきます。

月曜朝のチェックリスト

  1. SKUごとに過去12週間の出庫データをエクスポートし、1日平均需要と標準偏差を計算する——ExcelのSTDEV関数で5分の作業。
  2. 実際のリードタイムを調べる:過去6か月の実際の到着日の平均。契約の数字ではない。
  3. ABC階層別にサービスレベルを設定する:A品目は95〜98%、B品目は90〜95%、C品目はほとんど持たない。
  4. 公式を回してSKUごとの安全在庫と発注点を求め、WMSの補充パラメータに書き込む。
  5. 四半期ごとに見直す。ピークの2か月前に、プロモSKU用の別バッファを積む。

安全在庫は神秘主義ではありません。3つの数字の掛け算です。難しかったのは公式ではなく、本物のデータを掘り起こす手間です。ある朝の時間を使ってA品目の3つの数字を回せば、欠品と過剰在庫の問題は少なくとも半分になります。

英語版からの翻訳。内容に相違がある場合は英語版を優先します。