ChatGPT vs Claude untuk Data: Uji Head-to-Head di 5 Tugas Analis
TL;DR
ChatGPT dan Claude sama-sama bisa nulis SQL, bersihin data, dan ngerangkum insight, tapi kekuatannya beda tipis per tugas. Dari 5 tugas analis yang aku uji pakai dataset toko_berkah, Claude lebih rapi buat query panjang dan penjelasan logika, sementara ChatGPT lebih cepat buat script cepat dan punya eksekusi kode yang lebih mulus. Yang paling penting: dua-duanya pernah ngarang angka, jadi verifikasi tetap wajib.
Aku kasih 5 tugas analis yang sama persis ke ChatGPT dan Claude, pakai dataset toko_berkah. Ini hasilnya.
Pertanyaan "mana yang lebih bagus" itu sering dijawab pakai benchmark akademis yang gak nyambung sama kerjaan harian. Jadi aku bikin ronde yang mirip kerjaan analis beneran: nulis query, bersihin data kotor, jelasin error, bikin chart, dan nyusun ringkasan buat manajer.
Datanya sama, prompt-nya sama, dan aku catat di mana masing-masing kepeleset.
Gimana cara aku ngujinya?
Dataset: toko_berkah, 8.400 baris transaksi kelontong di Bandung selama 12 minggu. Kolomnya tanggal, jam, produk, kategori, qty, harga_satuan, total_belanja, kasir.
Aku sengaja rusak sebagian datanya biar mirip data kantor beneran: 214 baris punya total_belanja kosong, 89 baris punya nama produk dengan spasi berlebih, dan 6 baris punya qty negatif.
Tiap tugas aku kasih prompt yang sama ke dua tool, satu kali percobaan, tanpa follow-up. Alasannya sederhana: kalau kamu boleh koreksi 5 kali, dua-duanya pasti bener. Yang aku mau lihat itu kualitas percobaan pertama.
Penilaiannya subjektif, dan aku bukan lab benchmark. Anggap ini catatan pengalaman satu orang, bukan hukum alam.
Ronde 1: Nulis query SQL yang gak sederhana
Prompt-nya: cari 3 produk dengan omzet tertinggi di tiap kategori, plus persentase kontribusinya ke omzet kategori itu.
Ini butuh window function, dan gak bisa diselesaikan pakai GROUP BY biasa.
Claude ngasih ini:
WITH omzet_produk AS (
SELECT
kategori,
produk,
SUM(total_belanja) AS omzet
FROM toko_berkah
GROUP BY kategori, produk
),
ranked AS (
SELECT
kategori,
produk,
omzet,
ROW_NUMBER() OVER (PARTITION BY kategori ORDER BY omzet DESC) AS peringkat,
SUM(omzet) OVER (PARTITION BY kategori) AS omzet_kategori
FROM omzet_produk
)
SELECT
kategori,
produk,
omzet,
ROUND(100.0 * omzet / omzet_kategori, 1) AS persen_kontribusi
FROM ranked
WHERE peringkat <= 3
ORDER BY kategori, peringkat;
Jalan di percobaan pertama. Rapi, dan CTE-nya kepisah dengan logika yang jelas.
ChatGPT ngasih hasil yang juga jalan, tapi dia ngitung omzet_kategori lewat subquery terkorelasi yang nge-scan tabel lagi dari awal. Hasilnya sama, tapi di tabel 8.400 baris query-nya 3x lebih lambat. Di tabel jutaan baris, itu masalah beneran.
Skor: Claude 1 – ChatGPT 0. Dua-duanya bener, tapi satu lebih efisien.
Kalau kamu belum familiar sama window function, mulai dari ROW_NUMBER dulu. Itu pintu masuk paling gampang.
Ronde 2: Bersihin data kotor
Prompt-nya: aku kasih 20 baris sampel yang berisi ketiga masalah tadi, terus minta script pandas buat bersihinnya.
Dua-duanya nangkep spasi berlebih dan qty negatif. Dua-duanya pakai .str.strip() dan filter qty > 0.
Bedanya di total_belanja yang kosong. ChatGPT langsung ngisi pakai harga_satuan * qty — dan itu keputusan yang bener buat dataset ini.
Claude nanya balik dulu: apakah nilai kosong ini artinya transaksi batal, atau cuma gagal dicatat? Dia kasih dua opsi kode dengan konsekuensi masing-masing.
Jujur, aku bingung nilai ronde ini. Kalau lagi buru-buru, jawaban ChatGPT lebih berguna. Kalau lagi ngerjain data yang bakal masuk laporan direksi, pertanyaan Claude nyelametin kamu dari asumsi diam-diam.
Skor: seri. Tergantung kamu lagi butuh cepat atau butuh hati-hati.
Ronde 3: Jelasin error yang bikin pusing
Aku kasih error klasik: column "produk" must appear in the GROUP BY clause or be used in an aggregate function.
Dua-duanya jelasin penyebabnya dengan bener dan kasih dua solusi (masukin ke GROUP BY, atau bungkus pakai agregat).
ChatGPT lebih ringkas. Claude nambahin satu hal yang berguna: kenapa MySQL kadang gak ngeluh error yang sama, gara-gara mode ONLY_FULL_GROUP_BY yang bisa dimatiin.
Itu detail yang nyelametin kamu waktu pindah dari MySQL ke PostgreSQL dan tiba-tiba query lama kamu error semua.
Skor: Claude 1 – ChatGPT 0.5. Konteks tambahan itu ada nilainya.
Ronde 4: Bikin chart
Prompt-nya: bikin chart yang nunjukin pola jam ramai per hari.
Di sini ChatGPT unggul, dan alasannya bukan soal kualitas kode. Dia langsung jalanin Python-nya di sandbox, dan balikin gambar PNG-nya. Aku bisa lihat hasilnya tanpa nyalain Jupyter.
Claude nulis kode matplotlib yang bener, tapi aku harus copy-paste dan jalanin sendiri. Kalau kamu kerja di editor, itu 30 detik tambahan. Kalau kamu lagi eksplorasi cepat sambil rapat, itu ngeselin.
Detail kecil yang aku suka dari Claude: dia milih heatmap, bukan line chart. Buat data hari x jam, itu pilihan yang lebih tepat — alasannya aku bahas di artikel heatmap.
Skor: ChatGPT 1 – Claude 0.5. Eksekusi menang di ronde ini.
Ronde 5: Nyusun ringkasan buat manajer
Prompt-nya: dari hasil analisis tadi, tulis 5 kalimat buat manajer toko yang gak ngerti data.
ChatGPT nulis 5 kalimat yang bener tapi kaku. Banyak istilah kayak "korelasi positif" dan "segmentasi temporal" yang bakal bikin manajer toko kelontong bengong.
Claude nulis lebih membumi: "Sabtu sore jam 4–6 itu jam paling ramai, dan belanja per orangnya juga paling gede. Kalau mau naruh promo bundling, taruh di jam itu."
Itu kalimat yang bisa langsung dipakai.
Skor: Claude 1 – ChatGPT 0.5.
Papan skor akhir
| Ronde | ChatGPT | Claude |
|---|---|---|
| 1. Query SQL kompleks | 0 | 1 |
| 2. Bersihin data kotor | 0.5 | 0.5 |
| 3. Jelasin error | 0.5 | 1 |
| 4. Bikin chart | 1 | 0.5 |
| 5. Ringkasan buat manajer | 0.5 | 1 |
| Total | 2.5 | 4 |
Skornya condong ke Claude, tapi jangan buru-buru nyimpulin. Empat dari lima ronde itu selisihnya cuma setengah poin, dan penilaiannya subjektif. Kalau kerjaanmu 80% bikin chart cepat, urutan skor ini bisa kebalik.
Yang bikin dua-duanya gagal
Ini bagian yang lebih penting dari papan skor.
Aku sempet nempel 40 baris data sebagai teks biasa, terus nanya: berapa rata-rata belanja per transaksi?
ChatGPT jawab Rp 47.320. Claude jawab Rp 46.800. Angka aslinya Rp 51.145.
Dua-duanya ngarang. Bukan bohong niat, tapi model bahasa memang gak ngitung — dia nebak angka yang "kelihatan masuk akal" dari pola teks.
Aturan yang aku pegang sejak itu: AI boleh nulis kodenya, tapi angka harus lahir dari eksekusi. Minta dia bikin query atau script, terus kamu yang jalanin. Jangan pernah minta dia yang ngitung langsung dari teks yang kamu tempel.
Kalau tool-nya punya fitur jalanin kode (kayak Advanced Data Analysis-nya ChatGPT), itu beda cerita — angkanya lahir dari Python beneran. Cek dulu apakah AI-nya beneran ngeksekusi atau cuma nulis.
Anthropic sendiri nulis soal keterbatasan ini di dokumentasi prompt engineering mereka: model bahasa lemah di aritmetika presisi, dan sebaiknya dikasih tool eksternal buat ngitung.
Jadi pakai yang mana?
Jawaban jujurnya: dua-duanya, tergantung tugas.
- Query SQL panjang, penjelasan logika, nulis buat orang non-teknis — Claude terasa lebih rapi.
- Eksplorasi cepat, butuh chart jadi, iterasi sambil jalan — ChatGPT lebih mulus soalnya kodenya langsung jalan.
- Ngitung angka — jangan percaya keduanya tanpa eksekusi.
Yang lebih menentukan hasil bukan mereknya, tapi gimana kamu nyusun prompt-nya. Kasih skema tabel, kasih 5 baris sampel, sebutin database-nya apa. Prompt yang jelas bikin dua tool ini sama-sama berguna.
FAQ
Mana yang lebih bagus buat nulis SQL, ChatGPT atau Claude?
Dari 5 query yang aku uji, dua-duanya bener di query sederhana. Bedanya kelihatan di query panjang dengan window function dan CTE bertingkat. Claude lebih konsisten menjaga alias dan urutan CTE tetap masuk akal, sementara ChatGPT sesekali bikin subquery yang bener secara sintaks tapi ngitung ulang hal yang udah dihitung. Buat query harian, bedanya gak kerasa.
Apa AI bisa dipercaya buat ngasih angka dari dataku?
Gak, kalau kamu cuma paste tabel ke chat. Dua-duanya pernah ngarang angka waktu aku minta rata-rata dari data yang ditempel sebagai teks. Yang aman: minta AI nulis kode-nya, terus kamu yang jalanin kodenya di Python atau SQL. Angka harus lahir dari eksekusi, bukan dari tebakan model bahasa.
Perlu langganan berbayar buat kerja data?
Versi gratis dua-duanya udah cukup buat nulis query dan rumus. Yang kamu beli di versi berbayar itu context window yang lebih besar, kemampuan jalanin kode, dan upload file yang lebih longgar. Kalau kerjaanmu sering upload CSV besar atau minta analisis lintas file, versi berbayar baru kerasa. Kalau cuma nanya sintaks, gratisan aman.
Aman gak upload data perusahaan ke ChatGPT atau Claude?
Tergantung kebijakan kantormu, bukan tergantung tool-nya. Cek dulu apakah kantor punya aturan soal data yang boleh keluar. Kalau datanya berisi nama, nomor HP, atau angka finansial yang belum publik, jangan diupload. Kalau kamu cuma butuh bantuan sintaks, kirim skema tabelnya aja tanpa isi datanya. Itu cukup buat AI bikin query yang bener.
Kalau harus pilih satu, pilih yang mana?
Kalau kerjaanmu banyak nulis SQL panjang dan nyusun penjelasan buat stakeholder, Claude lebih enak dipakai. Kalau kamu sering butuh AI yang langsung jalanin Python dan balikin chart jadi, ChatGPT lebih mulus. Aku sendiri pakai dua-duanya dan gak merasa perlu milih. Bedanya tipis, dan alur kerjamu lebih menentukan hasilnya daripada mereknya.
Penutup
Dua poin yang mau aku tinggalin:
- Selisih ChatGPT dan Claude di kerjaan analis harian itu tipis. Yang jauh lebih ngaruh: kualitas prompt dan kualitas datamu.
- Angka dari AI tanpa eksekusi kode itu tebakan. Selalu jalanin sendiri kodenya.
Kalau kamu masih ngerasa outputnya sering ngaco, kemungkinan besar masalahnya di cara nanya. Baca dulu cara nulis prompt buat analis data, terus cek glossary hallucination biar paham kenapa AI bisa ngarang angka dengan percaya diri.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Artikel Terkait
Python vs Tools AI buat Analis: Masih Perlu Belajar Coding?
Tools AI bisa bikin chart dan ringkas data dalam hitungan detik. Jadi Python masih perlu dipelajari analis di 2026? Jawabannya iya — tapi alasannya udah beda dari 3 tahun lalu.
Forecasting Penjualan dengan AI: Realistis atau Overhyped?
Aku tes forecasting AI di data penjualan 4 cabang toko grosir. Hasilnya lebih akurat dari tebakan manual, tapi meleset parah di satu titik yang mahal.
Analisa Sentimen dengan AI: Olah Review Pelanggan Jadi Insight
Cara ngolah ribuan review pelanggan jadi insight pakai AI — dari nyusun prompt yang konsisten, ngasih label, sampai ngubah hasilnya jadi rekomendasi yang bisa dieksekusi.