TL;DR
Rumus diskon Excel paling dasar adalah =B2*(1-C2), di mana B2 harga awal dan C2 persentase diskon dalam format persen. Buat cari nominal potongannya doang, pakai =B2*C2. Kalau diskonnya bertingkat berdasarkan jumlah belanja, gabungin IF bersarang atau IFS biar satu rumus bisa nangani semua tingkat.
Rumus diskon di Excel yang paling sering dipakai cuma satu baris: =B2*(1-C2), harga awal dikali sisa persentase setelah dipotong diskon.
Masalahnya, di lapangan toko beneran lebih ribet. Ada diskon bertingkat, ada diskon ganda, ada yang minta nominal potongannya doang buat laporan.
Aku bahas semuanya di sini, pakai contoh data toko retail beneran.
Ada dua rumus yang perlu kamu hafal, dan keduanya jawab pertanyaan berbeda.
' Harga yang harus dibayar setelah diskon
=B2*(1-C2)
' Nominal potongannya berapa rupiah
=B2*C2
B2 = harga awal. C2 = persentase diskon.
Kuncinya ada di format sel C2. Kalau di situ tertulis 20%, Excel baca sebagai 0,2 dan rumusnya jalan mulus. Kalau di situ tertulis angka 20 polos, kamu harus bagi 100:
=B2*(1-C2/100)
Kesalahan di titik ini yang bikin hasil diskon jadi minus jutaan. Excel nggak salah. Dia cuma nurut sama angka yang kamu kasih.
Kebalikannya. Kamu punya harga sebelum dan sesudah, mau tau potongannya berapa persen.
=(B2-C2)/B2
B2 harga awal, C2 harga setelah diskon. Format selnya jadi persen (Ctrl + Shift + %).
Harga 250.000 turun jadi 200.000 → hasilnya 20%.
Yang sering kebalik: pembaginya harus harga awal, bukan harga akhir. Kalau kamu bagi 200.000, hasilnya 25%, dan itu angka yang beda artinya (itu markup, bukan diskon).
Kasus paling umum di retail. Belanja makin banyak, diskon makin gede.
| Total belanja | Diskon |
|---|---|
| < 200.000 | 0% |
| 200.000 - 499.999 | 5% |
| 500.000 - 999.999 | 10% |
| ≥ 1.000.000 | 15% |
Cara pertama, pakai IFS, lebih bersih dari IF bersarang:
=IFS(B2>=1000000; 15%;
B2>=500000; 10%;
B2>=200000; 5%;
TRUE; 0%)
Urutannya harus dari besar ke kecil. Excel berhenti di kondisi pertama yang cocok. Kalau kamu mulai dari B2>=200000, semua transaksi 1 juta bakal kena 5% doang.
Cara kedua, dan ini yang aku lebih suka: taruh tingkatannya di tabel bantu, lalu pakai VLOOKUP mode approximate.
' Tabel bantu di F2:G5
' F2=0 G2=0%
' F3=200000 G3=5%
' F4=500000 G4=10%
' F5=1000000 G5=15%
=VLOOKUP(B2; $F$2:$G$5; 2; TRUE)
Argumen terakhir TRUE artinya "cari nilai terdekat yang nggak melebihi". Kolom F harus urut dari kecil ke besar.
Kenapa cara ini lebih enak? Kalau bos ganti aturan diskon minggu depan, kamu tinggal edit tabelnya. Nggak perlu bongkar rumus di 500 baris.
Ini jebakan hitungan yang lumayan mahal kalau kelewat.
Diskon 20% terus diskon 10% lagi bukan 30%. Hasilnya 28%.
=B2*(1-20%)*(1-10%)
Harga 100.000 → potong 20% jadi 80.000 → potong 10% dari 80.000, bukan dari 100.000 → jadi 72.000.
Total potongan 28.000, alias 28%. Kalau kamu ngejumlah dua persennya jadi 30%, harga jualmu bakal kecatat 70.000, selisih 2.000 per item. Kali 10.000 transaksi, itu 20 juta.
Aku pakai toko_berkah, data 500 transaksi UMKM sembako di Yogyakarta, Januari-Maret 2026.
Skenarionya: pemiliknya mau nerapin diskon bertingkat, tapi ragu bakal rugi apa nggak.
Sheet-nya disusun kayak gini:
| B (total belanja) | C (diskon) | D (potongan) | E (bayar) | |
|---|---|---|---|---|
| 2 | 680.000 | =VLOOKUP(B2;$G$2:$H$5;2;TRUE) → 10% | =B2*C2 → 68.000 | =B2-D2 → 612.000 |
| 3 | 145.000 | 0% | 0 | 145.000 |
| 4 | 1.240.000 | 15% | 186.000 | 1.054.000 |
Rekapnya pakai satu rumus:
' Total potongan yang harus ditanggung toko
=SUM(D2:D501) → 8.412.000
' Omzet sebelum diskon
=SUM(B2:B501) → 142.870.000
' Persentase diskon efektif
=SUM(D2:D501)/SUM(B2:B501) → 5,9%
Ini angka yang bikin keputusannya jelas: meskipun tingkat diskon tertingginya 15%, diskon efektif di seluruh toko cuma 5,9%. Alasannya, 62% transaksi nilainya di bawah 200 ribu, nggak kena diskon sama sekali.
Kalau margin kotornya 18%, potongan 5,9% masih nyisain 12%. Promonya aman.
Tanpa hitungan ini, pemiliknya kemungkinan besar bakal nolak promo gara-gara kaget lihat angka 15%.
Tabel diskon nggak dikunci. Rumus =VLOOKUP(B2;F2:G5;2;TRUE) yang ditarik ke bawah bikin range-nya geser jadi F3:G6, lalu F4:G7. Hasilnya ngaco di baris bawah. Kunci pakai dolar: $F$2:$G$5.
Persen ditulis sebagai angka polos. Sel berisi 20 tapi diformat persen → Excel baca 2000%. Cek di formula bar, harusnya tertulis 0,2 atau 20%.
Pembulatan nggak dipasang. Diskon 7,5% dari 145.700 ngasih 10.927,5 rupiah. Nggak ada uang setengah rupiah. Bungkus pakai ROUND:
=ROUND(B2*C2; 0) ' bulat ke rupiah
=ROUND(B2*C2; -2) ' bulat ke ratusan terdekat
Diskon dihitung setelah PPN. Urutan yang bener: potong diskon dulu, baru kena PPN. Kalau kebalik, angka pajaknya salah. Detailnya aku bahas di artikel rumus PPN 12% di Excel.
Diskon negatif kelewat. Kalau kolom diskon diisi manual, satu typo bisa bikin diskon 200%. Pasang pengaman: =MAX(0; MIN(B2*C2; B2)). Potongan nggak akan pernah negatif atau melebihi harga.
| Situasi | Pakai |
|---|---|
| Aturan diskon 2-3 tingkat, jarang berubah | IFS |
| Tingkatannya 4+ atau sering direvisi | VLOOKUP + tabel bantu |
| Diskon per kategori produk | VLOOKUP exact match |
| Diskon flat buat semua | Rumus polos =B2*(1-$C$1) |
Buat parameter lengkap fungsi VLOOKUP dan mode approximate match-nya, dokumentasi resmi Microsoft ada di halaman fungsi VLOOKUP.
Rumus harga setelah diskon adalah =B2*(1-C2), dengan B2 harga awal dan C2 persentase diskon yang diformat persen. Kalau C2 masih ditulis sebagai angka 20 (bukan 20%), rumusnya jadi =B2*(1-C2/100). Buat dapetin nominal potongannya aja, pakai =B2*C2.
Pakai =(harga_awal-harga_akhir)/harga_awal, lalu format selnya jadi persen. Harga awal 250.000 dan harga akhir 200.000 ngasih 20%. Jangan kebalik. Kalau pembaginya harga akhir, angkanya jadi 25% dan itu markup, bukan diskon.
Pakai IFS atau IF bersarang: =IFS(B2>=1000000;15%;B2>=500000;10%;B2>=200000;5%;TRUE;0). Urutannya dari syarat paling besar ke paling kecil, karena Excel berhenti di kondisi pertama yang cocok. Kalau tingkatannya sering berubah, lebih rapi pakai tabel bantu plus VLOOKUP approximate match.
Bukan 30%, tapi 28%. Diskon ganda dihitung berurutan: =B2*(1-20%)*(1-10%). Harga 100.000 jadi 80.000 setelah diskon pertama, lalu 72.000 setelah diskon kedua, total potongan 28%.
Paling sering gara-gara sel diskonnya berisi angka 20 tapi diformat persen, jadi Excel baca 2000%. Cek isi selnya di formula bar. Penyebab kedua: referensi tabel diskon nggak dikunci pakai dolar, jadi kegeser waktu rumusnya ditarik ke bawah.
Yang perlu kamu bawa:
=B2*(1-C2) buat harga bayar, =B2*C2 buat nominal potongan.Coba hitung diskon efektif di data penjualanmu sendiri, angka itu yang sebenernya nentuin promomu untung atau boncos. Latihan VLOOKUP interaktifnya ada di halaman fungsi VLOOKUP.
Lanjut baca: rumus penjumlahan Excel buat pemula.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Cara pakai rumus FV dan PV Excel buat hitung nilai uang di masa depan dan sekarang. Lengkap dengan contoh tabungan dan target modal UMKM.
Investasi kelihatan untung di atas kertas, tapi nilai uang berubah tiap tahun. NPV dan IRR Excel bantu kamu nilai apakah proyek beneran layak, bukan cuma kelihatan untung.
Sebelum ambil pinjaman, kamu bisa hitung sendiri cicilan bulanannya pakai satu rumus. Ini cara PMT Excel bekerja, lengkap dengan contoh modal usaha dan jebakan bunga tahunan.