Mengukur Akurasi Peramalan: MAE, MAPE, dan RMSE di Spreadsheet
TL;DR
MAE adalah rata-rata selisih ramalan dan aktual dalam satuan asli, gampang dijelaskan ke siapa pun. MAPE mengubah selisih itu jadi persen sehingga bisa dibandingkan antar produk yang skalanya beda, tapi meledak kalau ada nilai aktual nol. RMSE menghukum kesalahan besar lebih berat karena selisihnya dikuadratkan, jadi cocok kalau meleset jauh sekali lebih merugikan daripada meleset sedikit berkali-kali. Ketiganya bisa dihitung di Excel atau Google Sheets pakai ABS, AVERAGE, dan SQRT.
MAE, MAPE, dan RMSE adalah tiga cara ngukur seberapa jauh ramalan kamu meleset dari kenyataan. Ketiganya bisa dihitung di spreadsheet cuma pakai ABS, AVERAGE, dan SQRT.
Kenapa ini penting: tanpa angka akurasi, kamu gak punya cara tahu apakah cara meramal yang baru lebih baik dari yang lama. Diskusinya bakal berhenti di "perasaanku sih lebih pas".
Aku bakal hitung ketiganya pakai data penjualan riil toko_berkah, jelasin kapan masing-masing dipakai, dan tunjukin satu jebakan yang bikin MAPE jadi menyesatkan.
Apa itu MAE, MAPE, dan RMSE?
MAE (Mean Absolute Error) adalah rata-rata dari selisih ramalan dan aktual tanpa memandang arah. MAPE (Mean Absolute Percentage Error) mengubah tiap selisih itu jadi persen dari nilai aktual, lalu dirata-rata. RMSE (Root Mean Squared Error) mengkuadratkan tiap selisih sebelum dirata-rata, lalu diakarkan, sehingga kesalahan besar dihukum lebih berat.
Bedanya paling gampang dilihat lewat satu contoh.
Misal ramalanmu meleset 10 unit di sebelas bulan, lalu meleset 200 unit di satu bulan. MAE-nya cuma naik sedikit. RMSE-nya melonjak.
Itu bukan kelemahan RMSE. Itu memang tugasnya.
Langkah 1: Susun datanya
Kamu butuh dua kolom saja: aktual dan ramalan. Ini data penjualan bulanan minyak goreng 2 liter di toko_berkah cabang Semarang, dalam satuan karton.
| Bulan | Aktual | Ramalan | Error | |Error| | Error² | |% Error| |
|---|---|---|---|---|---|---|
| Jan | 420 | 400 | 20 | 20 | 400 | 4,8% |
| Feb | 385 | 410 | -25 | 25 | 625 | 6,5% |
| Mar | 512 | 430 | 82 | 82 | 6.724 | 16,0% |
| Apr | 640 | 480 | 160 | 160 | 25.600 | 25,0% |
| Mei | 398 | 520 | -122 | 122 | 14.884 | 30,7% |
| Jun | 402 | 440 | -38 | 38 | 1.444 | 9,5% |
| Jul | 445 | 425 | 20 | 20 | 400 | 4,5% |
| Agu | 430 | 435 | -5 | 5 | 25 | 1,2% |
| Sep | 418 | 432 | -14 | 14 | 196 | 3,3% |
| Okt | 455 | 428 | 27 | 27 | 729 | 5,9% |
| Nov | 472 | 445 | 27 | 27 | 729 | 5,7% |
| Des | 590 | 470 | 120 | 120 | 14.400 | 20,3% |
Empat kolom terakhir itu kolom bantu. Bikin sekali, kepakai buat ketiga metrik.
Langkah 2: Bikin kolom bantunya
Anggap aktual di kolom B mulai baris 2, ramalan di kolom C.
D2: =B2-C2 → error (boleh minus)
E2: =ABS(D2) → absolute error
F2: =D2^2 → squared error
G2: =ABS(D2)/B2 → absolute percentage error
Tarik ke bawah sampai baris terakhir.
Kolom D sengaja gak diabsolutkan. Kamu bakal butuh tandanya nanti buat ngecek bias.
Referensi lengkap tiap fungsi ada di daftar fungsi Excel resmi Microsoft.
Langkah 3: Hitung ketiga metriknya
MAE =AVERAGE(E2:E13)
MAPE =AVERAGE(G2:G13)
RMSE =SQRT(AVERAGE(F2:F13))
Bias =AVERAGE(D2:D13)
Hasil untuk data di atas:
| Metrik | Nilai | Artinya |
|---|---|---|
| MAE | 55,0 karton | Rata-rata meleset 55 karton per bulan |
| MAPE | 11,1% | Rata-rata meleset 11,1% dari aktual |
| RMSE | 76,7 karton | Ada beberapa bulan yang melesetnya jauh |
| Bias | +21,0 karton | Ramalan cenderung terlalu rendah |
Perhatikan selisih MAE dan RMSE. 55 lawan 76,7.
Selisih itu artinya kesalahan gak merata. Ada bulan yang melesetnya ekstrem, dan begitu aku cek kolom E, tiga tersangkanya jelas: April meleset 160, Mei meleset 122, Desember meleset 120.
April dan Mei 2025 itu periode Ramadan dan Lebaran. Desember libur akhir tahun.
Jadi bukan model yang jelek. Modelnya cuma gak tahu soal hari raya.
Kolom bias juga penting. Nilainya +21, artinya ramalan sistematis terlalu rendah. Kalau nilainya mendekati nol tapi MAE-nya besar, artinya melesetnya acak, bukan sistematis.
Kapan pakai yang mana?
| Situasi | Pakai | Alasan |
|---|---|---|
| Presentasi ke tim gudang | MAE | Satuannya karton, langsung kebayang |
| Bandingkan akurasi antar produk | MAPE | Persen bisa dibanding lintas skala |
| Stok barang cepat basi | RMSE | Meleset besar sekali lebih mahal |
| Produk sering nol penjualan | MAE | MAPE gak bisa dihitung kalau aktual nol |
| Cek arah kesalahan | Bias | Nunjukin kebiasaan over atau under |
Aku biasanya lapor MAE dan bias ke tim operasional, lalu simpan RMSE buat diriku sendiri saat membandingkan dua metode peramalan.
Jebakan MAPE yang bikin angkanya nipu
MAPE punya satu masalah besar: pembagian dengan nilai aktual.
Di toko_berkah ada produk seragam sekolah yang penjualannya nol di 4 bulan. Waktu aku hitung MAPE-nya, hasilnya #DIV/0!.
Aku buang 4 baris itu, dan MAPE-nya jadi 34%. Kelihatannya jelek.
Tapi MAE-nya cuma 6 potong per bulan. Melesetnya kecil, cuma karena angka aktualnya juga kecil, persennya jadi besar.
Ini kesalahan penafsiran yang mahal. Kalau kamu memutuskan ganti metode peramalan gara-gara MAPE 34%, kamu ngeluarin usaha buat masalah yang nilainya 6 potong sebulan.
Aturan yang aku pakai: kalau nilai aktual rata-rata di bawah 30, jangan pakai MAPE. Pakai MAE saja.
Masalah kedua MAPE: dia lebih menghukum ramalan yang kelebihan daripada yang kekurangan. Ramalan 150 untuk aktual 100 kena 50%, tapi ramalan 50 untuk aktual 100 juga kena 50%, padahal ramalan yang kelebihan bisa meleset sampai tak terbatas sementara yang kekurangan mentok di 100%.
Contoh kasus: bandingkan tiga metode peramalan
Ini yang paling berguna dari ketiga metrik itu. Bukan buat menilai satu ramalan, tapi buat membandingkan beberapa cara.
Aku uji tiga metode di 24 bulan data penjualan toko_berkah, dievaluasi di 12 bulan terakhir.
| Metode | MAE | MAPE | RMSE |
|---|---|---|---|
| Naif (pakai angka bulan lalu) | 68,3 | 14,2% | 91,5 |
| Rata-rata bergerak 3 bulan | 55,0 | 11,1% | 76,7 |
| Rata-rata bergerak + faktor musiman | 31,4 | 6,8% | 39,2 |
Angka yang paling penting di tabel ini baris pertama.
Metode naif itu patokan minimum. Kalau modelmu kalah dari sekadar menyalin angka bulan lalu, modelmu gak berguna, sekompleks apa pun rumusnya.
Baris ketiga menariknya bukan cuma MAE turun. RMSE turun dari 76,7 ke 39,2, dan itu turunnya lebih tajam dari MAE.
Artinya faktor musiman gak cuma bikin ramalan lebih akurat rata-rata. Dia hilangin bulan-bulan yang melesetnya ekstrem, yang justru paling bikin repot tim gudang.
Faktor musimannya sendiri sederhana: hitung rata-rata penjualan tiap bulan dibagi rata-rata tahunan, pakai AVERAGEIF per nama bulan, lalu kalikan ramalan dasar dengan faktor itu.
Kesalahan umum saat ngukur akurasi ramalan
Ngukur di data yang dipakai bikin modelnya. Kalau rata-rata bergerak kamu dihitung dari 12 bulan yang sama yang kamu pakai buat evaluasi, angkanya bakal terlalu bagus. Pisahkan periode latih dan periode uji.
Cuma lapor satu angka. MAE 55 tanpa konteks gak berarti apa-apa. Selalu bandingkan dengan metode naif.
Rata-rata error tanpa diabsolutkan. Meleset +100 dan -100 bakal jadi nol, dan kamu bakal mengira ramalanmu sempurna. Itu bias, bukan akurasi. Dua-duanya perlu dilaporkan terpisah.
Pakai MAPE di produk yang sering nol. Hasilnya bukan cuma error, tapi angka yang menyesatkan setelah baris nol dibuang.
Ngukur akurasi cuma sekali. Akurasi berubah tiap kondisi pasar berubah. Hitung ulang tiap bulan dan simpan riwayatnya.
Gak ngeliat bulan mana yang paling meleset. Angka ringkas itu titik awal, bukan akhir. Urutkan kolom absolute error dari besar ke kecil, lalu cek tiga baris teratas. Di situ hampir selalu ada cerita.
FAQ
MAE, MAPE, atau RMSE, mana yang paling bagus?
Gak ada yang paling bagus untuk semua kasus. MAE paling gampang dijelaskan ke tim non-teknis karena satuannya sama dengan data aslinya. MAPE dipakai kalau kamu perlu membandingkan akurasi antar produk yang skalanya jauh berbeda. RMSE dipakai kalau kesalahan besar jauh lebih merugikan daripada kesalahan kecil, misalnya stok bahan baku yang gampang basi.
Kenapa MAPE saya jadi error atau angkanya ribuan persen?
Karena ada baris dengan nilai aktual nol atau mendekati nol, dan pembagian dengan nol bikin hasilnya meledak. Ini sering terjadi di produk musiman yang beberapa bulan gak laku sama sekali. Solusinya: buang baris beraktual nol dari perhitungan dan catat berapa baris yang dibuang, atau ganti ke MAE yang gak punya masalah pembagian.
Berapa nilai MAPE yang dianggap bagus?
Tergantung produknya, bukan angka universal. Dari data toko_berkah, produk sembako yang permintaannya stabil bisa dapat MAPE di bawah 10%, sementara produk musiman seperti perlengkapan sekolah sulit turun di bawah 25%. Patokan yang lebih berguna: bandingkan modelmu dengan ramalan naif. Kalau kalah dari itu, modelmu belum berguna.
Apa bedanya RMSE dan MAE kalau angkanya mirip?
Kalau RMSE dan MAE berdekatan, artinya kesalahan ramalanmu tersebar merata tanpa kejutan besar. Kalau RMSE jauh lebih tinggi dari MAE, ada beberapa bulan yang melesetnya ekstrem. Selisih itu justru informasi berharga. Cari bulan-bulan itu dan cek apa yang terjadi, biasanya ada promo, libur panjang, atau kejadian sekali yang gak masuk model.
Apakah bisa dihitung otomatis di Google Sheets tanpa kolom bantu?
Bisa, pakai formula array. Untuk MAE tulis =AVERAGE(ABS(B2:B13-C2:C13)) dan tekan Ctrl+Shift+Enter di Excel versi lama, atau langsung Enter di Excel 365 dan Google Sheets. Tapi aku tetap sarankan bikin kolom bantu. Kolom itu yang nanti kamu pakai buat cari bulan mana yang paling meleset.
Coba di data kamu
Tiga hal yang perlu dibawa pulang.
Satu, hitung MAE dan bias bareng-bareng. MAE bilang seberapa jauh melesetnya, bias bilang ke arah mana.
Dua, selalu bandingkan dengan metode naif. Tanpa pembanding, angka akurasi gak berarti apa-apa.
Tiga, cari tiga bulan yang paling meleset. Di situ letak informasinya, bukan di angka rata-ratanya.
Minggu ini coba tempel ramalan dan aktual 12 bulan terakhir di spreadsheet, bikin empat kolom bantu, lalu lihat apakah ramalan kamu kalah atau menang dari sekadar menyalin angka bulan lalu.
Kalau kamu mau lanjut ke analisis hubungan antar variabel penjualan, baca regresi linear berganda.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Artikel terkait
INDEX MATCH Google Sheets: Lookup Lebih Fleksibel dari VLOOKUP (2026)
INDEX MATCH gabung dua fungsi buat lookup yang bisa nyari ke kiri dan nggak gampang rusak. Ini alasan banyak analis pindah dari VLOOKUP.
SUMPRODUCT Google Sheets: Hitung Berbobot Tanpa Ribet (2026)
SUMPRODUCT ngaliin dua kolom atau lebih baris per baris, terus jumlahin hasilnya. Cocok buat total qty kali harga sampai hitungan bersyarat.
REGEXMATCH Google Sheets: Cek Kecocokan Pola Teks (2026)
REGEXMATCH ngecek apakah teks cocok sama pola tertentu dan balikin TRUE atau FALSE. Cocok buat validasi nomor HP, email, sampai filter data berantakan.