Panduan ini memandu Anda membangun template 3-statement financial model yang sepenuhnya terhubung di Google Sheets - laporan laba rugi, neraca, dan laporan arus kas - yang diwiring sedemikian rupa sehingga perubahan di satu tab langsung berdampak ke dua tab lainnya secara otomatis. Di akhir panduan ini, Anda akan memiliki template yang dapat digunakan ulang dengan balance check real-time, jadwal modal kerja, dan toggle skenario yang semuanya dikendalikan dari satu tab Assumptions.
Prasyarat
- Google Sheets dengan akses edit (bukan view-only - Anda akan membuat named ranges)
- Familiar dengan structured references dan formula lintas tab (
=P&L!C12) - Data angka aktual untuk mengisi model, meski tidak lengkap (data aktual tahun lalu sudah cukup)
- Minimal satu tahun data historis sebagai jangkar asumsi pertumbuhan dan margin
Langkah 1: Buat Struktur Tab dan Skema Warna
Sebelum mengetik satu pun formula, bangun dulu arsitektur tab-nya. Salah struktur di awal berarti refactoring belasan cross-tab reference di kemudian hari.
Buat delapan tab berurutan:
- Cover - version control, nama penulis, tanggal, ringkasan output
- Assumptions - semua input ada di sini, tidak ada di tempat lain
- P&L - laporan laba rugi
- BS - neraca
- CF - laporan arus kas
- Debt Schedule - penarikan, pelunasan, perhitungan bunga
- PP&E Schedule - capex, rollforward depresiasi
- Checks - balance check, verifikasi BS plug, audit formula
Tips: Kunci tab P&L, BS, dan CF agar tidak ada yang salah mengetik angka hardcode. Masuk ke Data → Protected ranges dan batasi akses edit hanya untuk Anda. Siapa pun yang mereview model ini tidak seharusnya mengetik langsung ke sel output.
Langkah 2: Bangun Tab Assumptions
Setiap driver - pertumbuhan pendapatan, target margin, tarif pajak, capex sebagai persentase pendapatan, DSO, DPO - diletakkan dalam satu kolom per tahun. Tidak ada angka yang di-hardcode langsung ke tab laporan keuangan.
Susun sebagai tabel driver vertikal dengan header di baris 1 dan tahun di kolom C hingga H (historis di C-D, proyeksi di E-H):
| Driver | Label | FY2023A | FY2024A | FY2025E | FY2026E |
|---|---|---|---|---|---|
| B3 | Pertumbuhan Pendapatan | - | 18,2% | 22,0% | 19,5% |
| B4 | Gross Margin | 61,3% | 63,1% | 64,0% | 64,5% |
| B5 | EBITDA Margin | 18,4% | 21,2% | 23,0% | 24,5% |
| B6 | Tarif Pajak | 22,0% | 22,0% | 22,0% | 22,0% |
| B10 | DSO (hari) | 42 | 38 | 36 | 35 |
| B11 | DPO (hari) | 51 | 54 | 55 | 55 |
| B12 | Capex % Pendapatan | 6,8% | 5,9% | 6,5% | 6,0% |
Beri nama baris header tahun sebagai named range (ForecastYears) dan referensikan dari semua tab laporan - jika suatu saat model perlu digeser satu tahun ke depan, Anda cukup mengubahnya di satu tempat.
Tips: Tambahkan toggle
Skenariodi B1 (dropdown: Base / Bear / Bull) dan buat blok assumptions kedua untuk masing-masing skenario. Kemudian bungkus setiap referensi Assumptions dengan=IF(Assumptions!$B$1="Bull", Assumptions!BullBlock, Assumptions!BaseBlock). Pergantian skenario menjadi semudah mengubah satu sel.
Langkah 3: Bangun Laporan Laba Rugi dalam 3-Statement Financial Model Template Anda
Tab P&L menerima semua asumsi dari tab Assumptions - tidak ada angka hardcode kecuali data aktual.
Pendapatan adalah fondasinya. Baris 5 adalah baris pendapatan:
=IF(C5="", "", IF(P&L!C5>0, P&L!C5, P&L!B5 * (1 + Assumptions!$C$3)))
Untuk tahun proyeksi, tarik growth rate dari Assumptions dan hitung secara kumulatif dari kolom sebelumnya. Untuk data aktual, referensikan langsung dari sumber data Anda.
Laba kotor mengacu pada asumsi margin:
=P&L!C5 * Assumptions!$E$4
EBITDA:
=P&L!C5 * Assumptions!$E$5
D&A mengalir dari PP&E Schedule:
='PP&E Schedule'!C18
EBIT = EBITDA - D&A. Beban bunga mengalir dari Debt Schedule:
='Debt Schedule'!C22
EBT = EBIT - Bunga. Pajak:
=P&L!C14 * Assumptions!$E$6
Laba bersih menutup P&L. Angka ini menjadi input rollforward laba ditahan di neraca - wiring-kan sekarang:
=P&L!C16
Tips: Tambahkan baris margin check di bagian bawah P&L yang menampilkan EBITDA margin aktual versus asumsi. Jika keduanya tidak cocok, ada formula yang rusak di suatu tempat.
=P&L!C12/P&L!C5harus sama persis denganAssumptions!$E$5.
Langkah 4: Bangun Supporting Schedules Sebelum Neraca
Bangun PP&E dan Debt Schedule sebelum menyentuh neraca - keduanya menjadi input neraca dan laporan arus kas.
PP&E Schedule:
Opening PP&E (gross):
='BS'!B22
Penambahan capex:
=P&L!C5 * Assumptions!$E$12
Closing gross PP&E = opening + capex. Depresiasi menggunakan metode garis lurus berdasarkan asumsi masa manfaat rata-rata (misalnya 7 tahun untuk contoh ini):
='PP&E Schedule'!C15 / 7
Rollforward akumulasi depresiasi:
='PP&E Schedule'!B18 + 'PP&E Schedule'!C17
Net PP&E = Gross - Akumulasi:
='PP&E Schedule'!C15 - 'PP&E Schedule'!C18
Debt Schedule:
Saldo awal, penarikan baru, pelunasan, saldo akhir. Bunga = rata-rata saldo awal dan akhir × tarif bunga. Simpan tarif bunga di Assumptions (baris B15) agar bisa disensitasi. Saldo akhir mengisi utang jangka panjang di BS; beban bunga mengisi P&L.
Tips: Jika model memiliki fasilitas kredit revolving, tambahkan jadwal revolver terpisah yang menarik dana ketika saldo kas negatif dan membayar kembali ketika positif. Saldo revolver menjadi BS plug - ini lebih rapi daripada baris plug manual.
Langkah 5: Bangun Neraca
Neraca memiliki tiga bagian: aset, liabilitas, ekuitas. Setiap baris mengalir dari schedule atau dari perhitungan modal kerja berdasarkan Assumptions.
Piutang usaha (Accounts Receivable):
=P&L!C5 / 365 * Assumptions!$E$10
DSO × pendapatan harian. Ini adalah pendapatan Rp 65 miliar / 365 × 36 hari = Rp 6,4 miliar piutang untuk FY2025E.
Utang usaha (Accounts Payable):
=P&L!C7 / 365 * Assumptions!$E$11
DPO × HPP harian.
Net PP&E:
='PP&E Schedule'!C19
Utang jangka panjang:
='Debt Schedule'!C25
Rollforward laba ditahan:
='BS'!B35 + P&L!C16 - BS!C40
Laba ditahan awal + laba bersih - dividen (jika ada). Ini adalah equity plug yang membuat neraca seimbang.
Balance check (wiring ke tab Checks):
=BS!C20 - (BS!C32 + BS!C38)
Total aset dikurangi total liabilitas dan ekuitas. Hasilnya harus nol. Jika tidak, temukan tautan yang rusak sebelum melanjutkan ke langkah apa pun.
Tips: Tandai sel balance check dengan warna merah menggunakan conditional formatting jika nilainya bukan 0. Gunakan
=ABS(Checks!C5)>0.01sebagai kondisi - ambang 0,01 ini menangkap masalah pembulatan floating-point tanpa memunculkan false alarm.
Langkah 6: Bangun Laporan Arus Kas
Laporan CF merekonsiliasi laba bersih ke saldo kas akhir. Gunakan metode tidak langsung (indirect method) - PSAK 2 (Pernyataan Standar Akuntansi Keuangan 2 tentang Laporan Arus Kas, diterbitkan DSAK IAI) mengizinkan kedua metode, namun metode tidak langsung lebih umum digunakan dalam praktik karena lebih mudah disiapkan dari data neraca dan lebih lazim diminta dalam board pack serta presentasi ke kreditur sindikasi. Corporate Finance Institute (CFI) dalam panduan Three Statement Model-nya juga mencatat bahwa lebih dari 90% model keuangan investasi menggunakan indirect method karena kesesuaiannya dengan output laporan keuangan standar.
Aktivitas operasi:
Mulai dari laba bersih di P&L, lalu tambahkan kembali D&A (non-kas):
=P&L!C16
='PP&E Schedule'!C17
Perubahan modal kerja adalah delta pada piutang, persediaan, utang usaha, dan akrual:
=-('BS'!C12 - 'BS'!B12) // Kenaikan piutang = penggunaan kas
=-('BS'!C13 - 'BS'!B13) // Kenaikan persediaan = penggunaan kas
=('BS'!C29 - 'BS'!B29) // Kenaikan utang usaha = sumber kas
Aktivitas investasi:
Capex adalah arus kas keluar dari PP&E Schedule:
=-'PP&E Schedule'!C16
Aktivitas pendanaan:
Perubahan bersih utang dari Debt Schedule:
='Debt Schedule'!C25 - 'Debt Schedule'!B25
Saldo kas akhir:
='BS'!B10 + CF!C18 + CF!C24 + CF!C30
Kas awal + CFO + CFI + CFF. Angka ini harus sama dengan BS!C10. Jika tidak, ada tautan yang putus. Wiring-kan pengecekan ini ke tab Checks juga.
Tips: Kesalahan paling umum dalam laporan CF adalah double-counting modal kerja. Jika piutang muncul di rollforward BS maupun di bagian modal kerja CF, verifikasi bahwa delta yang ditarik berasal dari baris neraca yang sama. Gunakan
=Checks!C8 - Checks!C9untuk menampilkan selisihnya secara eksplisit.
Langkah 7: Tambahkan Analisis Skenario dan Sensitivitas
Model tanpa skenario hanyalah estimasi titik tunggal. Tab Assumptions sudah memiliki toggle skenario dari Langkah 2 - sekarang tampilkan outputnya.
Tabel ringkasan skenario (di tab Cover):
| Metrik | Bear | Base | Bull |
|---|---|---|---|
| Pendapatan FY2026E | Rp 480 miliar | Rp 585 miliar | Rp 683 miliar |
| EBITDA Margin | 21,5% | 24,5% | 27,0% |
| EBITDA | Rp 103 miliar | Rp 143 miliar | Rp 184 miliar |
| EV pada 14,2x EBITDA | Rp 1,47 triliun | Rp 2,03 triliun | Rp 2,61 triliun |
Tarik data ini dari P&L dan BS secara dinamis menggunakan CHOOSE() yang terhubung ke toggle skenario:
=CHOOSE(MATCH(Assumptions!$B$1,{"Bear","Base","Bull"},0), P&L!H12_Bear, P&L!H12_Base, P&L!H12_Bull)
Untuk tabel sensitivitas penuh - misalnya nilai ekuitas pada berbagai kombinasi EBITDA multiple dan asumsi margin - gunakan SUMPRODUCT atau fitur data table dua variabel melalui Data → What-if Analysis. Bangun sensitivitas ini di tab Cover agar menjadi hal pertama yang dilihat reviewer, termasuk investor atau komite kredit bank.
Tips: Per April 2026, ModelMonkey dapat merefresh blok skenario secara otomatis jika asumsi Anda tersimpan dalam named range yang terhubung ke sumber data. Ini sangat berguna jika tab Assumptions menarik data aktual langsung dari sistem ERP atau database pelaporan. Coba ModelMonkey gratis 14 hari - tersedia untuk Google Sheets maupun Excel.
Pertanyaan yang Sering Diajukan
Apakah 3-statement financial model template ini cocok untuk UMKM atau hanya perusahaan besar?
Template ini berskala - sebuah perusahaan distribusi di Surabaya dengan pendapatan Rp 15 miliar per tahun dapat menggunakannya persis seperti perusahaan manufaktur dengan pendapatan Rp 500 miliar. Yang berbeda hanya isian asumsi dan jumlah lini pendapatan, bukan struktur wiring-nya. Untuk UMKM, Anda bahkan bisa menyederhanakan Debt Schedule menjadi satu baris fasilitas KMK (Kredit Modal Kerja).
Berapa banyak tahun proyeksi yang sebaiknya dimasukkan?
Standar umum untuk presentasi ke investor atau bank adalah tiga hingga lima tahun proyeksi. Lebih dari lima tahun, akurasi asumsi menurun tajam dan reviewer biasanya tidak membacanya secara serius. Untuk keperluan internal - misalnya perencanaan kapasitas operasional - dua tahun sering kali sudah memadai.
Apa perbedaan 3-statement financial model dengan model DCF?
3-statement financial model adalah fondasi; DCF adalah ekstensinya. Setelah ketiga laporan terhubung dan menghasilkan Free Cash Flow to Firm (FCFF) yang bersih, Anda tinggal menambahkan tab DCF yang mendiskon FCFF tersebut dengan WACC. Tanpa 3-statement model yang benar, angka DCF tidak dapat dipercaya karena FCFF-nya tidak tervalidasi.
Bagaimana cara menangani mata uang ganda jika perusahaan memiliki pendapatan dalam USD dan biaya dalam Rupiah?
Tambahkan baris kurs di tab Assumptions (misalnya B20: Kurs USD/IDR) dan konversi semua baris pendapatan berbasis USD ke Rupiah sebelum masuk ke P&L. Simpan seluruh model dalam satu mata uang fungsional - Rupiah untuk perusahaan Indonesia - agar balance check tetap berfungsi tanpa komplikasi translasi.
Apakah template ini bisa digunakan untuk pelaporan ke OJK atau bank kreditur?
Template ini mengikuti struktur laporan keuangan berdasarkan PSAK (Pernyataan Standar Akuntansi Keuangan), sehingga output-nya kompatibel dengan format yang diminta OJK dan lembaga keuangan. Namun, untuk pelaporan resmi tetap diperlukan review oleh akuntan publik terdaftar - template ini adalah alat analisis, bukan pengganti laporan audit.
Kesimpulan: Template 3-Statement Financial Model Siap Digunakan
Kini Anda memiliki template di mana setiap output dapat ditelusuri kembali ke satu tab Assumptions, ketiga laporan terhubung melalui D&A, beban bunga, modal kerja, dan laba ditahan, serta tab Checks langsung menandai setiap kerusakan. Balance check bernilai nol atau tidak - tidak ada ruang abu-abu.
Dari sini, ekstensi yang paling natural adalah tab analisis imbal hasil (IRR, MOIC, equity waterfall) dan DCF yang menarik FCFF dari laporan arus kas. Keduanya relatif mudah dibangun begitu ketiga laporan sudah bersih dan terhubung. Struktur model yang terhubung ini berarti mengubah satu asumsi saja - misalnya menaikkan DSO dari 36 menjadi 42 hari - langsung mengalir ke piutang, kas, dan balance check dalam satu kali recalculate.
Untuk pemahaman lebih dalam tentang struktur model ini, baca pengantar 3-statement financial model dan three statement financial models di Google Sheets.