Analisis Profitabilitas per Flock dengan Business Intelligence: Panduan Praktis
Panduan teknis membangun analisis profitabilitas per flock ternak layer dengan BI: definisi metrik, star schema, query SQL, dashboard, dan ambang keputusan operasional.
Pada peternakan layer dengan populasi 12.000–50.000 ekor dan 4–8 flock aktif, pertanyaan yang paling sering muncul di rapat bulanan bukan berapa total laba perusahaan, melainkan flock mana yang sebenarnya membuang uang. Masalahnya klasik: produksi harian dicatat di kandang, biaya pakan di spreadsheet purchasing, penjualan telur di aplikasi POS, dan gaji di slip terpisah. Semua angka itu tidak pernah bertemu dalam satu definisi profitabilitas yang sama, sehingga keputusan seperti afkir dini, thinning, atau ganti formulasi pakan diambil berdasarkan feeling. Padahal pakan menyumbang 70–75% total biaya produksi, dan selisih HDP 5% antar flock bisa berarti puluhan juta rupiah per bulan. Business intelligence menutup celah ini: satu model data, satu definisi metrik, satu dashboard yang dipakai mandor, manajer operasional, dan owner sekaligus. Artikel ini memandu langkah teknisnya secara konkret.
Langkah 1: Tetapkan Definisi Profitabilitas per Flock
Unit analisisnya adalah flock, bukan kandang. Satu flock adalah batch DOC yang masuk pada tanggal sama dan diafkir bersamaan. Kandang berganti penghuni antar periode, sehingga jika Anda menganalisis per kandang, biaya penyusutan dan hasil produksi akan tercampur antar batch. Tetapkan flock_id sebagai kunci tunggal di seluruh sistem, lalu tempelkan semua transaksi ke ID ini. Biaya yang wajib dialokasikan: pakan (tulis aktual kg, bukan estimasi), OVK (obat, vaksin, vitamin, sanitasi), tenaga kerja kandang, listrik dan air, sekam/litter/gas, penyusutan kandang dan peralatan, serta biaya penanganan telur retak dan afkir.
Metrik inti yang harus ada di data dictionary: HDP (hen day production, % butir terhadap populasi hidup), FCR (kg pakan per kg telur), feed intake gram per ekor per hari, mortalitas kumulatif, biaya pakan per kg telur, harga pokok penuh per kg telur, IOFC (income over feed cost), dan margin per flock. Setiap metrik wajib punya satu rumus resmi yang disepakati finance dan operasional — ini yang membedakan BI dari kumpulan grafik.
Contoh nyata: Flock A 12.000 ekor, HDP 82%, intake 115 g/ekor/hari, harga pakan Rp 8.600/kg, berat telur 60 g, harga jual Rp 26.500/kg. Telur harian 9.840 butir = 590,4 kg, pendapatan Rp 15.645.600. Konsumsi pakan 1.380 kg = Rp 11.868.000. IOFC = Rp 3.777.600 per hari. Flock B dengan populasi identik tetapi HDP 76% hanya menghasilkan 547,2 kg (Rp 14.500.800), IOFC Rp 2.632.800. Selisih Rp 1,14 juta per hari atau sekitar Rp 34 juta per bulan hanya dari dua flock. Angka inilah yang harus muncul di dashboard, bukan total perusahaan.
Langkah 2: Bangun Model Data Star Schema
Model paling tahan lama adalah star schema sederhana. Tiga tabel fakta: fakta_produksi_harian (flock_id, kandang_id, tanggal, populasi_awal, mati, butir_layak_jual, berat_telur_kg, pakan_kg), fakta_penjualan_telur (tanggal, flock_id, kg, harga_rp), dan fakta_biaya (tanggal, flock_id, akun_biaya, jumlah_rp). Dimensi: dim_flock (kode, tanggal_doc, strain, populasi_doc, status), dim_kandang, dim_pakan, dan dim_waktu. Grain fakta produksi adalah satu baris per flock per hari — jangan menyimpan agregat bulanan di tabel fakta, karena Anda akan butuh drill-down harian saat investigasi lonjakan mortalitas.
Untuk ETL, jika pencatatan produksi masih di spreadsheet, load harian ke PostgreSQL 16 memakai Python 3.12 + pandas 2.2 sudah cukup dan selesai dalam hitungan jam. Jika sudah memakai ERP poultry yang mencatat produksi harian per kandang, cukup buat materialized view yang di-refresh tiap 15 menit. Lapisan visualisasi: Metabase 0.50 self-hosted untuk tim operasional, Power BI untuk owner yang butuh export Excel, atau Grafana 11 bila ingin alert near real-time. Query berikut menghitung tiga metrik kunci per flock dan bisa langsung ditempel di Metabase sebagai native query.
WITH harian AS (
SELECT p.flock_id, p.tanggal,
SUM(p.butir_layak_jual)::numeric / NULLIF(MAX(p.populasi_awal),0) AS hdp,
SUM(p.pakan_kg) AS pakan_kg,
SUM(p.berat_telur_kg) AS telur_kg
FROM fakta_produksi_harian p
GROUP BY 1,2
)
SELECT f.kode_flock,
ROUND(AVG(h.hdp)*100, 2) AS hdp_persen,
ROUND(SUM(h.pakan_kg) / NULLIF(SUM(h.telur_kg),0), 3) AS fcr,
ROUND(SUM(h.pakan_kg) * 8600 / NULLIF(SUM(h.telur_kg),0), 0) AS biaya_pakan_per_kg
FROM harian h JOIN dim_flock f USING (flock_id)
GROUP BY 1 ORDER BY 3;
Perhatikan kolom terakhir: biaya pakan per kg telur adalah leading indicator paling jujur. FCR 2,08 dengan harga pakan Rp 8.600 berarti Rp 17.888 per kg telur hanya dari pakan. Tambahkan biaya non-pakan (umumnya Rp 3.500–4.500 per kg telur) untuk memperoleh harga pokok penuh, lalu bandingkan dengan harga jual harian dari POS untuk melihat margin aktual tiap flock.
Langkah 3: Susun Dashboard dan Aturan Keputusan
Dashboard dibuat tiga lapis agar tidak berakhir sebagai hiasan dinding. Lapis eksekutif: ranking margin per flock bulan berjalan dan kontribusi terhadap laba total. Lapis operasional: tren HDP harian versus standar strain (Hy-Line Brown atau Lohmann) di kandang yang sama, FCR kumulatif, dan mortalitas harian. Lapis diagnostik: kurva produksi sepanjang siklus, konsumsi pakan per ekor, serta scatter HDP versus intake untuk mendeteksi underfeeding sebelum terlihat di laporan keuangan.
Tetapkan ambang keputusan yang tertulis. Contoh: margin per flock negatif tiga hari berturut-turut memicu eskalasi ke manajer operasional; HDP 4% di bawah standar strain selama dua minggu memicu audit formulasi pakan dan ventilasi; biaya pakan per kg telur naik 8% dari rolling 30 hari memicu review kontrak supplier. Break-even harga telur dihitung sederhana: total biaya per kg telur. Jika hasilnya Rp 22.900/kg sementara pasar Rp 24.100/kg, Anda hanya punya bantalan Rp 1.200 per kg — cukup untuk memutuskan apakah flock tua layak diafkir lebih cepat.
Otomasi alert di Metabase cukup satu saved question dengan jadwal harian 06.00 yang dikirim ke email atau webhook Telegram. Isinya: daftar flock dengan margin negatif, FCR di atas target, dan mortalitas harian di atas 0,08%. Dengan cara ini rapat pagi berjalan berdasarkan data yang sama, bukan berdasarkan ingatan mandor yang berbeda-beda per kandang.
Best Practices
- Satu definisi metrik, satu tempat. Simpan semua rumus di data dictionary (dbt docs atau halaman Metabase) dan versioning-kan; HDP yang dihitung berbeda oleh finance dan kandang akan membunuh kepercayaan pada dashboard.
- Catat pakan dalam kg aktual, bukan sak. Konversi konversi sak ke kg dengan berat bersih nyata; selisih 1 kg per sak pada 1.380 kg/hari menjadi bias Rp 8.600 per hari per flock.
- Pisahkan leading dan lagging indicator. Produksi, FCR, dan intake adalah leading; margin dan laba adalah lagging. Dashboard harian harus didominasi leading indicator.
- Refresh data minimal harian sebelum jam 05.00. Data kemarin yang baru masuk jam 10.00 membuat keputusan thinning terlambat satu hari.
- Uji rekonsiliasi tiap bulan. Bandingkan total kg telur di fakta penjualan dengan total produksi dikurangi susut dan retak; selisih di atas 1,5% menandakan masalah pencatatan, bukan masalah produksi.
FAQ
Apakah harus punya ERP dulu sebelum membangun BI?
Tidak. Banyak peternakan memulai dengan Google Sheets terstruktur (satu baris per flock per hari) lalu memindahkannya ke PostgreSQL 16 via skrip Python. ERP mempercepat karena data sudah ternormalisasi, tetapi model star schema tetap bisa dibangun di atas spreadsheet selama kunci flock_id konsisten.
Berapa lama implementasi sampai dashboard pertama bisa dipakai?
Untuk 4–6 flock aktif dengan data historis 12 bulan terakhir, scoping metrik dan pembersihan data biasanya 1–2 minggu, pembangunan model dan dashboard 1 minggu. Yang paling memakan waktu bukan tools, tetapi menyepakati alokasi biaya tenaga kerja dan penyusutan per flock.
Metrik mana yang paling penting dipantau harian?
HDP, intake pakan per ekor, dan mortalitas. Ketiganya bergerak lebih dulu daripada margin. Jika HDP turun 2% sementara intake stabil, penyebabnya biasanya non-nutrisi (air, ventilasi, stres panas); jika intake juga turun, curigai pakan atau kesehatan.
Bagaimana kalau harga telur dijual gabungan dari beberapa flock?
Alokasikan pendapatan berdasarkan proporsi kg telur yang dihasilkan masing-masing flock pada hari itu, bukan berdasarkan nomor kandang. Ini menjaga margin per flock tetap komparabel meski penjualan dilakukan terpusat oleh satu gudang.
Analisis profitabilitas per flock bukan proyek enterprise yang rumit: satu skema data sederhana, definisi metrik yang disepakati, dan query agregasi sudah cukup untuk mengubah rapat bulanan menjadi keputusan berbasis angka. Jika tim Anda masih bergantung pada rekap spreadsheet dan ingin membangun dashboard flock yang terhubung langsung ke ERP poultry, POS, atau sistem produksi, kami membantu perancangan arsitektur data hingga implementasinya untuk perusahaan di Yogyakarta (DIY) dan Magelang, Jawa Tengah — termasuk konsultasi IT, pengembangan aplikasi SIMRS/SIM Klinik, ERP, POS, dan website. Mulai dari audit data 12 bulan terakhir, dan Anda akan tahu flock mana yang perlu perhatian minggu ini.
Artikel ini bagian dari edukasi Nugroho Setiawan, konsultan IT Jogja. Solusi terkait: PilarPOS ERP Agriculture SIM Klinik. Butuh konsultasi gratis?
Komentar
Belum ada komentar. Jadilah yang pertama!
Saya membantu konsultasi IT & pengembangan aplikasi untuk rumah sakit, klinik, dan bisnis di Yogyakarta (DIY), Magelang, dan sekitarnya.