Mục lục · 7 phần
- Càng tin số bán, anh/chị càng dễ nhập thiếu
- Ngày voucher làm nền phồng, nhưng có một chỗ tự triệt tiêu
- Tính lượng cần bán trước, chưa vội gọi đó là số nhập
- Một món dư mất bao nhiêu, một đơn thiếu mất bao nhiêu?
- Từ tiền mất đến số đặt nhà cung cấp
- Nhờ ChatGPT làm bảng, giữ quyền chốt ở anh/chị
- Câu hỏi thường gặp
Trả lời nhanh
Dùng AI dự báo tồn kho được, nhưng số bán lúc hết hàng đang che mất nhu cầu. Trước khi hỏi ChatGPT số nhập cho 11.11, anh/chị cần tách ngày đủ hàng khỏi ngày thiếu. Sau đó, chọn lượng nhập bằng tiền mất khi dư và thiếu, rồi trừ hàng sẵn có.
Tối trước hạn chốt hàng, anh/chị ngồi đếm lại những thùng còn trong kho. Điện thoại rung, nhà cung cấp giục xác nhận số lượng, còn file đơn hàng đã mở nhưng ô số nhập vẫn để trống. Anh/chị gõ vào ChatGPT: “11.11 này tôi nên nhập bao nhiêu?”
Nhập ít thì sợ khách qua gian khác đúng ngày sale. Nhập nhiều lại lo hết tiền trả lương cuối tháng. Có một con số để bám vào thì nhẹ người thật. Nhưng trước con số ấy, tôi muốn hỏi chuyện hôm trước: mã này hết hàng lúc nào?
Mã bán ít vì kho trống vẫn hiện lên như mã bán kém. Hỏi AI giỏi hơn cũng chưa sửa được chuyện đó, tại vì bảng đơn chỉ ghi thứ đã bán được. Nó không ghi khách muốn mua bao nhiêu khi nút mua đã tắt.
Tôi gọi cách sửa là “sổ ngày bất thường”. Cuốn sổ ấy đi cùng từng mã, ghi lúc thiếu hàng và ngày đổi khuyến mãi. Từ đó mới tính số nhập, rồi so tiền mất khi dư với tiền mất khi thiếu. Dự báo trúng nhất chưa hẳn là cách nhập có lời nhất.
Càng tin số bán, anh/chị càng dễ nhập thiếu
Ngày không có đơn chưa đủ để kết luận khách hết thích. Anh/chị phải biết hôm đó mã còn bán được không. Mã đủ hàng cả ngày mà bán không được thì giữ số không, vì đó cũng là một ngày bán bình thường của gian.
Ngày hết hàng thì xử lý bằng một cách khác. Giả sử mã bán đều 40 sản phẩm mỗi ngày còn hàng. Trong 30 ngày, mã hết hàng trọn 6 ngày. Lấy tổng chia cả tháng thì nền còn 24 × 40 / 30 = 32 sản phẩm/ngày.
Nhu cầu trong ví dụ chưa đổi, nhưng nền đã hụt 20%. Lần nhập sau bám vào 32 thì kho trống sớm hơn. Thành ra số bán kỳ sau lại thấp thêm, dù khách vẫn muốn mua. Tôi gọi đó là “vòng thiếu hàng tự nuôi”. Kho lại trống sớm.
Hết hàng từ chiều thì bỏ cả ngày hay tính bù? Với bảng đơn theo ngày, tôi bỏ ngày đó khỏi phép tính nền, vì khách buổi tối và khách buổi sáng chưa chắc mua giống nhau. Không nhân số bán buổi sáng lên cho đủ ngày.
Bỏ ngày ấy cũng làm anh/chị mất bớt dữ liệu. Nếu cứ ngày đông khách là hết hàng, những ngày còn lại vẫn khiến nền bị thấp. Tôi giữ số dự báo ở dạng khoảng và ghi rõ thiếu dữ liệu. Muốn tính bù theo giờ thì cần lịch còn hàng cùng nhịp mua theo giờ của mã đó.
Ngày voucher làm nền phồng, nhưng có một chỗ tự triệt tiêu
Giờ giả sử mã có 28 ngày đủ hàng để đọc. Trong đó, 24 ngày thường bán 40 sản phẩm/ngày. Bốn ngày chạy voucher bán 70 sản phẩm/ngày. Trộn tất cả thì trung bình là (24 × 40 + 4 × 70) / 28 = 1.240 / 28.
Nền lẫn voucher ấy xấp xỉ 44,29 sản phẩm/ngày. Nền ngày thường vẫn là 40 trong ví dụ này, nhưng nền phồng chưa tự động khiến mọi dự báo phồng theo. Còn phải xem anh/chị lấy hệ số sale từ đâu.
Giả sử đợt trước bán 240 sản phẩm trong ngày sale. Chia cho nền sạch 40 thì hệ số là 6. Giữ hệ số 6 rồi nhân nền lẫn voucher mới thì dự báo tăng, vì hai lần tính đang dùng hai cách lấy nền khác nhau.
Nếu cùng lấy nền lẫn voucher để đo hệ số thì sao? Phép nhân ngày sale tự triệt tiêu: (1.240 / 28) × (240 / (1.240 / 28)) = 240. Hoá ra đổi cách lấy trung bình chưa đủ để chứng minh nhập dư, vì lỗi nằm ở việc đổi nền mà giữ nguyên hệ số cũ.
Đó là lý do tôi ghi cách tính ngay cạnh hệ số. Hệ số đo lúc giá nào, voucher nào, mã còn hàng bao lâu? Khi các điều kiện ấy đổi, phép triệt tiêu trên không chứng minh đợt tới vẫn bán 240. Cuốn sổ giúp anh/chị nhìn ra chỗ đang đoán.
Tính lượng cần bán trước, chưa vội gọi đó là số nhập
Toàn bộ lượng hàng và lịch giao dưới đây là giả sử. Để dễ tính, tôi dùng một mã, mỗi đơn một sản phẩm, với nền sạch 40 và hệ số ngày sale là 6. Ba ngày trước sale bán bằng 75% nền, ba ngày sau bằng 70% nền.
Những tỷ lệ này là giả sử đã đo ở đợt trước. Ngày sale cần 40 × 6 = 240 sản phẩm. Sáu ngày quanh đó cần 3 × 30 + 3 × 28 = 174. Tổng nhu cầu dự báo là 414 sản phẩm, chưa cộng hàng để phòng bán vượt dự báo.
Giữ nguyên các hệ số ấy để so hai cách lấy nền. Nền lẫn voucher cho (1.240 / 28) × (6 + 3 × 0,75 + 3 × 0,70) ≈ 458,36 sản phẩm. Làm tròn lên thành 459, hơn mức 414 đúng 45 sản phẩm. Với giá vốn giả sử 70.000đ, số vốn thêm là 45 × 70.000 = 3.150.000đ.
Nền hụt vì hết hàng cũng phải tính trên cùng cửa sổ. Lấy 32 thay cho 40 thì nhu cầu dự báo còn 331,2, làm tròn lên 332 vẫn thiếu 82 so với 414. Không thể chỉ nhìn phần thiếu trong ngày sale rồi bỏ sáu ngày còn lại.
Cửa sổ ở đây là thời gian kho phải tự đáp ứng đơn. Giả sử hàng có từ 08/11, chuyến bù tới 15/11, thì phải tính trọn bảy ngày từ 08/11 đến hết 14/11. Nó khác cửa sổ dài hơn dùng để đo khách dời lịch mua quanh sale.
Nếu chuyến bù tới muộn hơn thì phải kéo dài cửa sổ. Nếu chưa đo được sức mua quanh sale, tôi giữ nền ngày thường cho phần đó. Với giả định tạm này, anh/chị ghi riêng để xem lại, rồi đưa khoản tiền ấy vào kế hoạch dòng tiền bán hàng.
Một món dư mất bao nhiêu, một đơn thiếu mất bao nhiêu?
Giả sử shop thường của một hộ kinh doanh bán mỹ phẩm 250.000đ, giá vốn 70.000đ, có tham gia Voucher Xtra. Giá đó đã trừ giảm giá của người bán; khách không trả phí vận chuyển. Ví dụ chỉ tính đơn giao thành công, không dùng PiShip hay mã đồng tài trợ.
Tôi dùng bảng phí đã xác minh tới 30/09/2026. Phí cố định Sắc Đẹp 17% từ 23/05/2026 là 42.500đ, còn phí xử lý giao dịch 6% từ 01/05/2026 là 15.000đ. Cả hai mức được dẫn tại thông báo phí của Shopee.
Voucher Xtra 5,5% từ 23/05/2026 lấy thêm 13.750đ. Thuế khấu trừ hàng hoá của hộ kinh doanh 1,5% là 3.750đ. Phí hạ tầng là 3.000đ/đơn; giả sử đóng gói tốn 5.000đ. Các khoản này cùng giá vốn để lại 250.000 − 70.000 − 42.500 − 15.000 − 13.750 − 3.750 − 3.000 − 5.000 = 97.000đ.
Đây là tiền còn trước quảng cáo, chưa phải lãi ròng. Giả sử bán thêm một đơn cần thêm 17.000đ quảng cáo, thì khi thiếu hàng và mất hẳn đơn đó, tiền lời mất là 97.000 − 17.000 = 80.000đ. Nếu khách chờ hoặc mua mã khác, phần mất phải tính thấp hơn.
Một món dư không tự động mất cả 70.000đ giá vốn. Mã còn bán đều thì vốn chỉ nằm kho lâu hơn. Tôi tính tiền vốn, tiền kho và giảm giá cần để bán nốt. Giả sử cộng lại mất 10.000đ cho mỗi món dư; đây không phải mức chung cho mọi gian.
Nhập thêm khi nào thì đáng tiền trong ví dụ này? Khi cơ hội bán được món thêm vượt 10.000 / (80.000 + 10.000) ≈ 11,1%. Giả sử cơ hội ấy là 20%, tiền lời kỳ vọng bằng 20% × 80.000 − 80% × 10.000 = 8.000đ. Con số này giải thích vì sao mã bán đều đáng giữ đệm.
Mã theo trend thì chuyện dư hàng lại đắt hơn, giả sử mỗi món dư làm mất 60.000đ sau khi bán nốt. Ngưỡng bán được món thêm tăng lên 60.000 / (80.000 + 60.000) ≈ 42,9%. Cùng cơ hội 20% như trên, tiền lời kỳ vọng thành âm 32.000đ.
Vậy thì câu “cứ dư chút cho yên tâm” rất dễ sai. Theo ví dụ này, thiếu 82 đơn mất hẳn sẽ mất 82 × 80.000 = 6.560.000đ tiền lời. Nhưng hàng dư cũng phải có đầu ra và tiền để giữ, nên anh/chị tính khoản còn lại theo từng mã, như cách đọc biên lời của sản phẩm.
Từ tiền mất đến số đặt nhà cung cấp
Chỉ biết tiền mất chưa đủ để chốt lượng hàng. Anh/chị còn cần vài mức nhu cầu và cơ hội xảy ra, giả sử cửa sổ trên có ba mức: 360, 414, 480 sản phẩm. Cơ hội tương ứng là 20%, 50%, 30%, chỉ dùng để minh hoạ cách chọn.
Với tiền mất thiếu 80.000đ, dư 10.000đ, ngưỡng cần phủ là 80.000 / (80.000 + 10.000) ≈ 88,9%. “Phủ” nghĩa là đủ hàng trong từng mức nhu cầu giả sử. Có 414 món thì đủ ở hai mức đầu, tổng cơ hội 70%. Muốn vượt 88,9% trong ví dụ, chọn 480 món.
Mức đệm do đó là 480 − 414 = 66 sản phẩm, áp cho cả cửa sổ chờ hàng, không riêng ngày sale. Nếu tiền mất dư tăng thành 60.000đ, ngưỡng phủ hạ còn 57,1%. Lúc ấy 414 đã đủ, nên ví dụ mã theo trend không cần thêm 66.
| Việc cần chốt | Cách tính | Ví dụ giả sử |
|---|---|---|
| Nhu cầu cả cửa sổ | Ngày sale cộng ngày trước và sau | 240 + 174 = 414 sản phẩm |
| Lượng muốn có | Chọn theo tiền mất dư và thiếu | 480; đệm 66 cho cả cửa sổ |
| Hàng dùng được | Tồn bán được, đã trừ hàng giữ cho đơn khác | 100 sản phẩm |
| Hàng đang về | Chỉ tính chuyến tới trước cửa sổ | 60 sản phẩm, tới 07/11 |
| Đặt thêm | Lượng muốn có trừ hai khoản trên | 480 − 100 − 60 = 320 sản phẩm |
| Quy cách đặt | Số đặt tối thiểu và bội số mỗi lô | Tối thiểu 40, mỗi lô 40; đặt 8 lô |
| Lịch và vốn | Giao 7 ngày, cần tới 08/11 | Chốt chậm nhất 01/11; 320 × 70.000 = 22.400.000đ |
Số 480 là lượng muốn có, số 320 mới là đặt thêm. Chuyến 60 món phải tính đúng một lần trong bảng. Nếu chuyến đó tới sau 08/11, đừng coi nó sẵn có từ đầu; phải chia lịch theo ngày và xem lúc nào kho trống.
Trong ví dụ, bội số lô vừa khớp với số cần. Nếu phải làm tròn lô, so tiền mất dự kiến giữa hai mức đặt gần nhất. Nhà cung cấp không nhận lô nhỏ thì thương lượng giao tách chuyến. Mã mới chưa có lịch sử, tôi thử lượng đủ tới chuyến bù đầu tiên và giới hạn bằng số tiền chịu mất.
Các ngưỡng này cần số của chính gian để dùng thật. Hai đợt sale chưa đủ để đo cơ hội tới 88,9%. Nếu chưa có lịch sử đủ tin, so mức thấp và mức cao, ghi rõ tiền mất ở mỗi mức. Đừng biến tỷ lệ giả sử trong bài thành độ tin cậy của kho mình.
Nhờ ChatGPT làm bảng, giữ quyền chốt ở anh/chị
ChatGPT tính được khi có công thức và dữ liệu phù hợp. Tôi dùng nó cho phần công thức cần kiểm bằng tay. Phản biện “đưa file cho máy chạy tính là xong” đúng ở phần số học, nhưng file ấy vẫn thiếu lịch còn hàng và điều kiện sale.
Anh/chị làm bảng mỗi mã một dòng cho mỗi ngày. Cột C là số sản phẩm, D là loại ngày, E là tình trạng hàng. Điền cả ngày đủ hàng nhưng không bán được, với số không, vì file chỉ có đơn đã bán sẽ bỏ mất những ngày ấy.
Với mã MA01 nằm trong 28 dòng, nhờ AI viết công thức nền. Một cách viết là =AVERAGEIFS(C2:C29;B2:B29;"MA01";D2:D29;"thường";E2:E29;"đủ cả ngày"). Dấu phân cách đổi theo cài đặt file của anh/chị. Chọn một mã, cộng tay các ngày đủ điều kiện rồi chia số ngày để đối chiếu.
Tôi muốn nhìn số dòng được giữ trước khi tin trung bình. Nếu không còn ngày hợp lệ thì ghi thiếu dữ liệu, đừng trả số không. Sau sale, ghi sai lệch trên toàn cửa sổ chờ hàng, nhưng mã hết hàng giữa chừng thì số bán thấp chưa chứng minh đã dự báo dư.
Người chốt hàng kỹ sẽ ghi điều kiện khiến mình đổi số. Ví dụ, đủ hàng dưới 100% lượng đã chọn thì chưa tăng quảng cáo trước khi xác nhận chuyến bù. Vốn đặt vượt tiền còn sau các khoản phải trả thì giảm lô hoặc chia chuyến. Theo dõi thời gian bán hết tồn để sửa tiền mất dư cho lần sau.
Khung này yếu khi mã mới, đổi giá mạnh hoặc đổi nguồn khách. Cách chọn lượng cũng giả sử tiền mất mỗi món không đổi trong cả cửa sổ. Không có lịch sử, công cụ khác vẫn cần giả định để tính; nếu chờ đủ số mới nhập thì anh/chị sẽ bỏ lỡ cơ hội. Tôi chấp nhận thử, nhưng ghi trước số tiền chịu mất nếu hàng không bán được.
Quay lại tối nhà cung cấp đang chờ số chốt. Trước khi trả lời, anh/chị mở thêm sổ ngày bất thường. Câu hỏi đầu tiên cho ChatGPT đổi thành: “Những ngày nào trong file này chưa nói hết nhu cầu?”
Tôi muốn anh/chị nhẹ người vì biết mình đang cược bao nhiêu tiền.
Câu hỏi thường gặp
Dùng AI dự báo tồn kho có được không?
Được, nếu dữ liệu và cách tính đủ để kiểm lại. Anh/chị phải bổ sung lịch thiếu hàng, loại ngày và điều kiện khuyến mãi. AI tính đúng trung bình vẫn chưa đủ để chốt số nhập.
Ngày hết hàng từ chiều có tính vào nền không?
Không tính cả ngày đó vào nền của bảng theo ngày. Giữ ngày đủ hàng mà bán không được với số không. Muốn tính bù theo giờ, cần lịch còn hàng và nhịp mua theo giờ.
Nên cộng bao nhiêu phần trăm tồn đệm cho 11.11?
Không có một tỷ lệ đệm chung cho mọi mã. Chọn theo tiền mất khi dư, tiền mất khi thiếu và các mức nhu cầu. Sau đó trừ tồn bán được cùng hàng về kịp, rồi mới chốt số đặt.


