安全在庫は、需要の急な増加や納品遅延があっても欠品を避けるために持つ在庫です。
適切な数量を決めるには、平均需要だけでなく、需要のばらつき、発注から入荷までのリードタイム、安全係数を組み合わせて考える必要があります。
勘や前年実績だけで在庫数を決めると、品切れによる販売機会の損失、または過剰在庫による保管費用の増加につながりかねません。
この記事では、安全在庫の基本的な計算式から、標準偏差を用いた実務的な考え方、エクセルでの求め方までを順番に解説します。
安全在庫の計算式と基本的な考え方

それではまず、安全在庫の計算式と考え方について解説していきます。
安全在庫が必要になる場面
安全在庫とは、通常の需要と通常のリードタイムを前提にした在庫とは別に、予想外の変動へ備えるための在庫です。
たとえば毎日100個販売され、発注してから5日で入荷する商品であれば、平均的には500個を用意すれば足りるように見えます。
しかし、実際には日によって販売数が80個になることもあれば、キャンペーンや季節要因で150個まで増えることもあるでしょう。
仕入先の出荷遅れ、交通事情、検品の遅延などにより、入荷日がずれるケースも考えられます。
こうした不確実性を吸収する役割を持つのが安全在庫です。
安全在庫は売れ残りを前提に持つ在庫ではなく、欠品リスクを管理するための緩衝材と理解すると、設定の目的が明確になります。
特に、代替品が少ない商品、顧客が待てない部品、販売機会を逃しやすい定番商品では、適正な安全在庫が重要です。
代表的な安全在庫の計算式
安全在庫の求め方には複数の方法がありますが、需要とリードタイムの両方にばらつきがある場合には、標準偏差と安全係数を使う方法が広く利用されます。
安全在庫 = 安全係数 × リードタイム中の需要の標準偏差
リードタイム中の需要の標準偏差は、日別需要のばらつきだけを考える場合、次のように表せます。
リードタイム中の需要の標準偏差 = 日別需要の標準偏差 × リードタイムの日数の平方根
たとえば、日別需要の標準偏差が20個、リードタイムが9日、安全係数が1.65の場合を考えます。
リードタイム中の需要の標準偏差は20×√9となり、60個です。
安全在庫は1.65×60で99個となるため、端数を切り上げて100個程度を設定する考え方になります。
この式では、需要が不安定な商品ほど、また納品までの日数が長い商品ほど、安全在庫が大きくなります。
安全係数とサービスレベルの関係
安全係数は、どの程度の欠品リスクまで許容するかを数値化したものです。
一般に、安全係数が大きいほど欠品は起こりにくくなりますが、その分だけ在庫金額も増えます。
| サービスレベルの目安 | 安全係数の目安 | 考え方 |
|---|---|---|
| 90% | 1.28 | 一定の欠品は許容し、在庫負担を抑えたい場合 |
| 95% | 1.65 | 多くの定番商品で検討しやすい水準 |
| 97.5% | 1.96 | 欠品による影響が比較的大きい場合 |
| 99% | 2.33 | 停止や機会損失を極力避けたい重要品目 |
| 99.9% | 3.09 | 医療、保守部品、重要工程向けなどの高水準 |
サービスレベル95%は、すべての注文を完全に満たせるという意味ではありません。
需要の変動を前提にした場合でも、在庫不足を起こさずに対応できる確率を高めるための目安です。
安全係数は高ければよいわけではなく、欠品コストと在庫コストのバランスで決めることが重要です。
売上が大きい商品でも、代替品があるのか、次回入荷まで顧客が待てるのか、欠品時の信用低下がどの程度かによって、適切なサービスレベルは変わります。
需要のばらつきと標準偏差の算出
続いては、需要のばらつきと標準偏差を確認していきます。
平均需要だけでは不足する理由
平均需要は、安全在庫を考える出発点になりますが、平均値だけでは変動の大きさを把握できません。
たとえば、5日間の販売数がすべて100個の商品と、80個、120個、70個、130個、100個の商品は、どちらも平均100個です。
ただし後者は日々の振れ幅が大きく、平均値どおりに在庫を準備すると不足する可能性が高くなります。
この振れ幅を数値化する指標が標準偏差です。
標準偏差が小さい商品は需要が比較的安定しており、安全在庫を低めに設定しやすい傾向があります。
一方で、季節商品、流行商品、受注変動が大きい商品は標準偏差が大きくなりやすく、慎重な在庫設計が求められます。
標準偏差の見方
標準偏差は、実績値が平均からどれほど離れているかを表す数値です。
日別出荷数の標準偏差が10個であれば、平均から10個程度の幅で変動する場面が多いと考えられます。
標準偏差が30個なら、同じ平均需要でも変動リスクはより大きいと判断できます。
在庫管理では、月間販売数だけでなく、日別または週別の出荷実績を使うほうが実態に合いやすいでしょう。
リードタイムが日単位で管理されているなら日別需要、週単位で発注するなら週別需要を用いると、計算の単位がそろいます。
集計単位とリードタイムの単位を合わせることが、計算精度を保つ基本です。
異常値を扱う際の注意点
標準偏差を計算する前には、需要データの内容を確認する必要があります。
大口案件の一時的な出荷、入力ミス、欠品によって販売できなかった日などが混ざると、通常の需要変動を正しく表せません。
特に欠品した日は、実際の需要ではなく、供給できた数量しか記録されていない場合があります。
販売実績がゼロだからといって需要がゼロだったとは限らないため、受注残や問い合わせ履歴も確認したいところです。
異常値を無条件に削除するのではなく、今後も起こり得る変動なのか、一度きりの例外なのかを判断します。
販促施策を毎年実施するなら、その需要増は異常ではなく、在庫計画に織り込むべき情報です。
データの外れ値を除外する場合は、除外した理由を残しておくことが大切です。担当者の感覚だけで数字を調整すると、翌年以降の見直しが難しくなります。
リードタイムを含めた安全在庫の計算方法
続いては、リードタイムを含めた安全在庫の計算方法を確認していきます。
リードタイムの定義
リードタイムとは、発注してから商品や部品が使用可能な状態になるまでの期間です。
発注日から仕入先出荷日までだけでなく、輸送、荷受け、検品、棚入れまで含めて考える必要があります。
海外調達品では、通関や港湾混雑、船便の遅れも影響します。
社内製造品であれば、製造着手から完成、検査、次工程への引き渡しまでが対象になるでしょう。
在庫計算に使うリードタイムは、発注担当者が認識している日数ではなく、実際に供給可能になるまでの日数です。
この範囲があいまいだと、安全在庫を正しく設定しても欠品が起こりやすくなります。
需要のみが変動する場合
仕入先の納期が安定していて、需要だけにばらつきがある場合は、比較的シンプルな式で算出できます。
安全在庫 = 安全係数 × 需要の標準偏差 × √リードタイム
たとえば、日別需要の標準偏差が15個、リードタイムが4日、安全係数が1.65なら、安全在庫は1.65×15×√4です。
計算結果は49.5個となるため、実務では50個に切り上げることが多いでしょう。
この方法は、需要実績が一定量あり、発注から納品までの期間がほぼ固定されている商品に向いています。
ただし、発注ロットや最小発注量が大きい場合には、計算結果をそのまま使えないこともあります。
需要とリードタイムの両方が変動する場合
需要だけでなく、リードタイムにもばらつきがある場合は、両方の影響を加味します。
安全在庫 = 安全係数 × √{平均リードタイム×需要の標準偏差の二乗+平均需要の二乗×リードタイムの標準偏差の二乗}
この式では、需要の変動と納期の変動をそれぞれ分けて扱います。
平均需要が大きい商品は、リードタイムが少し延びただけでも不足数量が増えやすいため、納期の標準偏差が重要になります。
反対に、納期が安定していても日々の出荷数が大きく揺れる商品では、需要の標準偏差が安全在庫を左右します。
安全在庫を見直す際は、需要変動と納期変動のどちらが主因かを切り分けることが改善の近道です。
エクセルによる安全在庫の求め方
続いては、エクセルによる安全在庫の求め方を確認していきます。
需要実績データの準備
エクセルでは、まず日別または週別の出荷実績を1列に並べます。
たとえばB列に日付、C列に出荷数を入力し、少なくとも直近3か月から12か月程度のデータを用意します。
商品ごとに需要の性質が異なるため、品番単位でシートを分けるか、ピボットテーブルで集計できる形にしておくと便利です。
新商品などで十分な販売実績がない場合は、類似商品の実績や販売計画を参考にします。
ただし、類似商品を使った推定値は実績値より不確実性が高いため、導入直後は短い周期で見直す必要があります。
標準偏差と安全在庫の関数
母集団ではなく、手元にある実績データを標本として扱う一般的な在庫管理では、標準偏差の算出にSTDEV.S関数を使います。
たとえばC2からC91に日別出荷数が入っている場合、需要の標準偏差は次の式で計算できます。
=STDEV.S(C2:C91)
安全係数をF2セル、リードタイム日数をG2セル、標準偏差をH2セルに入力しているなら、安全在庫は次の式です。
=F2×H2×SQRT(G2)
計算結果を整数に切り上げる場合は、ROUNDUP関数を組み合わせます。
=ROUNDUP(F2×H2×SQRT(G2),0)
エクセル上で計算式を固定する際は、セル参照のずれに注意しましょう。
安全係数など、全商品で共通の数値を使うセルには、必要に応じて絶対参照を設定します。
発注点まで管理する計算例
安全在庫だけでは、いつ発注するべきかまでは判断できません。
発注点は、リードタイム中に必要となる平均需要へ、安全在庫を加えて求めます。
発注点 = 平均需要 × リードタイム + 安全在庫
平均日販が100個、リードタイムが5日、安全在庫が120個なら、発注点は620個です。
在庫数が620個以下になった時点で発注すれば、通常のリードタイム内に入荷するまで販売を継続しやすくなります。
安全在庫は保有量、発注点は発注開始の基準という違いを区別してください。
エクセルでは、現在庫、発注残、引当済み数量を含めた実質在庫を別列で管理すると、より実務に近い発注判断が可能です。
| 項目 | 例 | エクセルでの考え方 |
|---|---|---|
| 平均日販 | 100個 | AVERAGE関数で算出 |
| 需要の標準偏差 | 24個 | STDEV.S関数で算出 |
| リードタイム | 5日 | 実績の平均日数を使用 |
| 安全係数 | 1.65 | 目標サービスレベルから設定 |
| 安全在庫 | 89個 | ROUNDUPで整数化 |
| 発注点 | 589個 | 平均日販×リードタイム+安全在庫 |
品目別に安全在庫を設定する実務
続いては、品目別に安全在庫を設定する実務を確認していきます。
ABC分析を活用した優先順位
すべての商品に同じサービスレベルを設定すると、在庫金額が膨らみやすくなります。
そこで役立つのが、売上高や出荷金額、粗利益への貢献度で品目を分類するABC分析です。
Aランクは売上や利益への影響が大きい重要品目、Bランクは中位品目、Cランクは比較的影響が小さい品目として扱います。
Aランクの商品には高めのサービスレベルを設定し、Cランクは在庫負担を抑える運用も選択肢になります。
ただし、金額が低いCランク品目でも、生産ラインを止める部品や、欠品時に代替できない資材は例外です。
売上金額だけでなく、欠品時の影響度を加えて優先順位を決める視点が欠かせません。
季節性と販促計画の反映
季節性のある商品は、年間平均の需要を使うだけでは安全在庫が実態に合わなくなります。
夏季に需要が集中する商品、年度末に動く事務用品、年末商戦で販売が伸びる商品などは、時期ごとに需要水準が変わります。
この場合は、前年同月の実績や直近数年の季節指数を使い、繁忙期と閑散期で別の計算を行う方法が有効です。
販促キャンペーン、価格改定、取引先の新規獲得など、将来確定している要因も需要予測へ反映します。
計画値を過信する必要はありませんが、何も反映しないよりも、前提を明記して在庫計画に組み込むほうが管理しやすくなります。
定期的な見直しの仕組み
安全在庫は、一度決めたら終わりという数値ではありません。
仕入先の変更、物流ルートの改善、リードタイム短縮、需要構造の変化があれば、設定値も見直す必要があります。
見直しの頻度は、変動が小さい定番品なら四半期ごと、変動が大きい商品なら月次など、品目特性に応じて決めるとよいでしょう。
欠品件数、過剰在庫日数、在庫回転率、廃棄額などを併せて確認すると、設定の妥当性を判断しやすくなります。
安全在庫が多すぎる場合は、単純に数量を減らす前に、需要の予測精度、発注頻度、仕入先の納期安定性を見直します。根本原因を改善できれば、サービスレベルを落とさず在庫を減らせる可能性があります。
安全在庫を計算する際の注意点
続いては、安全在庫を計算する際の注意点を確認していきます。
計算対象期間の選び方
過去データをどの期間まで使うかによって、計算結果は変わります。
長期間のデータは一時的な変動の影響をならしやすい一方、最近の需要変化を反映しにくい面があります。
短期間のデータは現状に近い数字を使えますが、偶然の増減に左右されやすくなります。
需要が安定している商品では6か月から12か月程度、流行や季節変動が大きい商品では直近の傾向を重視するなど、品目ごとに使い分けるとよいでしょう。
期間を変更した場合は、前回との差がなぜ起きたのかを確認することも大切です。
最小発注量と発注頻度の影響
計算した安全在庫が80個でも、仕入先の最小発注量が500個であれば、実際の在庫水準は大きく変わります。
発注ロットが大きい商品では、安全在庫とサイクル在庫を分けて考える必要があります。
サイクル在庫は、次回発注までの通常需要に対応するための在庫です。
安全在庫だけを削減しても、発注ロットが大きいままなら、総在庫はあまり減らないかもしれません。
在庫削減では安全在庫の数値だけでなく、発注頻度と最小発注量も同時に確認してください。
仕入先と発注ロットの見直しを交渉することが、在庫適正化につながる場合もあります。
欠品率だけに偏らない判断
欠品をゼロに近づけようとして安全係数を上げ続けると、在庫金額、保管スペース、棚卸し負担、廃棄リスクが増えます。
特に賞味期限がある商品、仕様変更が起こりやすい部品、流行の変化が速い商品では、過剰在庫の損失が大きくなりがちです。
安全在庫の評価では、欠品率だけでなく、在庫回転率、滞留在庫、廃棄額、緊急輸送費などを総合的に見ます。
緊急出荷や特急便が多いなら安全在庫不足の可能性があり、長期滞留品が増えているなら設定過多の可能性があります。
目標は在庫を増やすことでも減らすことでもなく、必要な時に必要な量を供給できる状態です。
安全在庫の計算式とエクセル活用のまとめ
安全在庫は、安全係数、需要の標準偏差、リードタイムを基に計算します。
需要のみが変動する場合は、安全係数×需要の標準偏差×リードタイムの平方根という式が基本になります。
納期にもばらつきがある場合は、リードタイムの標準偏差を含めた計算式を使うことで、実態に近い在庫水準を検討できます。
エクセルでは、STDEV.S関数で需要の標準偏差を出し、SQRT関数とROUNDUP関数を組み合わせることで、安全在庫と発注点を継続的に管理できます。
重要なのは、計算結果を固定値として扱わず、季節性、販促計画、仕入先の納期、発注ロット、欠品時の影響に応じて定期的に見直すことです。
安全在庫を数字で管理し、根拠を持って改善することが、欠品防止と在庫圧縮の両立につながります。