Kalender Harga Otomatis di Google Sheets: 1 Tabel, 3 Rumus, 120 Angka yang Tak Perlu Diketik Lagi
Bu Ayu punya hotel 20 kamar di Sanur. Harga normalnya Rp 450.000. Setiap minggu dia membuka extranet Traveloka, Agoda, Booking.com, dan halaman booking website sendiri, lalu mengetik ulang harga untuk 30 tanggal ke depan. Empat channel dikali 30 tanggal sama dengan 120 angka. Hampir dua jam, dan selalu ada yang terlewat.
Bulan lalu yang terlewat adalah Sabtu 7 November — malam festival layang-layang yang sudah dua minggu ramai dibicarakan. Harga seharusnya naik. Yang terpasang tetap Rp 450.000 di tiga channel. Empat kamar terjual per malam dengan selisih Rp 369.000 dari harga yang pantas. Totalnya Rp 2.952.000 hilang, bukan karena pasarnya sepi, tapi karena satu sel spreadsheet tidak ikut berubah.
Masalahnya bukan Bu Ayu tidak paham pricing, tapi cara kerjanya manual. Pekerjaan yang diulang 120 kali setiap minggu pasti bocor di satu titik.
Kenapa harga manual selalu kalah
- Tanggal ketinggalan. Anda update Jumat, tapi lupa satu tanggal di satu channel.
- Channel tidak sinkron. Website masih Rp 450.000 sementara OTA sudah Rp 585.000. Tamu yang teliti akan protes, atau pindah ke OTA.
Solusinya bukan software mahal: satu tabel di Google Sheets yang menghitung sendiri, hasilnya Anda salin ke channel sekali seminggu.
1 tabel: kerangkanya 7 kolom
Buat sheet bernama Kalender Harga, isi baris pertama:
| A Tanggal | B Hari | C Faktor Hari | D Event | E Faktor Event | F Harga Final | G Catatan |
|---|
Di sel J1 — di luar tabel — isi harga dasar: 450000. Ini satu-satunya angka yang diubah kalau harga dasar naik. Kolom A diisi tanggal 90 hari ke depan: ketik dua tanggal pertama, blok, tarik ke bawah. Kolom D diisi manual hanya untuk tanggal yang ada event di kota Anda — festival, long weekend, wisuda, libur sekolah.
Rumus 1: WEEKDAY untuk faktor hari
Di B2: =WEEKDAY(A2) → hasilnya 1 sampai 7, 1 untuk Minggu dan 7 untuk Sabtu. Angka lebih aman daripada nama hari, yang bisa berubah jadi "Sab" atau "Sat" tergantung bahasa spreadsheet.
Di C2: =IFS(B2=7,1.3,B2=6,1.15,B2=1,1.1,TRUE,1) → Sabtu dikali 1,3; Jumat 1,15; Minggu 1,1; sisanya 1. Tarik kedua rumus ke bawah. Angka itu titik awal yang wajar, bukan keramat: kalau Sabtu Anda selalu penuh di harga normal, naikkan perlahan; kalau justru sepi, turunkan. Pola hari dibahas di harga kamar yang beda tiap hari.
Rumus 2: VLOOKUP untuk faktor event
Buat sheet kedua bernama Event, dua kolom:
| Event | Faktor |
|---|---|
| Festival layang-layang | 1.4 |
| Long weekend | 1.25 |
| Turnamen voli pantai | 1.15 |
Di E2: =IFERROR(VLOOKUP(D2,Event!A:B,2,FALSE),1)
Kalau kolom D kosong atau namanya tidak terdaftar, hasilnya 1 — tidak ada tambahan. Tambahkan nama event baru di sheet Event, dan seluruh kalender ikut menyesuaikan.
Rumus 3: MAX dan ROUND untuk harga akhir
Di F2: =MAX(375000,ROUND($J\$1*C2*E2/1000,0)*1000)
Tiga pekerjaan dalam satu baris. $J\$1*C2*E2 mengalikan harga dasar dengan faktor hari dan event. ROUND(.../1000,0)*1000 membulatkan ke ribuan supaya di layar tamu tidak muncul Rp 517.500. MAX(375000,...) adalah lantai harga: seburuk apa pun hasil hitungan, harga tidak turun di bawah Rp 375.000. Tanpa lantai itu, satu salah ketik faktor bisa membuat kamar terjual Rp 45.000. Angkanya dibahas di rate floor hotel.
Hasilnya untuk minggu pertama November 2026:
| Tanggal | Hari | Faktor Hari | Event | Faktor Event | Harga Final |
|---|---|---|---|---|---|
| 7 Nov | Sab | 1,3 | Festival layang-layang | 1,4 | Rp 819.000 |
| 8 Nov | Min | 1,1 | Festival layang-layang | 1,4 | Rp 693.000 |
| 9 Nov | Sen | 1,0 | — | 1,0 | Rp 450.000 |
| 13 Nov | Jum | 1,15 | — | 1,0 | Rp 518.000 |
| 17 Nov | Sel | 1,0 | Turnamen voli pantai | 1,15 | Rp 518.000 |
Perhatikan 13 dan 17 November: angkanya sama, alasannya beda — satu karena Jumat, satu karena event. Itu yang tidak akan terlihat kalau harga diketik manual tanpa alasan tertulis.
Aturan pakai: satu sumber, satu jadwal
- Senin pagi, 15 menit. Salin kolom F ke empat channel. Jangan menghitung harga langsung di extranet; urutan pengecekannya ada di audit tarif OTA.
- Batas kenaikan 25% per minggu. Kalau hasil rumus melonjak lebih dari itu, cek dulu faktornya sebelum dipakai.
- Perbarui kolom event tiap awal bulan, sekitar 10 menit. Ini satu-satunya kerja manual yang tersisa.
- Simpan versi. File → Version history, beri nama "Kalender November", supaya saat tamu protes harga Anda punya bukti kapan angkanya berubah.
Sebelum dan sesudah
Sebelum: dua jam mengetik, tiga tanggal bocor, satu channel beda harga, tanpa catatan kenapa Sabtu tertentu lebih mahal. Sesudah: 15 menit menyalin, semua channel identik, setiap kenaikan punya alasan tertulis di kolom D, dan saat harga dasar naik cukup ubah satu sel.
Bu Ayu sekarang membuka kalender itu dari HP sambil menunggu tamu check-in. Yang berubah bukan pengetahuannya soal revenue management — hanya cara dia menyimpan keputusan harganya.
Kalau ingin melihat angkanya bergerak setelah dipakai sebulan, lanjutkan ke dynamic pricing untuk pemula.