안전재고란? 공식·계산법과 발주 리드타임 관리 기준
안전재고 뜻과 공식, 계산 예시를 정리하고 수요 변동·발주 리드타임·거래처 주문 데이터를 기준으로 안전재고를 운영하는 방법을 설명합니다.
안전재고를 검색하는 이유는 대개 명확합니다. 재고를 너무 적게 잡으면 품절이 나고, 너무 많이 잡으면 보관비와 악성재고 부담이 커집니다. 그래서 많은 팀이 “안전재고를 몇 개로 잡아야 하는가”를 계산하려고 합니다.
하지만 현장에서 안전재고가 틀어지는 이유는 공식 자체보다 데이터 흐름에 있는 경우가 많습니다. 수요가 어디서 발생했는지, 거래처 주문이 언제 확정됐는지, 발주 후 실제로 며칠 만에 입고되는지가 기록되지 않으면 계산식은 금방 감으로 바뀝니다.
이 글에서는 안전재고 뜻과 공식, 계산 예시를 먼저 정리한 뒤, 중소 제조·유통·도매 기업이 안전재고를 운영 기준으로 쓰기 위해 어떤 발주 데이터를 함께 봐야 하는지 설명합니다.

안전재고란?
안전재고는 예상보다 수요가 늘어나거나 공급 리드타임이 길어질 때 품절을 막기 위해 추가로 확보해두는 완충 재고입니다. 정상적인 판매나 생산에 필요한 기본 재고와 달리, 변동성에 대응하기 위한 여유분이라고 볼 수 있습니다.
안전재고의 목적은 재고를 무조건 넉넉하게 쌓는 것이 아닙니다. 품절 위험과 보관 비용 사이에서 적정한 균형을 잡는 것입니다. 핵심 품목은 품절 비용이 크기 때문에 안전재고를 높게 잡을 수 있고, 회전이 느린 품목은 보관비와 악성재고 위험을 더 크게 봐야 합니다.
안전재고 공식 빠른 정리
실무에서 먼저 확인할 공식은 재주문점 공식입니다. 재주문점은 새 발주를 넣어야 하는 재고 기준입니다.
재주문점 = 평균 일수요 × 평균 리드타임 + 안전재고
안전재고 자체는 회사가 가진 데이터 수준에 따라 간단식 또는 통계식으로 계산할 수 있습니다.
| 구분 | 공식 | 적합한 경우 |
|---|---|---|
| 간단식 | (최대 일수요 × 최대 리드타임) - (평균 일수요 × 평균 리드타임) | 복잡한 통계 데이터는 없지만 판매량과 입고 지연 이력은 있는 경우 |
| 통계식 | Z값 × 수요 표준편차 × √리드타임 | 수요 변동성과 목표 서비스 수준을 수치로 관리하는 경우 |
Z값은 목표 서비스 수준을 의미합니다. 예를 들어 품절 없이 대응하고 싶은 수준을 95%로 잡으면 Z값은 대략 1.65, 99%로 잡으면 대략 2.33을 사용합니다. 목표 수준이 높아질수록 안전재고는 늘어나고, 그만큼 보관 비용도 함께 증가합니다.
안전재고 계산 예시
한 품목의 평균 일수요가 50개, 최대 일수요가 80개라고 가정해보겠습니다. 평균 리드타임은 5일, 지연이 발생했을 때 최대 리드타임은 8일입니다.
| 항목 | 값 |
|---|---|
| 평균 일수요 | 50개 |
| 최대 일수요 | 80개 |
| 평균 리드타임 | 5일 |
| 최대 리드타임 | 8일 |
간단식으로 계산하면 안전재고는 다음과 같습니다.
안전재고 = (80개 × 8일) - (50개 × 5일) = 390개
이때 재주문점은 평균 일수요 50개 × 평균 리드타임 5일 + 안전재고 390개이므로 640개입니다. 즉 이 품목은 재고가 640개에 가까워질 때 새 발주를 검토해야 합니다.
다만 이 숫자는 출발점일 뿐입니다. 실제 운영에서는 품목 중요도, 최소 주문 수량, 박스 단위, 공급처 지연 빈도, 프로모션 여부를 함께 반영해야 합니다.
안전재고 기준을 정할 때 확인할 데이터
안전재고를 계산하려면 판매량만 보면 부족합니다. 품절은 수요 변동과 공급 지연이 겹칠 때 발생하기 때문입니다.
| 확인할 데이터 | 왜 필요한가 |
|---|---|
| 평균 수요 | 평소에 하루 또는 주 단위로 얼마나 팔리는지 확인합니다. |
| 수요 변동성 | 특정 요일, 시즌, 행사, 거래처 주문 패턴에 따라 수요가 얼마나 흔들리는지 봅니다. |
| 발주 리드타임 | 발주 후 실제 입고까지 걸리는 평균 기간과 지연 범위를 확인합니다. |
| 품목 중요도 | 핵심 매출 품목인지, 대체 가능한 품목인지에 따라 목표 서비스 수준을 다르게 잡습니다. |
| 거래처별 주문 패턴 | 특정 거래처가 반복적으로 대량 주문하거나 짧은 납기를 요구하는지 확인합니다. |
| MOQ와 박스 단위 | 공식상 필요한 수량과 실제 주문 가능한 단위가 다를 수 있습니다. |
이 데이터가 정리되어 있으면 안전재고는 단순한 숫자가 아니라 발주 기준으로 작동합니다. 반대로 주문과 발주 기록이 여러 채널에 흩어져 있으면, 계산은 해도 운영에 반영하기 어렵습니다.
안전재고가 현장에서 실패하는 이유
안전재고 기준을 세웠는데도 품절과 과잉재고가 반복된다면 공식보다 운영 흐름을 먼저 점검해야 합니다.
거래처 주문이 카톡, 문자, 이메일, 엑셀, PDF로 흩어져 들어옵니다.
주문이 확정되기 전까지 품목명, 수량, 단위를 담당자가 수기로 확인합니다.
거래처마다 같은 품목을 다른 이름으로 부르기 때문에 수요가 한 품목으로 모이지 않습니다.
발주 요청일, 실제 입고일, 지연 사유가 꾸준히 기록되지 않습니다.
주문 확정 후 택배사 양식이나 ERP 입력 양식을 다시 만들면서 데이터가 늦게 반영됩니다.
이런 구조에서는 안전재고가 낮아서 품절이 나는 것이 아니라, 수요와 리드타임을 판단할 데이터가 늦게 모여서 문제가 생깁니다.
안전재고와 발주 접수 데이터는 어떻게 연결될까?

B2B 도매·제조·유통 기업에서는 수요 신호가 쇼핑몰 주문 데이터가 아니라 거래처 발주에서 시작되는 경우가 많습니다. 거래처가 보낸 주문이 제때 구조화되지 않으면 안전재고 기준도 늦게 반응합니다.
예를 들어 A거래처는 카톡으로 “지난번 그 박스 3개”, B거래처는 이메일 첨부파일로 품목명과 규격을 보내고, C거래처는 PDF 발주서를 보낸다고 가정해보겠습니다. 담당자가 이를 나중에 엑셀로 정리하면 실제 수요는 이미 발생했지만 시스템에는 늦게 반영됩니다.
그래서 안전재고를 운영하려면 아래 데이터가 주문 접수 단계에서 정리되어야 합니다.
거래처명과 주문 접수일
거래처가 사용한 품목명과 내부 품목 매칭 결과
수량, 단위, 박스 단위, 희망 납기
담당자 확인 여부와 주문 확정 시점
확정된 주문을 ERP나 사내 처리 양식으로 넘기는 방식
StackCube가 도움이 되는 경우

StackCube가 맡는 영역은 안전재고 계산 자체보다 앞단에 있습니다. 거래처 발주가 여러 채널로 들어올 때 주문 내용을 모으고, 품목 후보를 매칭하고, 담당자가 확정한 데이터를 다음 업무에 넘기기 쉽게 정리합니다.
거래처 발주가 카톡, 문자, 이메일, 엑셀, PDF, 발주 포털로 흩어져 들어오고 담당자가 이를 다시 입력하고 있다면, 먼저 주문 데이터를 구조화해야 합니다. StackCube는 이 구간에서 발주 원문을 모으고, 품목 후보를 매칭하고, 담당자가 확인한 주문을 후속 업무에 넘기기 쉬운 형태로 정리합니다.
여러 채널로 들어오는 거래처 발주를 한곳에 모읍니다.
주문 내용을 추출하고 품목 후보를 매칭합니다.
담당자가 품목, 수량, 단가를 확인한 뒤 주문을 확정합니다.
확정된 주문 데이터를 ERP 입력이나 사내 처리에 넘기기 쉽게 정리합니다.
필요한 경우 택배사 업로드 양식으로 내려받을 수 있습니다.
안전재고 적용 체크리스트
안전재고를 계산하기 전에 아래 항목을 먼저 확인하면 과도한 재고와 반복 품절을 줄이는 데 도움이 됩니다.
핵심 품목과 보조 품목을 구분했는가?
품목별 평균 수요와 최대 수요를 확인했는가?
공급처별 평균 리드타임과 지연 이력을 기록하고 있는가?
거래처별 주문 패턴과 품목 별칭이 내부 품목과 연결되어 있는가?
안전재고 이하로 내려갔을 때 누가 발주를 검토하는지 정해져 있는가?
확정된 주문 데이터를 ERP, 사내 양식, 택배사 양식으로 넘기는 기준이 있는가?
결론: 안전재고는 공식보다 운영 데이터가 중요하다
안전재고 공식은 품절 위험을 숫자로 다루기 위한 좋은 출발점입니다. 하지만 공식이 실제 운영에 쓰이려면 수요, 리드타임, 거래처 주문, 품목 매칭 데이터가 같은 기준으로 쌓여야 합니다.
재고가 계속 부족하거나 과하게 쌓인다면 안전재고 수량만 다시 계산하기보다, 거래처 주문이 어떻게 들어오고 누가 확인하며 어떤 형식으로 다음 업무에 넘어가는지부터 점검해야 합니다. 이 앞단이 정리되어야 안전재고도 현장에서 작동하는 기준이 됩니다.