Laporan Penjualan: Struktur, Metrik Wajib, dan Cara Membacanya
Blog/Tutorial Excel & Sheets/Laporan Penjualan: Struktur, Metrik Wajib, dan Cara Membacanya

Laporan Penjualan: Struktur, Metrik Wajib, dan Cara Membacanya

BimaBima
·1 Juli 2025·10 menit baca

Penulis

Bima

Bima

Founder & Data Professional

Bagikan

TL;DR

Laporan penjualan adalah rekap transaksi yang disusun supaya omzet, jumlah transaksi, dan margin bisa dibaca per periode, produk, atau kanal. Struktur minimalnya satu baris per item transaksi dengan kolom tanggal, kode produk, jumlah, harga jual, dan harga pokok. Enam metrik yang wajib ada: omzet, jumlah transaksi, nilai transaksi rata-rata, unit terjual, margin kotor, dan pertumbuhan dibanding periode sebelumnya.

Laporan penjualan adalah rekap transaksi yang disusun supaya omzet, jumlah transaksi, dan margin bisa dibaca per periode, per produk, atau per kanal.

Masalahnya, kebanyakan laporan penjualan di UMKM cuma berisi tanggal dan total uang masuk. Bentuk kayak gitu bisa jawab satu pertanyaan: berapa yang masuk hari ini. Nggak bisa jawab kenapa turun, produk mana yang narik, atau bagian mana yang untungnya tipis.

Di bawah ini struktur kolom yang bikin laporanmu bisa dianalisis, enam metrik yang wajib dihitung, rumus spreadsheetnya, plus contoh membaca angka sebulan dari toko sembako.

Apa itu laporan penjualan?

Laporan penjualan adalah ringkasan terstruktur dari seluruh transaksi penjualan dalam satu periode. Isinya bukan cuma total uang masuk, tapi juga rincian per produk, jumlah transaksi, dan margin. Fungsinya buat menjawab tiga hal: berapa yang terjual, dari mana asalnya, dan apakah angkanya membaik dibanding periode sebelumnya.

Ada dua lapis yang sering ketuker. Lapis pertama adalah tabel transaksi mentah, yaitu catatan tiap barang yang keluar. Lapis kedua adalah laporannya, yaitu hasil rekap dari tabel itu.

Yang harus kamu jaga rapi adalah lapis pertama. Laporan apa pun bisa dibikin ulang dari data mentah yang bersih, tapi data mentah yang berantakan nggak bisa diselamatkan oleh laporan secantik apa pun.

Kolom apa aja yang wajib ada di tabel penjualan?

Kolom minimum yang bikin datamu bisa dianalisis ada tujuh: tanggal, nomor struk, kode produk, nama produk, jumlah, harga jual satuan, dan harga pokok satuan. Dengan tujuh kolom itu kamu udah bisa hitung omzet, unit terjual, jumlah transaksi, dan margin tanpa perlu nyatet apa pun lagi.

KolomContoh isiKenapa perlu
tanggal2025-06-14Basis semua rekap periode
no_strukTRX-0614-018Menghitung jumlah transaksi
kode_produkBRS-05Kunci gabung ke daftar barang
nama_produkBeras Pandan Wangi 5 kgBiar laporan kebaca manusia
kategoriBerasRekap per kelompok barang
jumlah2Menghitung unit terjual
harga_jual68000Menghitung omzet
harga_pokok61200Menghitung laba kotor

Aturan pentingnya: satu baris untuk satu item, bukan satu baris untuk satu struk. Kalau pembeli ambil beras dan minyak dalam satu struk, itu dua baris dengan nomor struk yang sama.

Kolom tambahan yang berguna kalau relevan: kanal (toko, WhatsApp, Shopee), kasir, dan metode bayar. Jangan bikin kolom yang isinya bisa dihitung, misalnya kolom subtotal. Itu tugas rumus.

Metrik apa yang wajib ada di laporan penjualan?

Ada enam metrik inti. Omzet, jumlah transaksi, nilai transaksi rata-rata, unit terjual, laba kotor, dan pertumbuhan dibanding periode sebelumnya. Enam angka ini cukup buat tau apakah bisnismu tumbuh dan dari mana pertumbuhannya datang.

MetrikCara hitungYang dijawab
OmzetΣ (jumlah × harga jual)Berapa uang yang masuk
Jumlah transaksiHitung no_struk unikBerapa kali orang belanja
Nilai transaksi rata-rataOmzet ÷ jumlah transaksiSekali belanja habis berapa
Unit terjualΣ jumlahBerapa barang keluar
Laba kotorOmzet - Σ (jumlah × harga pokok)Sisa sebelum biaya operasional
Pertumbuhan(periode ini ÷ periode lalu) - 1Membaik atau memburuk

Nilai transaksi rata-rata sering disingkat AOV, singkatan dari average order value. Angka ini yang paling sering dilupakan pemilik toko, padahal dia yang misahin dua penyebab omzet naik: pembelinya nambah, atau pembeli yang sama belanja lebih banyak.

Kalau kamu mau mengatur metrik ini jadi indikator yang dipantau rutin, konsepnya dibahas di glossary KPI.

Gimana rumus spreadsheet untuk tiap metrik?

Anggap tabel transaksimu ada di kolom A sampai H, baris 2 ke bawah, dengan susunan kolom kayak tabel di atas. Tambahkan kolom I sebagai subtotal dan kolom J sebagai HPP baris.

' Subtotal dan HPP per baris
I2  =F2*G2
J2  =F2*H2

' Omzet bulan Juni 2025
=SUMIFS(I:I, A:A, ">=2025-06-01", A:A, "<=2025-06-30")

' Unit terjual bulan Juni
=SUMIFS(F:F, A:A, ">=2025-06-01", A:A, "<=2025-06-30")

' Jumlah transaksi (nomor struk unik)
=COUNTA(UNIQUE(FILTER(B:B, (A:A>=DATE(2025,6,1))*(A:A<=DATE(2025,6,30)))))

' Nilai transaksi rata-rata
=Omzet/JumlahTransaksi

' Laba kotor
=SUMIFS(I:I, ...) - SUMIFS(J:J, ...)

' Omzet satu kategori
=SUMIFS(I:I, E:E, "Beras", A:A, ">=2025-06-01", A:A, "<=2025-06-30")

' Pertumbuhan bulanan
=OmzetJuni/OmzetMei-1

Fungsi yang paling sering kepakai di sini SUMIFS buat menjumlah dengan syarat, dan COUNTIFS buat menghitung baris dengan syarat. Detail argumennya ada di dokumentasi resmi Microsoft untuk SUMIFS.

Kalau kamu nggak mau nulis rumus sebanyak itu, pivot table ngerjain rekap yang sama dalam beberapa klik. Cara menampilkan kontribusi persen tiap produk ada di panduan persentase di pivot table.

Contoh kasus: membaca laporan penjualan toko_berkah

Ini dataset contoh ngulikdata bernama toko_berkah, sebuah toko sembako di Bekasi. Rekap Juni 2025:

MetrikMei 2025Juni 2025Perubahan
OmzetRp 45.000.000Rp 48.750.000+8,3%
Jumlah transaksi1.2001.250+4,2%
Nilai transaksi rata-rataRp 37.500Rp 39.000+4,0%
Laba kotorRp 8.100.000Rp 8.775.000+8,3%

Omzet naik 8,3 persen, dan kenaikannya datang dari dua arah sekaligus: pembeli nambah 50 transaksi, dan tiap transaksi naik Rp 1.500. Ini pola yang sehat.

Sekarang pecah per kategori:

KategoriOmzet JuniPorsi omzetLaba kotorPorsi laba
BerasRp 14.625.00030%Rp 1.462.50017%
Minyak gorengRp 9.750.00020%Rp 1.365.00016%
Gula dan tepungRp 7.312.50015%Rp 1.462.50017%
Mi instanRp 6.825.00014%Rp 1.638.00019%
LainnyaRp 10.237.50021%Rp 2.847.00032%
TotalRp 48.750.000100%Rp 8.775.000100%

Di sini angkanya mulai ngomong. Beras nyumbang 30 persen omzet tapi cuma 17 persen laba kotor, karena marginnya 10 persen. Sementara kategori lainnya, isinya sabun, snack, dan bumbu, cuma 21 persen omzet tapi ngasih 32 persen laba.

Artinya beras kerjanya narik orang masuk toko, bukan ngasih untung. Keputusan yang masuk akal dari data ini: stok beras jangan dikurangi, tapi tata letaknya diatur supaya pembeli beras lewat rak snack dan bumbu.

Kalau kamu cuma lihat baris omzet total, insight kayak gini nggak akan muncul.

Gimana urutan membaca laporan penjualan?

Baca dari atas ke bawah dalam empat langkah. Mulai dari arah tren, lalu penyebabnya, lalu rincian per produk, baru tindakan. Urutan ini yang mencegah kamu ngambil keputusan dari satu angka yang kebetulan naik.

  1. Cek arah. Omzet dan laba kotor naik atau turun dibanding periode sebelumnya? Bandingkan juga dengan bulan yang sama tahun lalu kalau usahamu musiman.
  2. Cari penyebabnya. Pecah perubahan omzet jadi jumlah transaksi dan nilai transaksi rata-rata. Naik karena orangnya nambah, atau karena tiap orang belanja lebih banyak?
  3. Turun ke produk. Kategori mana yang bergerak paling besar. Cek porsi omzet dan porsi laba berdampingan, jangan cuma salah satu.
  4. Tetapkan satu tindakan. Satu bulan, satu perubahan. Kalau kamu ubah tiga hal sekaligus, bulan depan kamu nggak tau mana yang berhasil.

Buat menemukan produk yang paling menentukan, urutkan omzet dari besar ke kecil lalu lihat kontribusi kumulatifnya. Teknik ini dibahas terpisah di cara membuat Pareto chart di Excel.

Kesalahan umum saat menyusun laporan penjualan

1. Satu sheet per bulan. Kelihatan rapi, tapi bikin perbandingan antar bulan jadi kerja manual. Simpan semua transaksi di satu sheet, pisahkan lewat kolom tanggal.

2. Tanggal disimpan sebagai teks. Kalau kolom tanggal ditulis "14 Juni 2025", spreadsheet nggak bisa urutkan atau filter periode. Pakai format tanggal asli.

3. Nama produk ditulis bebas. "Beras 5kg", "beras 5 kg", dan "Beras 5 Kg" bakal terhitung tiga produk berbeda. Pakai kode produk sebagai kunci, nama cuma pelengkap.

4. Nggak nyatet harga pokok. Tanpa HPP, kamu cuma bisa lihat omzet dan buta soal margin. Ini sumber kesalahan paling mahal, karena produk laris bermargin tipis keliatan kayak juara.

5. Menghapus baris transaksi yang batal. Jangan dihapus. Tandai statusnya jadi batal atau retur, biar riwayatnya tetap ada dan angka bulan lalu nggak berubah sendiri.

6. Menggabungkan sel buat judul. Sel gabungan bikin filter, sortir, dan pivot table jadi kacau. Simpan judul cantik di sheet laporan, bukan di sheet data.

FAQ

Apa isi minimal sebuah laporan penjualan?

Minimal ada periode yang jelas, omzet total, jumlah transaksi, dan rincian per produk atau kategori. Kalau kamu punya harga pokok, tambahkan laba kotor supaya keliatan produk mana yang cuma ramai tapi tipis untungnya. Tanpa rincian per produk, laporanmu cuma bisa jawab berapa yang masuk, bukan dari mana uangnya datang dan bagian mana yang perlu diperbaiki bulan depan.

Bedanya omzet dan laba di laporan penjualan apa?

Omzet adalah total nilai barang yang terjual sebelum dikurangi biaya apa pun. Laba kotor adalah omzet dikurangi harga pokok barang yang terjual. Laba bersih baru muncul setelah biaya sewa, gaji, listrik, dan biaya lain ikut dikurangkan. Toko bisa punya omzet naik tapi laba turun kalau yang laris justru barang bermargin tipis, jadi dua angka ini harus dibaca bareng.

Sebaiknya laporan penjualan dibuat harian atau bulanan?

Dua-duanya, dengan fungsi beda. Laporan harian dipakai buat kontrol operasional: cocokin uang kas, cek barang habis, dan lihat jam ramai. Laporan bulanan dipakai buat keputusan: pertumbuhan, margin per kategori, dan produk mana yang mau dikurangi stoknya. Kalau sumber datanya satu tabel transaksi yang rapi, dua laporan itu bisa dibikin dari data yang sama tanpa nyatet dua kali.

Kenapa laporan penjualan sebaiknya satu baris per item, bukan per struk?

Karena satu struk sering berisi beberapa barang berbeda. Kalau kamu nyatet satu baris per struk, kamu kehilangan informasi produk mana yang terjual, dan analisis per kategori jadi mustahil. Satu baris per item bikin kamu tetap bisa hitung jumlah transaksi lewat kode struk yang unik, sekaligus bisa hitung unit terjual dan margin per produk dari tabel yang sama.

Perlu software khusus buat bikin laporan penjualan?

Nggak, selama transaksimu masih di bawah beberapa ribu baris per bulan. Excel atau Google Sheets udah cukup buat semua metrik di artikel ini, apalagi dengan pivot table. Software kasir baru kepakai kalau kamu punya banyak cabang, butuh stok real time, atau ada beberapa orang yang input data bersamaan di waktu yang sama.

Penutup

Dua hal yang paling nentuin kualitas laporan penjualanmu. Pertama, struktur data mentahnya: satu baris per item, tanggal beneran tanggal, dan harga pokok ikut dicatat. Kedua, kebiasaan membaca omzet berdampingan dengan laba, karena produk paling laris sering bukan produk paling menguntungkan.

Di toko_berkah, beras nyumbang 30 persen omzet tapi cuma 17 persen laba. Angka kayak gitu cuma kelihatan kalau laporanmu punya kolom HPP.

Coba buka file penjualanmu sekarang, tambahkan kolom harga pokok, lalu hitung laba kotor per kategori bulan lalu. Lanjut baca 10 contoh format laporan penjualan kalau kamu mau template yang tinggal disesuaikan sama jenis usahamu.

Coba Langsung

Mau praktek langsung? Mulai latihan SQL gratis

Latihan interaktif, langsung di browser.

Buka NgulikSQL →
Bagikan:
Bima
Ditulis oleh

Bima

Founder & Data Professional

Founder Ngulik Data. Passionate about making data analysis accessible for everyone.

Artikel terkait

XLOOKUP Google Sheets: Cara Pakai dan Contohnya (2026)
Tutorial Excel & Sheets
20 Juli 2026•9 menit baca

XLOOKUP Google Sheets: Cara Pakai dan Contohnya (2026)

XLOOKUP nyari nilai dan bisa ke kiri atau kanan, plus punya nilai default kalau nggak ketemu. Ini pengganti VLOOKUP yang lebih ringkas.

BimaBima
INDEX MATCH Google Sheets: Lookup Lebih Fleksibel dari VLOOKUP (2026)
Tutorial Excel & Sheets
19 Juli 2026•9 menit baca

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.

BimaBima
SUMPRODUCT Google Sheets: Hitung Berbobot Tanpa Ribet (2026)
Tutorial Excel & Sheets
18 Juli 2026•8 menit baca

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.

BimaBima
Kembali ke Blog
Ngulik Data logoNgulik Data

Platform edukasi data lengkap untuk professionals Indonesia. Belajar SQL, Data Analysis, dan lebih banyak lagi dengan praktek langsung dan feedback real-time.

© 2026 Ngulik Data. Semua hak dilindungi.

TAUTAN
BantuanHargaDatasetBlogAfiliasi
LEGAL
Syarat & KetentuanKebijakan Privasi
Ngulik Data
DatasetLeaderboardBlogStore