Target ROAS di AdOps adalah angka pembanding untuk metric Meta yang live, dan versi yang berguna dari angka itu lahir dari margin Anda sendiri, bukan dari tabel benchmark. ROAS titik impas sama dengan 1 dibagi margin kotor. Sisanya tinggal menentukan field ROAS mana yang Anda maksud dan seberapa panjang jendela pengukurannya.
Bagaimana menurunkan target ROAS, bukan menebaknya?
Mulai dari titik impas. Kalau margin kotor 35 persen, setiap Rp 1.000.000 revenue menyisakan Rp 350.000 untuk menutup biaya iklan, sehingga iklan impas di ROAS 1 ÷ 0,35 = 2,86x. Pada margin 40 persen, titik impasnya 2,5x. Pada 60 persen, 1,67x.
Satu baris itu menyelesaikan sebagian besar perdebatan. Campaign di 2,2x tidak otomatis “kurang perform”; pada margin 35 persen ia sedang rugi, dan pada margin 60 persen ia untung dengan nyaman. Dua akun bisa memakai creative sama, audience sama, ROAS sama, dan yang satu layak di-scale sementara yang lain layak di-pause.
Dari titik impas Anda mendapat tiga angka, masing-masing dengan rule-nya sendiri:
- Ambang pause, di bawah titik impas, dengan jarak yang cukup supaya fluktuasi normal tidak memicunya.
- Zona diam, mengapit titik impas, tempat tidak ada rule yang bertindak.
- Ambang scale, cukup jauh di atas titik impas sehingga tambahan spend tetap menghasilkan margin.
Zona diam adalah bagian yang paling sering dilewat, padahal itulah yang mencegah satu set rule berayun antara mem-pause dan men-scale campaign yang sama minggu demi minggu.
Kenapa artikel ini tidak memuat tabel benchmark?
Karena benchmark dari struktur margin, pasar, jendela atribusi, dan bauran produk orang lain bukan target — itu angka tanpa penyebut. Karena alasan itu AdOps tidak menerbitkan tabel benchmark ROAS.
Perbandingan yang layak dilakukan adalah terhadap akun Anda sendiri: campaign ini terhadap rata-rata akun, minggu ini terhadap minggu lalu, produk ini terhadap targetnya sendiri. AdOps mendukung bentuk itu. Sebuah kondisi bisa membandingkan metric dengan nilai tetap, atau dengan metric lain yang punya periodenya sendiri — sehingga “ROAS hari ini di bawah ROAS 7 hari terakhir” cukup ditulis sebagai satu kondisi, dan itu pemicu yang jauh lebih baik daripada benchmark mana pun dari luar.
ROAS mana yang sebenarnya ditampilkan AdOps?
Dua hal perlu dijaga jangan sampai tertukar, karena inilah sumber paling umum keluhan “angkanya kok beda”.
Di dalam rule ada dua metric ROAS. Purchase ROAS membaca return omni purchase milik Meta. Website Purchases ROAS membaca return purchase dari pixel website. Penyebutnya berbeda dan keduanya tidak akan sama. Pilih satu per akun dan tulis semua ambang terhadap pilihan itu; set rule yang mencampur keduanya adalah set rule yang tidak bisa dinalar siapa pun.
Di dashboard ada dua cara hitung yang hidup berdampingan. Kartu Purchase ROAS dan Aggregated ROAS mengutamakan field ROAS beratribusi milik Meta dan mengirim unified attribution setting, itu sebabnya keduanya sejalan dengan Ads Manager. Leaderboard campaign dan account comparison menghitung ROAS dari action value pembelian, sehingga bisa berbeda dari kartu tadi. Pakai kartu untuk kebenaran di level akun, dan leaderboard untuk pemeringkatan, bukan sebaliknya.
Kartu menampilkan 3 angka desimal berakhiran x dan membawa badge: Profitable mulai 1,0, Moderate mulai 0,5, Low di bawah itu. Badge tersebut hanya soal apakah revenue melebihi spend, bukan soal apakah Anda untung — pada margin 35 persen, “Profitable” yang sesungguhnya baru mulai di 2,86x, bukan di 1,0x.
Pada jendela mana target itu diukur?
Cukup panjang supaya nyata, cukup pendek supaya bisa ditindak. Dalam praktik:
| Keputusan | Jendela | Gerbang volume |
|---|---|---|
| Pause campaign yang rugi | 7 hari terakhir | Spend pada jendela yang sama, di atas batas yang bisa Anda pertanggungjawabkan |
| Memotong kegagalan cepat | 3 hari terakhir | Batas spend lebih tinggi, karena jendelanya lebih pendek |
| Men-scale pemenang | 3 atau 7 hari terakhir | Batas spend plus jumlah purchase, supaya satu order besar tidak memicunya |
| Melaporkan ke klien | This month | Tidak perlu |
Jangan pernah men-scale dengan today. Satu order besar di pagi hari bisa menaruh campaign di 8x selama dua jam, dan rule berinterval 15 menit pasti menemukan jendela itu.
Dashboard disimpan di cache per pengguna dan per periode selama 1 jam, dan menandai apakah yang Anda baca live atau cached beserta waktu pembaruannya. Kalau sebuah keputusan bergantung pada angka saat ini, pakai tombol refresh, jangan angka cached.
Bagaimana menyimpan satu target di satu tempat?
Mengetik target ke sepuluh rule berarti Anda kini merawat sepuluh target. Alternatifnya custom metric: metric bernama yang terhubung ke Google Sheets, dengan kolom kunci dan kolom nilai, yang diselesaikan saat evaluasi.
Buat kolom target_roas di sheet yang dikunci per campaign id — atau per produk, atau per tingkat margin — lalu arahkan sebuah custom metric ke sana. Tulis kondisinya sebagai perbandingan metric ke metric: Purchase ROAS, 7 hari terakhir, lebih kecil dari custom metric tersebut. Saat margin berubah, Anda menyunting sheet, dan semua rule yang merujuknya ikut bergeser. Cara ini juga yang membuat target musiman bisa diatur tanpa menyentuh satu rule pun selama promo berjalan.
Apa yang merusak target yang sudah bagus?
Tiga hal, semuanya bisa dihindari.
Mencampur definisi ROAS antar-rule. Satu rule memakai Purchase ROAS dan rule lain memakai Website Purchases ROAS akan saling bertentangan, dan log keduanya sama-sama terlihat benar.
Tidak ada gerbang volume. Ambang ROAS tanpa batas bawah spend adalah ambang yang menembak derau. Setiap kondisi ROAS pantas ditemani kondisi Spend di task yang sama.
Men-scale tanpa langit-langit. Action increase budget punya field Maximum budget cap, dan action set budget menerima nilai literal atau custom metric. Isi cap-nya, pasangkan task dengan cooldown action frequency, maka lonjakan ROAS menaikkan budget satu kali, bukan setiap 15 menit sampai bentuk akun berubah dalam semalam. Template bawaan Tiered Budget Scaling adalah bentuk awal yang masuk akal untuk tangga tersebut.