Uygulama rehberi

Turnstile, reCAPTCHA ve hCaptcha karşılaştırması

Üç CAPTCHA servisi, bir iletişim formu. Ücretsiz limitlerin, ziyaretçilerin gördüklerinin, verinin nereye gittiğinin ve her birinin nasıl doğrulanacağının sade bir karşılaştırması.

Kısa yanıt. Sıradan bir iletişim formu için en basit seçim Cloudflare Turnstile'dır. Sınırsız doğrulamayla ücretsizdir ve genellikle bulmaca göstermez. Cloudflare ayrıca form içeriklerini okumadığını söylüyor. Zaten Google Cloud kullanıyor ve risk puanı istiyorsanız reCAPTCHA uygundur. Ücretsiz planı olan, Google dışı bir servis istiyorsanız hCaptcha uygundur. Hepsi ancak sunucunuz token'ı doğrularsa işe yarar.

Formgong

Turnstile, reCAPTCHA ve hCaptcha karşılaştırması
Turnstile, reCAPTCHA ve hCaptcha karşılaştırması

Kısa karşılaştırma

Fiyatlar ve limitler, 05.10.2026 tarihinde her sağlayıcının kendi sayfasında yayımlandığı gibidir. Fiyatlar ABD doları cinsindendir.

İletişim formu için Turnstile, reCAPTCHA ve hCaptcha
Cloudflare TurnstileGoogle reCAPTCHAhCaptcha
Ücretsiz kullanımSınırsız doğrulama, 20 widget'a kadarAyda 10.000 değerlendirmeye kadar (Essentials)Basic plan ücretsiz
ÜcretliYalnızca EnterprisePremium: 10.001–100.000 için sabit $8, sonra her 1.000 için $1Pro: yıllık ödemede ayda $99, aylık $139, 100 bin doğrulama dahil
Ziyaretçi ne görür?Managed, Non-Interactive veya Invisible modv2: onay kutusu veya görünmez; v3: görev yokOnay kutusu ve resim görevleri; ücretli planlarda pasif mod
Risk puanıHayır, geçti/kaldıEvet, v3'te 0.0–1.0 arasıEnterprise planda
Kime uygun?Çoğu iletişim formunaZaten Google Cloud kullanan sitelereResimli görevlerle Google dışı seçenek isteyenlere

Hiçbiri tam bir spam filtresi değildir. Spamı elle yazan insanlar üçünü de geçer. Hangisini seçerseniz seçin, bal küpü alanı ve sunucu kurallarıyla birlikte kullanın. Ayrıntılar HTML belgelerinde.

Cloudflare Turnstile

Turnstile tarayıcıda küçük kontroller çalıştırır ve çoğu zaman bulmaca göstermeden karar verir. Üç moddan birini seçersiniz: Managed, Non-Interactive veya Invisible. Ücretsiz plan 20 widget'a kadar, sınırsız doğrulama ve widget başına 10 alan adı içerir. Bunun için sitenizi Cloudflare'e taşımanız gerekmez.

Cloudflare, Turnstile'ın form içeriklerine erişmediğini, onları saklamadığını ve iletmediğini, widget'ın WCAG 2.2 AA'ya uygun olduğunu söylüyor. Her token 300 saniye geçerlidir ve yalnızca bir kez doğrulanabilir. Aynı token'ı ikinci kez doğrulamak timeout-or-duplicate hatası verir.

Zayıf yanları: ayarlanabilir bir risk puanı yoktur ve ücretsiz plandaki analizler yedi günü kapsar.

Google reCAPTCHA

reCAPTCHA artık Google Cloud'un bir parçası ve Essentials, Premium, Enterprise katmanları var. Essentials, kuruluş başına ayda 10.000 değerlendirmeye kadar ücretsizdir. Üstünde Premium, 100.000'e kadar sabit $8, sonrasında her 1.000 değerlendirme için $1'dır.

Sürüm 3 hiç görev göstermez. 0.0 ile 1.0 arasında bir puan döndürür ve Google başlangıç eşiği olarak 0.5 öneriyor. Düşük puanlarla ne yapacağınıza siz karar verirsiniz. Token iki dakikada geçersiz olur, uzun mesaj yazan biri yeni bir token'a ihtiyaç duyabilir.

İki pratik not. Google, reCAPTCHA rozetini ya da sitenin reCAPTCHA ile korunduğunu söyleyen, Google koşullarına bağlantılı bir satırı göstermenizi istiyor. Betik Google sunucularından yüklenir, bu da gizlilik metninizde yer almalıdır.

hCaptcha

hCaptcha, reCAPTCHA v2 onay kutusuna çok benzer çalışır ve kendi geçiş rehberi yalnızca birkaç değişiklik listeler. Basic plan ücretsizdir. Pro aylık ödemede ayda $139, yıllık ödemede ayda $99'dır. 100.000 doğrulama dahildir, sonrası her 1.000 için $0.99. Pro düşük sürtünmeli pasif bir mod, Enterprise ise risk puanları ekler.

Ücretsiz planda ziyaretçiler Turnstile'a göre daha sık resim görevi görür. Bu, özellikle telefonlarda bazı gerçek mesajlara mal olur. hCaptcha GDPR, CCPA ve diğer gizlilik yasalarına uyduğunu söylüyor. Sizin için önemli ayrıntılar için gizlilik politikasını okuyun.

Token'ı her zaman sunucuda doğrulayın

Üç widget da token'ı gizli bir form alanına yazar. Token, sunucunuz onu sağlayıcıya gönderip başarılı yanıt alana kadar hiçbir şey kanıtlamaz. Yalnızca widget gösteren bir form korumalı değildir: bir bot sayfayı atlayıp verileri doğrudan sunucunuza gönderebilir.

Aşağıdaki örnek bir Cloudflare Worker'da Turnstile token'ını doğrular. reCAPTCHA ve hCaptcha da kendi doğrulama adresleri ve gizli anahtarlarıyla aynı şekilde çalışır.

JavaScript
// Formu karşılayan bir Cloudflare Worker (veya fetch destekleyen herhangi bir sunucu).
export default {
  async fetch(request, env) {
    const form = await request.formData();
    const check = new FormData();
    check.append("secret", env.TURNSTILE_SECRET_KEY); // gizli anahtar yalnızca sunucuda kalsın
    check.append("response", form.get("cf-turnstile-response") || "");
    check.append("remoteip", request.headers.get("CF-Connecting-IP") || "");

    const result = await fetch("https://challenges.cloudflare.com/turnstile/v0/siteverify", {
      method: "POST",
      body: check,
    }).then((response) => response.json());

    // Token yalnızca bir kez çalışır ve 300 saniye sonra geçersiz olur.
    if (!result.success) return new Response("Lütfen tekrar deneyin.", { status: 403 });

    // Ziyaretçi doğrulandı: formu burada saklayın veya iletin.
    return new Response("Teşekkürler, mesajınızı aldık.");
  },
};
Her servisin widget kodu
HTML
<!-- Cloudflare Turnstile: cf-turnstile-response alanı ekler -->
<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
<div class="cf-turnstile" data-sitekey="YOUR_TURNSTILE_SITE_KEY"></div>

<!-- reCAPTCHA v2 onay kutusu: g-recaptcha-response alanı ekler -->
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<div class="g-recaptcha" data-sitekey="YOUR_RECAPTCHA_SITE_KEY"></div>

<!-- hCaptcha: h-captcha-response alanı ekler -->
<script src="https://js.hcaptcha.com/1/api.js" async defer></script>
<div class="h-captcha" data-sitekey="YOUR_HCAPTCHA_SITE_KEY"></div>

Sık yapılan hatalar

  • Gizli anahtarı sayfa koduna koymak. Yalnızca site key herkese açıktır.
  • Token'ı sunucu yerine tarayıcıda doğrulamak.
  • Aynı token'ı iki kez doğrulamak, örneğin yeniden denemede. Turnstile ikincisini reddeder.
  • Test sitesi gibi ikinci bir alan adını widget'ın listesine eklemeyi unutmak.
  • Her ziyarette zor bir bulmaca göstermek. Spam azsa bal küpü alanı yetebilir.

CAPTCHA ekledikten sonra form birden mesaj iletmeyi bırakırsa, sık nedenlerden biri token doğrulamasıdır. İletişim formu neden e-posta göndermez yazısındaki adımlar nedeni bulmanıza yardım eder.

Hangisi Formgong ile çalışır?

Formgong, Cloudflare Turnstile'ı sunucu tarafında sizin yerinize doğrular. Form ayarlarında Cloudflare Turnstile zorunlu seçeneğini açın ve kendi Turnstile site key ve secret değerlerinizi orada girin. Sonra widget'ı formunuza ekleyin; Formgong her gönderimde token'ı kontrol eder. Bu ücretsiz planda da çalışır.

Formgong, reCAPTCHA veya hCaptcha token'larını doğrulamaz. Formunuz bunlardan birini kullanıyorsa Formgong token'ı sıradan bir alan olarak saklar ve kendi kontrollerine güvenir: bal küpü, doldurma süresi ve içerik. Veri koruma soruları için GDPR uyumlu form backend'i seçme yazısına bakın. Bu yazı hukuki tavsiye değildir.

Sık sorulan sorular

Cloudflare Turnstile gerçekten ücretsiz mi?

Evet. 05.10.2026 itibarıyla ücretsiz plan sınırsız doğrulama ve 20 widget'a kadar içerir. Başka Cloudflare servisleri gerekmez.

reCAPTCHA hâlâ ücretsiz mi?

Essentials katmanında kuruluş başına ayda 10.000 değerlendirmeye kadar. Üstünde Google, Premium katmanı üzerinden ücret alır.

reCAPTCHA'dan hCaptcha'ya veya Turnstile'a geçmek kolay mı?

Genellikle evet. Betiği ve widget'ı değiştirin, sunucuda da alan adını, doğrulama adresini ve gizli anahtarı güncelleyin. hCaptcha'nın reCAPTCHA'dan geçiş için kısa bir rehberi var.

İletişim formunda CAPTCHA'ya gerçekten ihtiyaç var mı?

Başlangıçta çoğu zaman yok. Bal küpü alanı, en kısa doldurma süresi ve sunucu kuralları bot spamının çoğunu durdurur. Botlar geçmeye başlayınca Turnstile ekleyin.

Kaynaklar ve belgeler

Bu rehberin resmî kaynakları: Cloudflare Turnstile, Turnstile plans, Turnstile widget modes, Turnstile server-side validation, Google Cloud: compare reCAPTCHA tiers, reCAPTCHA v3, reCAPTCHA FAQ (badge), hCaptcha pricing, hCaptcha: switch from reCAPTCHA. HTML için Formgong, Verilerin saklanması.

Yazıyı Markdown olarak oku

Bu rehberi puanlayın

Puanınız

Her puanı okuyoruz. Yorum, ancak biz onayladıktan sonra burada görünür.

← Bloga dön