Kenapa HPP Makanan Sering Dihitung Terlalu Rendah
Fahmi, Grafena Group · 23 September 2026 · 7 menit baca hppharga menubiaya
Seorang pemilik restoran menghitung HPP setiap menunya di akhir pekan, menetapkan harga jual dari angka itu, dan merasa urusan harga sudah selesai. Sebulan kemudian jumlah porsi yang terjual sesuai perkiraan, tetapi uang yang tersisa jauh lebih sedikit daripada yang dijanjikan hitungan tadi. Tidak ada yang salah pada perkaliannya. Yang salah adalah angka yang dimasukkan ke dalamnya.
Rumusnya memang bukan bagian yang sulit, dan Anda tidak perlu mengerjakannya sendiri: kalkulator HPP menghitung biaya bahan per porsi dari harga beli dan takaran Anda, lalu menunjukkan harga jual dari target yang Anda pilih. Yang sulit adalah memastikan angka yang Anda ketik ke sana adalah angka yang benar-benar terjadi di dapur.
Artikel ini soal kenapa angka itu sering keluar terlalu rendah. Ada empat sebab yang berulang di banyak dapur: bahan yang tidak pernah masuk hitungan, porsi di resep yang tidak sama dengan porsi di piring, biaya yang baru terlihat di akhir bulan, dan harga beli yang sudah berubah sementara hitungannya tidak.
Bahan yang tidak masuk hitungan
Daftar bahan yang Anda tulis untuk sebuah menu biasanya lengkap di bagian yang besar. Ayam, beras, tepung, telur, santan: semuanya masuk karena semuanya terlihat, dibeli dalam jumlah yang jelas, dan punya harga yang Anda ingat. Yang hilang adalah bahan yang tidak pernah muncul di resep sebagai baris tersendiri.
Minyak goreng jarang dihitung per porsi karena satu wajan dipakai untuk banyak porsi. Bumbu dasar yang dimasak sekali untuk sehari penuh bernasib sama. Lalu ada pelengkap yang tidak pernah ditulis siapa pun: irisan timun, daun bawang, kerupuk, es batu di gelas, sedotan, sendok plastik, kotak untuk pesanan bawa pulang, kantongnya, dan sachet sambal yang diberikan tanpa diminta. Satu per satu nominalnya kecil sampai terasa tidak pantas dihitung. Digabungkan, lalu dikalikan jumlah porsi yang keluar sebulan, semuanya berubah menjadi selisih yang Anda cari di akhir bulan.
Cara menangkapnya tidak rumit, tetapi harus dikerjakan secara fisik, bukan di kepala. Susun satu porsi di meja persis seperti yang diterima tamu, lengkap dengan wadah, tutup, pelengkap, dan kemasan bawa pulangnya, lalu catat setiap benda yang menyentuh porsi itu. Untuk bahan yang dimasak sekali untuk banyak porsi, hitung biaya satu panci atau satu wajan, lalu bagi dengan jumlah porsi yang keluar dari sana, dan pakai hasilnya sebagai biaya per porsi. Kemasan yang dibeli per seratus atau per seribu lembar diperlakukan sama seperti bahan lain: harga satu kemasan dan isinya masuk sebagai satu baris di kalkulator, dan pembagiannya dikerjakan di sana. Kalkulator menerima baris sebanyak yang Anda butuhkan, jadi tidak ada alasan untuk menggabungkan bahan-bahan kecil menjadi satu tebakan.
Porsi di resep dan porsi di dapur
Resep menulis 150 gram. Juru masak menyendok sampai isinya terlihat pantas di piring, dan pada jam ramai takaran itu ditentukan oleh mata, bukan oleh timbangan. Selisih antara angka di kertas dan yang mendarat di piring tidak pernah nol, dan arahnya condong ke satu sisi: porsi yang kurang dikeluhkan tamu, porsi yang berlebih tidak dikeluhkan siapa pun.
Ada selisih kedua yang lebih besar dan lebih sering dilupakan, yaitu jarak antara berat yang Anda beli dan berat yang Anda sajikan. Ayam dibeli utuh lalu dipotong, dan tulang serta bagian yang dibuang tetap Anda bayar dengan harga ayam. Sayur datang dengan akar dan daun luar yang tidak pernah sampai ke piring. Daging menyusut saat dimasak. Jika biaya per porsi dihitung dari harga bahan mentah tanpa memperhitungkan bagian yang tidak terpakai, hasilnya lebih rendah daripada kenyataan, dan itu terjadi pada setiap porsi yang Anda jual.
Perbaikannya adalah menjadikan dapur sumber angkanya, bukan buku resep. Timbang satu porsi seperti yang benar-benar disajikan, beberapa kali, pada jam yang berbeda dan oleh orang yang berbeda, lalu pakai angka yang paling sering muncul. Untuk bahan yang disusut dan dipotong, pakai satu kemasan sampai habis dan catat berapa porsi yang dihasilkannya, lalu bagi harga kemasan itu dengan jumlah porsi tersebut. Angka yang Anda masukkan ke hitungan sebaiknya angka yang sudah menanggung susut dan sisa potongan, karena itulah yang Anda bayar ke pemasok.
Biaya yang baru muncul di akhir bulan
Bahan bukan satu-satunya yang habis ketika sebuah porsi dibuat. Gas mengalir selama kompor menyala. Listrik berjalan untuk kulkas, freezer, dan mesin kopi, dan tagihannya baru datang sebulan sekali. Kemasan dibeli borongan sekali dalam beberapa bulan, sehingga pengeluarannya terasa seperti belanja tersendiri, bukan seperti bagian dari harga satu porsi. Komisi aplikasi pesan antar dipotong sebelum uangnya sampai ke rekening Anda, jadi ia tidak pernah terlihat sebagai pengeluaran yang harus dibayar, melainkan sebagai penjualan yang ternyata lebih kecil daripada yang Anda catat.
Keempatnya punya sifat yang sama. Semuanya muncul sekali, jauh dari momen porsi itu dibuat, dan karena itu berakhir di kolom yang berbeda, atau tidak di kolom mana pun. Selama biaya ini hidup terpisah dari HPP, harga menu Anda hanya menutup bahan, dan sisa yang Anda kira laba sebenarnya adalah uang yang sudah punya tujuan lain sejak awal.
Karena itu biaya ini perlu ikut menempel pada biaya per porsi, bukan disimpan sebagai kekhawatiran tersendiri di luar hitungan menu. Di bawah tabel bahan, kalkulator menyediakan isian Biaya lain, yaitu bagian dari biaya bahan yang Anda sisihkan untuk gas dan listrik. Kemasan tidak ikut ke isian itu, karena tempatnya sudah ada di tabel bahan sebagai baris tersendiri, dan memasukkannya dua kali membuat hasilnya terlalu tinggi. Angka bawaan isian itu hanya contoh untuk memulai, jadi ganti dengan angka Anda sendiri. Yang menentukan bukan seberapa rapi angka itu, melainkan bahwa ia berada di hitungan yang sama dengan bahannya, sehingga harga menu Anda menutup lebih dari sekadar isi piring.
Setelah angkanya keluar, harga menu perlu berpindah dari kertas Anda ke layar kasir. Di Grafena POS, katalog & promo dikelola dari konsol, jadi nama, harga, dan status aktif setiap menu berada dalam satu tabel.
Harga yang tidak pernah diperbarui
Sebuah hitungan HPP adalah potret satu hari. Harga beli bergerak setelah itu: musim berganti, pemasok menyesuaikan, telur naik menjelang hari raya, cabai naik saat hujan panjang. Harga menu Anda tidak ikut bergerak, karena tidak ada yang mengingatkan. Menu yang dihitung setahun lalu dan tidak pernah ditinjau sejak itu adalah menu yang harganya ditetapkan oleh harga bahan yang sudah tidak ada lagi.
Jadwal menutup celah ini lebih baik daripada niat. Tetapkan tanggal tetap, misalnya sekali sebulan untuk menu yang paling sering terjual dan sekali dalam beberapa bulan untuk seluruh daftar, lalu simpan struk belanja dan catatan harga pemasok di satu tempat supaya harga terbaru tidak perlu dicari saat tanggal itu tiba. Pada tanggal itu pekerjaannya hanya satu: buka kembali kalkulator HPP, ganti harga beli dengan harga sekarang, dan lihat apakah harga jual yang sedang berlaku masih menempati target yang sama.
Menaikkan harga bukan satu-satunya jawaban jika hasilnya meleset. Anda bisa menawar ke pemasok, mengubah ukuran porsi, mengganti pelengkap, atau menerima bahwa satu menu tertentu memang tipis dan menjaganya karena alasan lain. Yang tidak bisa Anda lakukan adalah memutuskan tanpa tahu angkanya.
Apa yang dilakukan sistem kasir, dan apa yang tidak
Satu hal perlu dinyatakan terus terang di akhir. Grafena POS menghitung HPP hanya dengan add-on Bahan baku & resep, dan hanya dari data yang Anda masukkan: resep tiap menu dan Total nota setiap kali barang diterima dari pemasok. Dari situ setiap menu yang punya resep mendapat HPP dan food cost, dan laporan HPP & Margin menunjukkan laba kotor per menu. Harga bahan tidak diambil dari pemasok secara otomatis, dan menu tanpa resep tidak punya HPP. Tanpa add-on itu, seluruh angka di artikel ini Anda susun sendiri, dari struk belanja dan timbangan di dapur Anda.
Tanpa add-on itu, yang dikerjakan Grafena POS ada di sisi penjualannya. Katalog & promo dikelola dari konsol, jadi harga yang sudah Anda hitung ditulis sekali dan berlaku untuk perangkat yang memakai katalog yang sama. Laporan penjualan + ekspor CSV/PDF ada di konsol yang sama, jadi penjualan yang benar-benar terjadi bisa Anda bandingkan dengan biaya yang Anda hitung sendiri.
Tidak ada yang mengurangi pekerjaan menimbang dan mencatat di awal. Jika Anda sedang menimbang sebuah sistem kasir karena urusan HPP, pertanyaan yang berguna bukan sekadar apakah sistemnya menghitung HPP, melainkan dari data apa ia menghitungnya, dan apakah Anda sanggup menjaga data itu tetap baru: resep yang sesuai takaran dapur, dan nota yang dicatat setiap kali bahan datang.
Sisi operasional yang lain, mulai dari buka dan tutup shift sampai pesanan yang berubah di meja, dibahas di panduan operasional kasir restoran. Jika biaya berlangganan ikut Anda masukkan ke hitungan biaya bulanan, angkanya ada di halaman harga.
Mau lihat cara kerjanya di usaha Anda?
Ada halaman khusus untuk Restoran, lengkap dengan cara Grafena POS dipakai di sana. Lihat halaman Restoran, atau tanya langsung lewat WhatsApp.
Bacaan lain
-
Template Laporan Shift Kasir Restoran
4 Oktober 2026 Restoran laporan shiftkastemplate
Template laporan shift kasir satu halaman yang bisa dicetak, dan cara mengisinya kolom demi kolom: identitas shift, hitungan kas, penjualan per cara bayar, void dan retur, sampai tanda tangan manajer.
-
Panduan Operasional Kasir Restoran: Shift, Void, dan Pesanan di Meja
22 September 2026 Restoran laporan shiftvoid dan returoperasional
Cara mengelola kasir restoran supaya laporannya cocok: buka dan tutup shift, void berPIN manajer, pesanan yang berubah di meja, akses staf, dan checklist tutup malam.
-
Laporan Shift Restoran yang Selalu Cocok
22 September 2026 Restoran selisih kastutup shiftjejak pembatalan
Kenapa laporan shift restoran sering selisih, dan bagaimana void berPIN, buka-tutup shift, dan laporan kas menutup celahnya.