Beberapa bulan lalu, seorang developer di Stack Overflow mengajukan pertanyaan yang sudah nongkrong sejak 2012: "Google Places API Place Details limited to 5 reviews?" Empat belas tahun lewat, ratusan upvote terkumpul, tapi jawabannya tetap sama — ya, maksimal lima ulasan. Batas satu ini saja sudah cukup buat menunjukkan kenapa debat ini terus hidup sampai sekarang.
Kalau Anda pernah butuh data Google Places dalam skala besar — entah untuk daftar prospek, ulasan kompetitor, pola traffic pejalan kaki, atau audit local SEO — kemungkinan besar Anda juga pernah berhenti di persimpangan yang sama. Google Places API resmi itu rapi, terstruktur, dan dokumentasinya jelas. Tapi datanya tidak selengkap yang kelihatan di halaman Google Maps, dan biayanya bisa melonjak cepat begitu lewat paket gratis. Scraping bisa menangkap lebih banyak data dengan model biaya yang berbeda, tapi juga punya masalah sendiri: CAPTCHA, selector yang gampang rusak, dan area abu-abu soal legalitas. Saya sudah cukup jauh menelusuri kedua sisi — mulai dari dokumentasi API, SKU harga, tool scraping, sampai kompromi di dunia nyata — dan artikel ini adalah rangkumannya. Kita akan bahas kekosongan data per field, biaya riil di 10K/100K/1M record, realitas anti-bot, dan strategi hybrid yang praktis. Plus flowchart keputusan, karena tidak ada yang mau membaca 3.000 kata lalu masih bingung harus pilih yang mana.
Apa Itu Google Places API (dan Sebenarnya Apa yang Didapat)?
Google Places API adalah cara resmi Google yang terstruktur untuk menarik data bisnis — nama, alamat, nomor telepon, rating, ulasan, foto — dari database mereka. Anda mengirim request HTTP, lalu menerima JSON yang sudah diformat. Inilah jalur yang disahkan.
Versi saat ini (Places API "New") mengatur semuanya lewat field mask. Saat Anda memanggil Place Details, Anda harus menentukan field mana yang ingin diambil — displayName, formattedAddress, rating, reviews, photos, dan lain-lain — lalu Google menagih berdasarkan tier tertinggi dari field yang Anda minta. Kalau field mask tidak dicantumkan, hasilnya error, bukan respons default. Ini memang sengaja: Google ingin Anda membayar sesuai yang dipakai, dan membayar lebih untuk data yang paling bernilai.
Field yang tersedia dibagi ke dalam tier harga:
| Tier | Contoh Field | Hasil yang Didapat |
|---|---|---|
| Essentials | Place ID, alamat terformat, lokasi, metadata foto | Identitas dan lokasi dasar |
| Pro | Nama tampilan, status bisnis, Google Maps URI, jenis utama | Informasi bisnis yang lebih lengkap |
| Enterprise | Rating, jumlah rating pengguna, website, nomor telepon, jam buka, level harga | Field yang paling sering dibutuhkan pengguna bisnis |
| Enterprise + Atmosphere | Ulasan, ringkasan ulasan, ringkasan generatif, fasilitas, parkir, takeout/delivery | Data paling lengkap (dan paling mahal) |
Endpoint utama yang paling sering dipakai adalah: Autocomplete (untuk pencarian saat mengetik), Text Search dan Nearby Search (untuk mencari tempat), Place Details (untuk memperkaya data tempat yang sudah diketahui), dan Place Photos (untuk gambar).
Nah, keterbatasan yang paling penting:
- Ulasan: Place resource hanya mengembalikan maksimal 5 ulasan per tempat, diurutkan berdasarkan relevansi. Hanya itu. Bukan 50, bukan "semua". Lima.
- Foto: Dibatasi 10 referensi foto per tempat di Place resource.
- Popular times / live busyness: Tidak tersedia sebagai field standar di Places API. Google memang mengonfirmasi data ini ada di tampilan yang dilihat konsumen (berdasarkan Location History yang diagregasi dan dianonimkan), dan blog Maps mereka menjelaskan cara kerjanya — tetapi daftar field tidak menyertakannya.
- Bagian Q&A: Tidak diekspos.
- "People also search for" untuk kompetitor: Tidak diekspos.
- Menu / daftar harga: Bukan field standar.
Siapa yang Biasanya Menggunakan Google Places API?
- Perusahaan logistik untuk validasi dan geocoding alamat
- Aplikasi travel dan hospitality untuk menampilkan hotel, restoran, dan tempat wisata terdekat
- Platform properti untuk memperkaya listing dengan data bisnis lokal
- Agensi local SEO untuk audit konsistensi NAP (name, address, phone)
- Tim sales untuk menyusun daftar prospek dari Place ID dan info bisnis dasar
Kalau kebutuhan Anda cocok dengan skenario "saya butuh data tempat yang terstruktur untuk aplikasi produksi," API adalah titik awal yang pas. Kalau kebutuhan Anda melibatkan kata-kata seperti "semua ulasan," "popular times," atau "analisis kompetitor" — lanjut baca.
Apa Arti "Scraping" Data Google Places?
Web scraping adalah penggunaan software untuk mengekstrak data dari halaman web secara otomatis — dalam kasus ini, dari Google Maps atau hasil Google Search — bukan lewat API resmi. Scraper membaca halaman seperti browser Anda, lalu mengambil bagian-bagian terstruktur: nama bisnis, alamat, teks ulasan, rating bintang, histogram popular times, Q&A, saran kompetitor, galeri foto penuh, dan elemen lain yang tampil di layar.
Perbedaan utamanya: API memberi Anda apa yang dipilih Google untuk diekspos. Scraping memberi Anda, secara teori, semua yang bisa dilihat manusia di halaman.
Tapi, "scraping" itu tidak cuma satu bentuk. Ada tiga pendekatan yang sangat berbeda, dan komprominya juga besar.
Script DIY vs Scraping API Terkelola vs Tool Tanpa Kode
| Pendekatan | Cara Kerja | Cocok Untuk | Tradeoff Utama |
|---|---|---|---|
| Script DIY (Puppeteer, Playwright, Selenium) | Anda menulis dan memelihara script headless browser yang menavigasi halaman Google Maps dan membaca DOM | Developer yang butuh kontrol penuh dan logika kustom | Beban maintenance paling tinggi — selector rusak saat UI Google berubah |
| Managed scraping API (Thunderbit API, SerpApi, Outscraper) | Anda mengirim URL atau query ke API; sistem menangani rendering, anti-bot, dan parsing, lalu mengembalikan data terstruktur | Developer yang ingin output terstruktur tanpa perlu memelihara scraper | Harga dan kualitas vendor bervariasi; Anda bergantung pada pihak ketiga |
| Ekstensi browser tanpa kode (Thunderbit Chrome Extension) | Ekstraksi klik-klik langsung di browser — AI menyarankan field, Anda klik "Scrape", lalu ekspor ke Sheets/Excel | Pengguna bisnis, marketer, tim sales yang butuh data cepat masuk spreadsheet | Kurang fleksibel untuk pipeline yang kompleks; bergantung pada kualitas AI tool |
Versi singkatnya: DIY = paling fleksibel tapi maintenance paling berat. Managed API = output terstruktur, tanpa maintenance. Tool tanpa kode = paling cepat untuk non-developer.
Google Places API vs Scraping: Perbandingan Data per Field
Ini tabel yang dulu saya harap sudah ada saat mulai riset topik ini. Setiap field yang mungkin dibutuhkan pengguna bisnis atau developer, dibandingkan langsung berdampingan:

| Field Data | Google Places API | Web Scraping |
|---|---|---|
| Nama bisnis | âś… Lengkap (tier Pro) | âś… Lengkap |
| Alamat / lokasi | âś… Lengkap (tier Essentials) | âś… Lengkap |
| Nomor telepon | âś… Tier Enterprise | âś… Saat terlihat |
| Website URL | âś… Tier Enterprise | âś… Saat terlihat |
| Rating agregat | âś… Tier Enterprise | âś… Lengkap |
| Jumlah rating pengguna | âś… Tier Enterprise | âś… Lengkap |
| Ulasan individual (teks + rating) | ⚠️ Maksimal 5 ulasan | ✅ Semua ulasan yang tersedia |
| Popular times / live busyness | ❌ Bukan field API standar | ✅ Bisa diekstrak (jika dirender) |
| Bagian Q&A | ❌ Tidak diekspos | ✅ Bisa diekstrak |
| Metadata foto | âś… Maksimal 10 referensi via endpoint Photos | âś… Galeri penuh |
| Menu / daftar harga | ❌ Bukan field standar | ⚠️ Jika memang tampil di halaman |
| "People also search for" (kompetitor) | ❌ Tidak diekspos | ✅ Bisa diekstrak |
| Jam buka | âś… Tier Enterprise | âś… Saat terlihat |
| Level harga | âś… Tier Enterprise | âś… Saat terlihat |
| Place ID | ✅ Sangat kuat (Essentials) | ⚠️ Mungkin, tapi API adalah sumber kanonik |
| Google Maps URI | âś… Tier Pro | âś… Itu URL halamannya |
| Balasan pemilik terhadap ulasan | ⚠️ Perlu cek ketersediaan terbaru | ✅ Sering terlihat |
| Posisi SERP / map-pack | ❌ Bukan tujuan API | ✅ Lewat scraping SERP |
Kesenjangan utamanya: kalau Anda butuh set ulasan lengkap untuk analisis sentimen, pemantauan reputasi, atau benchmarking kompetitor, API saja tidak cukup. Lima ulasan per tempat hanyalah sampel, bukan dataset.
Popular times dan pola traffic pejalan kaki? Ceritanya sama. Kalau Anda konsultan retail atau analis properti komersial, scraping adalah satu-satunya jalan — data itu memang tidak ada di API.
Di sisi lain, untuk Place ID yang kanonik, alamat terstruktur untuk geocoding, atau membangun store locator, API jauh lebih bersih, lebih andal, dan didukung secara resmi.
Biaya Nyata: Google Places API vs Scraping di 10K, 100K, dan 1M Record
Biaya adalah bagian yang paling sering disalahpahami dalam keputusan ini. Banyak orang mendaftar paket gratis API, bikin prototipe, lalu kaget saat tagihan membengkak begitu skala naik. Di sisi scraping, orang juga sering meremehkan biaya proxy dan waktu developer.

Jadi, mari kita hitung.
Rincian Harga Google Places API
Google merombak harga Maps Platform pada Maret 2025, mengganti kredit bulanan flat $200 yang lama dengan batas penggunaan gratis per SKU dan tier berbasis volume. Harga saat ini seperti ini:
- Field Essentials (Place Details): 10.000 request gratis/bulan, lalu $5,00 per 1.000 hingga 100K
- Field Pro (Place Details): 5.000 gratis, lalu $7,00/1K
- Field Enterprise (Place Details): 1.000 gratis, lalu $20,00/1K
- Enterprise + Atmosphere (ulasan, fasilitas): 1.000 gratis, lalu $25,00/1K
Detail penting: kalau field mask Anda mencakup bahkan satu field Enterprise + Atmosphere (seperti reviews), seluruh request ditagih di tier itu. Dan workflow umum biasanya menggabungkan beberapa SKU — misalnya Text Search Pro untuk menemukan tempat, lalu Place Details Enterprise + Atmosphere untuk memperkaya datanya — jadi biayanya menumpuk.
Satu "lookup" jarang berarti satu request yang benar-benar ditagih.
Biaya Scraping: Tool, Proxy, dan Waktu Developer
Biaya scraping terbagi dalam tiga komponen:
- Langganan tool atau kredit API: Managed scraping API menagih per request, per kredit, atau per record. SerpApi menagih per pencarian. Outscraper memakai pay-as-you-go per record. Thunderbit API memakai sistem kredit (Extract = 20 kredit/request). Ekstensi Chrome Thunderbit menagih 1 kredit per baris output.
- Biaya proxy (hanya DIY): Residential proxy untuk scraping Google Maps biasanya berkisar $50–$300/bulan tergantung volume dan penyedia.
- Waktu developer (hanya DIY): Membangun dan memelihara script Puppeteer/Playwright. Ini biaya tersembunyi yang sering merusak ekonomi DIY (dibahas lebih lanjut di bawah).
Tabel Biaya Berdampingan: API vs Scraping dalam Skala Besar
| Skala | Google Places API (Enterprise + Atmosphere) | Managed Scraping API (perkiraan) | DIY Scraping (proxy + waktu dev) |
|---|---|---|---|
| 10K record/bulan | ~$225 (1K gratis, 9K × $25/1K) | ~$50–$150 tergantung provider | ~$50 proxy + 2–4 jam dev/bulan |
| 100K record/bulan | ~$2,475 (setelah batas gratis, tier volume berlaku) | ~$250–$500 | ~$150 proxy + 8–16 jam dev/bulan |
| 1M record/bulan | ~$17,975 (tier volume menurunkan biaya per unit, tapi total tetap tinggi) | ~$1,500–$3,000 | ~$300 proxy + 20+ jam dev/bulan + risiko error |
Catatan: Estimasi API menggunakan tier volume yang dipublikasikan untuk Place Details Enterprise + Atmosphere, diterapkan setelah batas gratis 1K. Estimasi managed scraping API adalah kisaran perkiraan lintas provider. Waktu dev DIY mengasumsikan biaya tenaga kerja $50–$100/jam.
Pola yang kelihatan jelas: pada skala kecil atau hobi (di bawah 10K), batas gratis API sering menjadikannya opsi termurah, apalagi kalau Anda cuma butuh field Essentials atau Pro. Pada skala bisnis (100K+), biaya API mulai naik tajam, terutama untuk field yang kaya. Pada skala enterprise (1M+), API bisa mendekati biaya lima digit per bulan, dan scraping atau layanan dataset jadi lebih masuk akal secara ekonomi — tentu kalau Anda memang butuh field tambahan yang tidak diekspos API.
Kalau Anda cuma butuh alamat dan Place ID, jangan scraping. API lebih murah dan lebih tepat untuk itu. Argumen biaya untuk scraping baru kuat kalau Anda memang butuh data yang tidak bisa diberikan API.
Realitas Anti-Bot: Kenapa Scraper DIY Google Sering Rusak
Ini bagian yang sering dilewati para pendukung scraping. Google tidak ingin Anda scraping Google Maps. Mereka punya beberapa lapisan pertahanan dan memperbaruinya secara rutin.

Pertahanan Berlapis dari Google
- Tantangan reCAPTCHA: Browser otomatis memicu CAPTCHA jauh lebih sering daripada pengguna manusia
- Rendering JavaScript di sisi klien: Google Maps adalah aplikasi JavaScript yang berat. Request HTTP sederhana tidak akan memberi Anda konten yang sudah dirender — Anda butuh headless browser penuh
- Browser fingerprinting: Google mendeteksi browser headless lewat fingerprint canvas, WebGL, properti navigator, dan sinyal lain
- Pembatasan laju IP: Terlalu banyak request dari IP yang sama (atau subnet proxy yang sama) dan Anda akan diblokir
- Perubahan struktur DOM: Google sering mengubah cara halaman dibangun — konsensus di Reddit dan issue GitHub adalah selector bisa rusak setiap beberapa minggu hingga beberapa bulan
Yang terakhir ini adalah pembunuh diam-diam. Script Puppeteer yang jalan mulus di bulan Juni bisa tiba-tiba mengembalikan hasil kosong di bulan Juli karena Google mengganti nama class CSS atau merombak struktur div.
Biaya Tersembunyi Memelihara Script DIY
Setiap kali DOM Google berubah, seseorang di tim Anda harus:
- Menyadari bahwa scraper rusak (semoga sebelum data yang salah menyebar)
- Memeriksa struktur halaman yang baru
- Memperbarui selector, menangani jenis CAPTCHA baru, menyesuaikan logika retry
- Menguji dan melakukan redeploy
Dalam satu tahun, waktu maintenance ini bisa dengan mudah melampaui biaya langganan managed scraping API. Saya pernah melihat tim menghabiskan 40+ jam developer per tahun hanya untuk menjaga scraper Google Maps tetap hidup — dan itu pun estimasi konservatif untuk setup dengan kompleksitas sedang.
Mengapa Managed Scraping API Ada
Beban maintenance seperti inilah alasan layanan seperti Thunderbit API, SerpApi, dan Outscraper ada. Mereka menyerap kompleksitas anti-bot — rendering JS, penyelesaian CAPTCHA, rotasi proxy, pemeliharaan selector — lalu mengembalikan data terstruktur.
Endpoint POST /extract milik Thunderbit dengan renderMode: "full" menangani halaman berat JavaScript seperti Google Maps dan mengembalikan JSON terstruktur yang cocok dengan skema, bukan HTML mentah yang masih harus diparsing. MCP server memperluas ini untuk AI agent — Claude, Cursor, atau workflow berbasis LLM lain bisa mengambil data Google Maps di tengah tugas tanpa keluar dari lingkungan mereka.
Untuk pengguna non-teknis, Thunderbit Chrome Extension adalah opsi tanpa maintenance: buka halaman Google Maps, klik "AI Suggest Fields," klik "Scrape," lalu ekspor ke Sheets. Tanpa selector, tanpa proxy, tanpa debugging.
SerpApi dan Outscraper adalah alternatif solid dengan model harga dan format output yang berbeda. SerpApi mengembalikan JSON terstruktur per pencarian; Outscraper menagih per record dengan model pay-as-you-go. Pilihan yang tepat bergantung pada volume, anggaran, dan apakah Anda butuh JSON terstruktur atau lebih nyaman mem-parsing output semi-terstruktur.
Strategi Hybrid: Memakai Google Places API dan Scraping Bersama
Tidak ada artikel populer di topik ini yang menyebut pendekatan yang menurut saya paling efektif di praktik: memakai keduanya. Banyak tim akhirnya bergantung pada API resmi untuk sebagian tugas dan scraping untuk tugas lainnya. Kuncinya adalah mencocokkan setiap tool dengan pekerjaan yang tepat.

Kapan API Resmi Menang
- Autocomplete di aplikasi produksi live: Latensi rendah, patuh ToS, SLA andal. Tidak ada debat di sini.
- Backend aplikasi berbasis lokasi: Store locator, validasi alamat, pencocokan Place ID. API-nya terstruktur, didukung, dan terdokumentasi.
- Integrasi yang sensitif terhadap compliance: Kontrak enterprise, produk yang menghadap publik, atau situasi apa pun saat kepatuhan pada ToS Google tidak bisa ditawar.
Kapan Scraping Menang
- Ekstraksi ulasan penuh (5K+ ulasan per tempat): Analisis sentimen, pemantauan reputasi, benchmarking kompetitor. Batas 5 ulasan di API membuatnya tidak cukup untuk ini.
- Ekstraksi daftar prospek satu kali: Lebih murah untuk batch job tanpa tagihan berkelanjutan. Tool tanpa kode seperti Thunderbit bisa men-scrape daftar bisnis dan mengekspor ke spreadsheet dalam hitungan menit.
- Analisis popular times / traffic pejalan kaki: Tidak tersedia via API. Titik.
- Data Q&A, "people also search for" kompetitor: Hanya terlihat di halaman, bukan di API.
Kapan Pendekatan Hybrid Masuk Akal
- Pemantauan harga/rating berkelanjutan: Pakai API untuk data terstruktur dasar (Place ID, alamat, rating agregat), lalu scraping untuk field yang lebih dalam yang tidak ditangkap API (ulasan penuh, popular times).
- Workflow enrichment: Gunakan API untuk mendapatkan Place ID dan info bisnis kanonik, lalu scrape halaman listing individual untuk set ulasan lengkap, Q&A, dan konteks kompetitor.
- Monitoring terjadwal: Scheduled scraper Thunderbit (untuk pengguna tanpa kode) atau batch extract via CLI dengan cron (untuk developer) bisa menangani scraping berulang tanpa infrastruktur kustom.
Matriks Keputusan Berdasarkan Use Case
| Use Case | Metode yang Disarankan | Alasannya |
|---|---|---|
| Autocomplete di aplikasi live | âś… API resmi | Latensi rendah, patuh ToS, andal |
| Mengambil 5K+ set ulasan penuh | âś… Scraping / Scraping API | API dibatasi 5 ulasan per tempat |
| Daftar prospek bisnis lokal satu kali | âś… Scraping (atau ekstensi Thunderbit) | Lebih murah untuk batch; tanpa tagihan berkelanjutan |
| Analisis popular times / traffic pejalan kaki | âś… Hanya scraping | Tidak tersedia via API |
| Monitoring harga/rating berkelanjutan | ⚠️ Hybrid | API untuk data dasar, scraping untuk field mendalam |
| Backend aplikasi berbasis lokasi | âś… API resmi | Terstruktur, didukung, SLA |
| Pelacakan posisi SERP local SEO | âś… Scraping / SERP API | Bukan tujuan Places API |
| "People also search for" kompetitor | âś… Hanya scraping | Tidak diekspos via API |
Flowchart Keputusan: Google Places API vs Scraping — Mana yang Sebaiknya Dipilih?
Daripada jawaban samar "tergantung," ini kerangka keputusan yang konkret. Lewati empat pertanyaan berikut:
1. Apakah Anda butuh data real-time di aplikasi produksi? → Ya: Pakai API resmi. Didukung, punya SLA, dan patuh ToS. Selesai di sini. → Tidak: Lanjut.
2. Apakah Anda butuh data yang tidak dikembalikan API (ulasan penuh, popular times, Q&A)? → Ya: Scraping wajib dipakai. API memang tidak bisa memberi data ini. → Tidak: Lanjut.
3. Berapa banyak record per bulan? → Di bawah 10K: API kemungkinan paling murah, terutama jika Anda hanya butuh field Essentials atau Pro. Batas gratis cukup membantu pada skala ini. → Di atas 10K: Scraping atau managed scraping API kemungkinan lebih ekonomis, terutama untuk field yang kaya.
4. Apakah Anda punya sumber daya developer untuk membangun dan memelihara scraper? → Ya: DIY dengan Puppeteer/Playwright memberi kontrol maksimal, tapi siapkan anggaran untuk maintenance berkelanjutan. → Tidak: Gunakan managed scraping API (Thunderbit API, SerpApi, Outscraper) atau tool tanpa kode (Thunderbit Chrome Extension).
Perbandingan Singkat Alternatif untuk Developer
| Tool | Model Harga | Format Output | Menangani Anti-Bot | Dukungan Batch |
|---|---|---|---|---|
| Thunderbit API / MCP | Berbasis kredit (Extract = 20 kredit/request) | JSON terstruktur yang sesuai skema | âś… Rendering JS, rotasi proxy, geo-routing | âś… Hingga 100 URL per batch |
| SerpApi | Per search (paket bertingkat) | JSON terstruktur | âś… | âś… Lewat parameter API |
| Outscraper | Per record (pay-as-you-go) | JSON / CSV | âś… | âś… Lewat task queue |
| DIY (Puppeteer/Playwright) | Proxy + waktu dev | HTML mentah (Anda yang parsing) | ❌ Anda yang menangani | ✅ Sebebas yang Anda bangun |
Pembeda Thunderbit API: ia mengembalikan JSON terstruktur yang cocok dengan skema berdasarkan JSON Schema yang Anda definisikan — bukan HTML mentah atau Markdown yang masih harus diproses lagi. Kalau Anda memberi makan pipeline LLM atau memuat database, itu menghemat waktu post-processing yang nyata.
Posisi Thunderbit di Sini (Untuk Pengguna Bisnis dan Developer)
Kami membangun Thunderbit untuk menjembatani gap antara "saya butuh data Google Maps" dan "saya tidak mau jadi engineer infrastruktur scraping." Begini cara kerjanya untuk kedua audiens.
Untuk Pengguna Non-Teknis: Chrome Extension
- Buka halaman Google Maps — halaman hasil pencarian atau listing bisnis individual
- Klik "AI Suggest Fields" — AI Thunderbit membaca halaman dan mengusulkan kolom (nama bisnis, alamat, rating, ulasan, telepon, dll.)
- Klik "Scrape" — ekstensi mengekstrak data ke tabel terstruktur. Gunakan cloud mode untuk hingga 50 halaman secara bersamaan
- Scrape subpage — klik "Scrape Subpages" untuk mengunjungi tiap listing dan mengambil detail lengkap
- Ekspor — ke Excel, Google Sheets, Airtable, atau Notion. Ekspor data gratis, tanpa paywall
Untuk pemantauan berulang — cek rating kompetitor mingguan, listing bisnis baru — scheduled scraper berjalan otomatis sesuai jadwal yang Anda tentukan.
Untuk Developer: API, MCP Server, dan CLI
POST /extractdengan JSON Schema: Kirim URL Google Maps, definisikan field yang Anda mau, lalu terima JSON terstruktur. SetrenderMode: "full"untuk halaman berat JavaScript. Thunderbit menangani rendering, anti-bot, rotasi proxy, dan geo-routing.POST /distill: Dapatkan Markdown bersih dari halaman apa pun — berguna untuk pipeline LLM yang butuh konten mentah, bukan field terstruktur. 1 kredit/request vs 20 untuk Extract.- MCP Server: AI agent (Claude, Cursor) bisa men-scrape data Google Maps di tengah tugas. Mendukung distillation, ekstraksi terstruktur, saran field, dan batch job hingga 100 URL.
- CLI:
thunderbit batch extract --file urls.txt --schema places.jsonuntuk scraping terjadwal atau yang terintegrasi ke CI/CD.
Harga kredit: Extract = 20 kredit/request, Distill = 1 kredit/request. Kredit API dihitung per request, bukan per baris (berbeda dengan ekstensi, di mana 1 kredit = 1 baris output). Lihat Thunderbit Pricing untuk paket terbaru.
Pertimbangan Legal dan Terms of Service
Saya akan singkat dan faktual — tanpa taktik menakut-nakuti, tanpa pitch penjualan.
Google Places API punya ketentuan yang jelas: syarat layanan spesifik Google menyatakan konten Places API boleh digunakan tanpa Google Map, tetapi tidak boleh digunakan bersama peta non-Google. Nilai latitude/longitude dapat di-cache hingga 30 hari kalender berturut-turut; Place ID dapat disimpan tanpa batas waktu. Atribusi diwajibkan untuk detail, foto, dan ulasan.
Scraping Google Maps bisa melanggar Terms of Service Google. Penegakannya bervariasi — risikonya termasuk blok IP, CAPTCHA, dan, dalam kasus jarang, tindakan hukum. Managed scraping API umumnya mengambil sebagian beban kepatuhan atas nama pengguna, tetapi itu bukan tameng hukum.
Untuk aplikasi produksi yang dipakai end user, API resmi adalah pilihan yang lebih aman. Untuk riset internal, analisis batch, dan competitive intelligence, scraping adalah praktik umum di industri. Konsultasikan dengan penasihat hukum Anda untuk workflow komersial.
Kalau Saya Harus Memilih, Apa yang Akan Saya Pakai?
Setelah menelusuri SKU harga, daftar field, thread komunitas, dan dokumentasi tool, inilah kesimpulan saya:
- Pakai API resmi ketika Anda membutuhkan data real-time yang patuh ToS di aplikasi produksi, atau ketika field Essentials/Pro sudah cukup dan volume Anda di bawah 10K/bulan. Batas gratisnya cukup dermawan untuk skala kecil, dan kualitas datanya tidak perlu diragukan.
- Pakai scraping (managed API atau tool tanpa kode) ketika Anda butuh ulasan penuh, popular times, Q&A, konteks kompetitor, atau field apa pun yang tidak diekspos API. Juga saat volume Anda melewati 10K–100K record/bulan dan Anda meminta field yang kaya (Enterprise + Atmosphere) — tagihan API jadi sulit dibenarkan.
- Pakai keduanya ketika workflow Anda menuntut Place ID kanonik dan data terstruktur dasar (API) plus intel mendalam dari halaman publik (scraping). Ini jauh lebih umum daripada yang diakui banyak artikel.
Titik perubahan biayanya: di bawah ~10K record/bulan dengan field dasar, API lebih sederhana dan sering kali gratis. Di atas itu, terutama untuk data kaya, scraping biasanya lebih ekonomis. Pada 1M record dengan field Enterprise + Atmosphere, biaya API bisa sekitar ~$18K/bulan versus sebagian kecil dari itu dengan managed scraper.
Kalau Anda ingin mengujinya sendiri, Thunderbit Chrome Extension adalah cara tercepat untuk melihat apa yang bisa ditangkap scraping dibanding API. Untuk workflow developer, Thunderbit API docs punya semua yang Anda butuhkan untuk mulai. Dan untuk bacaan lebih dalam tentang web scraping tanpa coding atau AI web scraping secara umum, kami sudah membahas topik-topik itu secara luas di blog.
Poin Penting
- Google Places API adalah pilihan tepat untuk aplikasi produksi, autocomplete, dan lookup tempat yang terstruktur — tetapi jumlah ulasan dibatasi 5, foto dibatasi 10, dan tidak mengekspos popular times, Q&A, atau saran kompetitor.
- Scraping menangkap semua yang terlihat di halaman Google Maps, termasuk set ulasan penuh dan data popular times, tetapi mengharuskan Anda mengelola pertahanan anti-bot atau membayar layanan terkelola.
- Di bawah 10K record/bulan, batas gratis API sering membuatnya menjadi opsi termurah. Di atas 100K, scraping atau managed scraping API biasanya lebih ekonomis untuk data kaya.
- Scraper DIY sering rusak karena pertahanan anti-bot Google dan perubahan DOM — anggarkan 40+ jam developer/tahun untuk maintenance, atau gunakan tool terkelola.
- Strategi terbaik di dunia nyata sering kali hybrid: API untuk ID kanonik dan field dasar, scraping untuk intel mendalam yang tidak bisa dikembalikan API.
- Thunderbit melayani kedua sisi: Chrome Extension untuk pengguna tanpa kode dan API/MCP server JSON terstruktur untuk developer.
FAQ
Bisakah mendapat lebih dari 5 ulasan Google lewat Places API?
Tidak. Google Places API membatasi pengembalian ulasan menjadi 5 per tempat, diurutkan berdasarkan relevansi. Ini sudah berlaku sejak API diluncurkan dan tidak berubah meski bertahun-tahun ada permintaan dari developer. Untuk mengakses semua ulasan yang tersedia dari sebuah bisnis, scraping (baik DIY maupun lewat managed scraping API) adalah satu-satunya opsi.
Apakah scraping Google Maps legal?
Tidak ada jawaban universal ya atau tidak. Scraping data Google Maps yang terlihat publik mungkin melanggar Terms of Service Google, dan penegakannya berkisar dari blok IP hingga, jarang sekali, tindakan hukum. Banyak bisnis memakai scraping untuk riset internal dan competitive intelligence tanpa masalah. Managed scraping API menyerap sebagian risiko kepatuhan, tetapi bukan tameng hukum. Jika Anda membangun produk komersial atau memproses data pribadi, konsultasikan dengan penasihat hukum.
Berapa biaya Google Places API untuk 100K lookup?
Tergantung field yang diminta. Untuk Place Details di tier Essentials, sekitar ~$450. Di tier Pro, sekitar ~$1.615. Di Enterprise + Atmosphere (termasuk ulasan dan fasilitas), sekitar ~$2.475. Jika workflow Anda juga membutuhkan Text Search Pro untuk discovery, tambahkan sekitar ~$3.040 lagi. Estimasi ini memakai tier volume Google yang dipublikasikan dan mengasumsikan satu request yang ditagih per record setelah batas gratis.
Apa bedanya scraping API dan tool scraping tanpa kode?
Scraping API (seperti Thunderbit's Open API) ditujukan untuk developer yang mengintegrasikan scraping ke dalam kode, pipeline otomatisasi, atau workflow AI agent lewat request HTTP. Tool tanpa kode (seperti Thunderbit Chrome Extension) memungkinkan pengguna non-teknis memilih, mengeklik, dan mengekspor data dari browser tanpa menulis kode apa pun. Keduanya bisa menghasilkan data terstruktur; bedanya ada pada antarmuka dan model integrasinya.
Apakah Thunderbit bekerja di halaman Google Maps?
Ya. Chrome Extension bisa men-scrape hasil pencarian Google Maps dan listing bisnis individual — AI menyarankan field secara otomatis, dan Anda bisa memakai cloud mode untuk hingga 50 halaman simultan. Endpoint API POST /extract dengan renderMode: "full" menangani halaman Google Maps yang dirender JavaScript dan mengembalikan JSON terstruktur yang cocok dengan skema. MCP server memungkinkan AI agent mengambil data Google Maps di tengah workflow.
Pelajari Lebih Lanjut


