Net Promoter Score: Cara Hitung dan Melacaknya di Google Sheets
Blog/Tutorial Excel & Sheets/Net Promoter Score: Cara Hitung dan Melacaknya di Google Sheets

Net Promoter Score: Cara Hitung dan Melacaknya di Google Sheets

BimaBima
·18 Desember 2025·9 menit baca

Penulis

Bima

Bima

Founder & Data Professional

Bagikan

TL;DR

Net Promoter Score adalah selisih persentase promoter (skor 9-10) dengan detractor (skor 0-6) dari survei skala 0-10. Di Google Sheets kamu cukup pakai COUNTIFS buat ngitung tiap kelompok, lalu bagi selisihnya dengan total responden. Pecah skornya per cabang atau segmen, soalnya angka gabungan sering nyembunyiin cabang yang bermasalah.

Net Promoter Score (NPS) adalah selisih persentase pelanggan yang kasih nilai 9-10 dengan yang kasih nilai 0-6, dari satu pertanyaan: seberapa mungkin kamu rekomendasiin kami ke teman?

Angkanya jalan dari -100 sampai +100. Nggak pakai persen, cuma skor.

Yang bikin NPS kepakai di banyak tim: satu pertanyaan, satu angka, gampang dilacak tiap bulan. Dan kamu bisa hitung semuanya di Google Sheets tanpa tool survei berbayar.

Di bawah ini aku pakai data survei toko_berkah, toko kelontong grosir di Sidoarjo dengan 240 responden. Kamu bisa tiru struktur sheet-nya persis.

Apa itu Net Promoter Score?

NPS adalah metrik loyalitas pelanggan yang dihitung dari satu pertanyaan skala 0-10. Responden dibagi tiga kelompok: promoter (9-10), pasif (7-8), dan detractor (0-6). Skornya = persentase promoter dikurangi persentase detractor. Responden pasif dihitung di penyebut tapi nggak nambah maupun ngurangin skor.

Sistem ini dipublikasikan Fred Reichheld lewat Harvard Business Review tahun 2003, dan sampai sekarang jadi salah satu metric yang paling sering muncul di laporan customer experience.

Contoh cepat. Dari 100 responden: 50 promoter, 30 pasif, 20 detractor. NPS = 50% - 20% = +30.

Perhatiin satu hal. Pasif itu bukan netral yang nggak ngaruh. Mereka nurunin skor karena ikut jadi pembagi. Kalau semua 100 responden pasif, NPS kamu 0.

Kenapa NPS sering salah dihitung?

Tiga kesalahan yang paling sering aku temuin waktu bantu tim UMKM rapiin survei mereka.

Pertama, skala dibikin 1-5 tapi tetap dipanggil NPS. Kalau skalanya bukan 0-10, pembagian promoter dan detractor-nya jadi ngawur.

Kedua, pasif dibuang dari perhitungan. Ada yang cuma bagi promoter sama detractor doang. Hasilnya keliatan bagus banget, tapi salah.

Ketiga, skor ditulis pakai persen. NPS itu angka indeks, bukan persentase. Tulis "+22", bukan "22%".

Gimana cara siapin sheet survei NPS?

Bikin satu sheet mentah bernama respons. Satu baris = satu responden. Jangan taruh perhitungan di sheet ini.

Struktur kolom yang aku pakai buat toko_berkah:

KolomIsiContoh
Atimestamp2025-11-04 09:12
Bid_pelangganTB-0417
Cskor (0-10)9
Dalasan (teks bebas)Pengiriman cepat
EcabangSidoarjo Kota
Fbulan2025-11

Kolom F aku isi pakai formula biar konsisten, bukan diketik manual:

=TEXT(A2;"yyyy-mm")

Fungsi TEXT ngubah tanggal jadi label bulan yang seragam. Ini yang nanti dipakai buat tracking bulanan.

Satu aturan yang jangan dilanggar: kolom C harus angka, bukan teks. Kalau responsnya masuk dari Google Form, cek dulu formatnya. Angka yang kesimpen sebagai teks bikin COUNTIF nggak ngitung apa-apa.

Rumus apa yang dipakai buat hitung NPS di Google Sheets?

Semua perhitungan cukup pakai COUNTIFS dan COUNT. Bikin sheet baru namanya nps, lalu isi begini.

Langkah 1. Hitung total responden yang valid.

=COUNT(respons!C2:C)

COUNT cuma ngitung sel berisi angka. Baris kosong dan teks otomatis kelewat.

Langkah 2. Hitung tiap kelompok.

Promoter  =COUNTIFS(respons!C2:C;">=9")
Pasif     =COUNTIFS(respons!C2:C;">=7";respons!C2:C;"<=8")
Detractor =COUNTIFS(respons!C2:C;"<=6")

COUNTIFS bisa nampung lebih dari satu syarat sekaligus. Itu yang bikin baris pasif gampang, karena butuh dua batas: minimal 7 dan maksimal 8.

Kalau kamu cuma butuh satu syarat, COUNTIF udah cukup.

Langkah 3. Hitung skornya.

=ROUND((B2-B4)/B1*100;0)

Anggap B1 total responden, B2 promoter, B4 detractor. Hasilnya angka bulat antara -100 dan 100.

Langkah 4. Kunci dari pembagian nol.

=IFERROR(ROUND((B2-B4)/B1*100;0);"Belum ada data")

IFERROR nahan pesan #DIV/0! waktu sheet-nya masih kosong di awal bulan. Sepele, tapi bikin dashboard kamu nggak keliatan rusak pas dilihat atasan.

Gimana cara ngasih label kelompok per responden?

Kadang kamu butuh kolom kategori, misalnya buat filter atau pivot. Tambahin kolom G di sheet respons:

=IFS(C2>=9;"Promoter";C2>=7;"Pasif";C2>=0;"Detractor")

IFS ngecek syarat dari kiri ke kanan dan berhenti di yang pertama cocok. Urutannya harus dari nilai paling tinggi, kalau kebalik semua bakal kelabel Detractor.

Versi IF bertingkat juga jalan kalau spreadsheet kamu versi lama:

=IF(C2>=9;"Promoter";IF(C2>=7;"Pasif";"Detractor"))

Gimana cara melacak NPS tiap bulan?

Ini bagian yang bikin NPS berguna. Angka satu kali nggak ngasih tau apa-apa. Trennya yang ngasih tau.

Bikin tabel bulanan di sheet nps. Kolom A isi label bulan (2025-09, 2025-10, 2025-11), lalu:

Total     =COUNTIFS(respons!$F$2:$F;$A2)
Promoter  =COUNTIFS(respons!$F$2:$F;$A2;respons!$C$2:$C;">=9")
Detractor =COUNTIFS(respons!$F$2:$F;$A2;respons!$C$2:$C;"<=6")
NPS       =IFERROR(ROUND((C2-D2)/B2*100;0);"")

Tanda dolar ($) ngunci rentangnya biar aman waktu formula ditarik ke bawah. Ini kesalahan nomor satu waktu orang copy formula NPS: rentangnya geser, angkanya jadi ngaco tanpa error apa pun.

Habis itu blok kolom bulan dan kolom NPS, lalu Insert > Chart > Line chart. Kamu langsung punya grafik tren yang bisa ditempel ke dashboard mingguan.

Buat panduan resmi soal argumen COUNTIFS, lihat dokumentasi Google Sheets.

Contoh kasus: NPS toko_berkah November 2025

Toko_berkah kirim survei WhatsApp ke 1.150 pelanggan grosir. Yang jawab 240 orang, jadi response rate-nya 20,9%.

Hasil hitungannya:

KelompokJumlahPersentase
Promoter (9-10)9640,0%
Pasif (7-8)10041,7%
Detractor (0-6)4418,3%
NPS+22

Angka +22 sendiri nggak bikin siapa pun gerak. Yang bikin gerak: pecah per cabang.

=IFERROR(ROUND((
  COUNTIFS(respons!$E$2:$E;$A2;respons!$C$2:$C;">=9")
 -COUNTIFS(respons!$E$2:$E;$A2;respons!$C$2:$C;"<=6")
 )/COUNTIFS(respons!$E$2:$E;$A2)*100;0);"")

Hasil pecahannya kaget banget:

CabangRespondenNPS
Sidoarjo Kota102+41
Krian81+19
Porong57-9

Satu cabang minus, tapi ketutup rata-rata gabungan. Ini kenapa segmentation wajib dilakuin sebelum kamu ambil kesimpulan dari NPS.

Aku baca 57 kolom alasan dari Porong. 31 di antaranya nyebut kata "telat" atau "lama". Ternyata cabang itu satu-satunya yang belum punya kurir tetap.

NPS nggak nemuin masalahnya. Kolom alasan yang nemuin. Skornya cuma nunjukin ke mana harus baca.

Berapa NPS yang dianggap bagus?

Nggak ada angka ajaib yang berlaku buat semua industri. Yang masuk akal: bandingin skor kamu sama skor kamu sendiri bulan lalu.

Patokan kasar yang umum dipakai praktisi:

  • Di bawah 0: lebih banyak yang kecewa daripada yang senang. Ini alarm.
  • 0 sampai 30: sehat, masih banyak ruang benerin.
  • 30 sampai 70: kuat.
  • Di atas 70: jarang, biasanya brand dengan basis pelanggan fanatik.

Tapi hati-hati bandingin lintas industri. Toko grosir B2B dan aplikasi ojek online punya pola jawaban yang beda jauh.

Satu hal lagi soal jumlah responden. Kalau kamu cuma dapet 12 jawaban, satu detractor tambahan bisa nurunin skor sampai 8 poin. Aku biasanya nggak bikin keputusan apa pun sebelum responden per segmen tembus 30.

Kesalahan umum waktu hitung NPS di spreadsheet

Skor kesimpen sebagai teks. COUNTIFS dengan syarat ">=9" nggak bakal nangkep teks "9". Cek pakai =ISNUMBER(C2). Kalau FALSE, pilih kolomnya lalu Format > Number.

Rentang nggak dikunci. Formula yang ditarik ke bawah tanpa $ bikin tiap baris ngitung rentang yang beda. Errornya diem-diem, angkanya tetap keluar.

Responden dobel. Satu orang isi survei tiga kali, skornya kehitung tiga kali. Pakai =COUNTIF(B:B;B2)>1 buat nandain duplikat sebelum ngitung. Ini bagian dari kerja data quality yang sering dilewat.

Survei dikirim cuma ke pelanggan setia. Kalau daftar kontaknya cuma pelanggan yang belanja bulan ini, kamu otomatis nggak dengerin orang yang udah kabur. Skornya jadi kelihatan bagus palsu.

Skala kebalik. Beberapa form nomor 10 di kiri dan 0 di kanan. Responden salah klik, data kamu rusak. Selalu tulis label "0 = nggak mungkin, 10 = pasti rekomendasiin" di formnya.

FAQ

Apa bedanya NPS sama CSAT?

CSAT nanya kepuasan atas satu interaksi yang baru aja terjadi, biasanya skala 1-5. NPS nanya kemungkinan kamu direkomendasiin, skala 0-10, dan lebih ngukur perasaan ke brand secara keseluruhan. CSAT bagus buat ngecek satu titik layanan. NPS bagus buat dilacak bulanan sebagai angka besar.

Berapa responden minimal biar NPS-nya bisa dipercaya?

Buat UMKM, 100 responden per periode udah lumayan stabil. Kalau kamu mau pecah per cabang atau per segmen, targetin minimal 30 responden per segmen. Di bawah itu satu jawaban ekstrem bisa gerakin skor terlalu jauh, dan kamu bakal ngejar masalah yang sebenernya cuma noise.

Bisa nggak hitung NPS pakai pivot table?

Bisa. Bikin kolom kategori pakai IFS dulu, lalu pivot dengan kategori di baris dan COUNTA di nilai. Tapi skor akhirnya tetap harus dihitung manual di sel terpisah, soalnya pivot table nggak punya cara langsung buat ngurangin persentase satu baris dari baris lain.

Perlu bayar tool survei buat jalanin NPS?

Nggak. Google Form gratis buat ngumpulin jawaban, dan Google Sheets cukup buat ngitung sampai level cabang. Tool berbayar baru masuk akal kalau kamu butuh kirim survei otomatis setelah transaksi, atau jumlah respons per bulan udah di atas beberapa ribu.

NPS turun 5 poin bulan ini. Perlu panik?

Cek dulu jumlah respondennya. Kalau bulan lalu 200 dan bulan ini 60, pergerakannya kemungkinan besar cuma efek sampel kecil. Kalau jumlah respondennya mirip dan turunnya konsisten dua bulan berturut-turut, baru itu sinyal. Baca kolom alasan dari detractor sebelum bikin rencana apa pun.

Langkah berikutnya

Tiga hal yang perlu kamu bawa dari sini. NPS = persen promoter dikurangi persen detractor, pasif tetap masuk penyebut. COUNTIFS plus IFERROR udah cukup buat semua perhitungannya. Dan skor gabungan bisa nyembunyiin cabang yang bermasalah, jadi selalu pecah per segmen.

Kalau kamu udah punya sheet NPS jalan, lanjutin dengan segmentasi RFM di spreadsheet biar tau siapa pelanggan yang paling rugi kalau hilang.

Buka Google Sheets kamu sekarang, bikin sheet respons dengan enam kolom di atas, lalu tempel formula COUNTIFS-nya. Lima belas menit, dan kamu punya angka yang bisa dilacak tiap bulan.

Coba Langsung

Mau praktek langsung? Mulai latihan SQL gratis

Latihan interaktif, langsung di browser.

Buka NgulikSQL →
Bagikan:
Bima
Ditulis oleh

Bima

Founder & Data Professional

Founder Ngulik Data. Passionate about making data analysis accessible for everyone.

Artikel terkait

XLOOKUP Google Sheets: Cara Pakai dan Contohnya (2026)
Tutorial Excel & Sheets
20 Juli 2026•9 menit baca

XLOOKUP Google Sheets: Cara Pakai dan Contohnya (2026)

XLOOKUP nyari nilai dan bisa ke kiri atau kanan, plus punya nilai default kalau nggak ketemu. Ini pengganti VLOOKUP yang lebih ringkas.

BimaBima
INDEX MATCH Google Sheets: Lookup Lebih Fleksibel dari VLOOKUP (2026)
Tutorial Excel & Sheets
19 Juli 2026•9 menit baca

INDEX MATCH Google Sheets: Lookup Lebih Fleksibel dari VLOOKUP (2026)

INDEX MATCH gabung dua fungsi buat lookup yang bisa nyari ke kiri dan nggak gampang rusak. Ini alasan banyak analis pindah dari VLOOKUP.

BimaBima
SUMPRODUCT Google Sheets: Hitung Berbobot Tanpa Ribet (2026)
Tutorial Excel & Sheets
18 Juli 2026•8 menit baca

SUMPRODUCT Google Sheets: Hitung Berbobot Tanpa Ribet (2026)

SUMPRODUCT ngaliin dua kolom atau lebih baris per baris, terus jumlahin hasilnya. Cocok buat total qty kali harga sampai hitungan bersyarat.

BimaBima
Kembali ke Blog
Ngulik Data logoNgulik Data

Platform edukasi data lengkap untuk professionals Indonesia. Belajar SQL, Data Analysis, dan lebih banyak lagi dengan praktek langsung dan feedback real-time.

© 2026 Ngulik Data. Semua hak dilindungi.

TAUTAN
BantuanHargaDatasetBlogAfiliasi
LEGAL
Syarat & KetentuanKebijakan Privasi
Ngulik Data
DatasetLeaderboardBlogStore