Коротке порівняння
Ціни й ліміти — як їх опублікували самі сервіси станом на 05.10.2026. Ціни вказано в доларах США.
| Cloudflare Turnstile | Google reCAPTCHA | hCaptcha | |
|---|---|---|---|
| Безкоштовно | Необмежено перевірок, до 20 віджетів | До 10 000 оцінок на місяць (Essentials) | Тариф Basic безкоштовний |
| Платно | Лише Enterprise | Premium: $8 фіксовано за 10 001–100 000, далі $1 за 1000 | Pro: $99 на місяць за рік або $139 помісячно, 100 тис. перевірок включено |
| Що бачить відвідувач | Режими Managed, Non-Interactive або Invisible | v2: галочка або невидима; v3: без завдань | Галочка й завдання з картинками; пасивний режим на платних тарифах |
| Оцінка ризику | Ні, лише «пройшов / не пройшов» | Так, у v3 оцінка від 0.0 до 1.0 | На тарифі Enterprise |
| Кому підходить | Більшості форм | Сайтам, які вже на Google Cloud | Тим, хто хоче альтернативу Google із картинками |
Жоден із них не є повним фільтром спаму. Люди, які пишуть спам вручну, проходять усі три. Поєднуйте будь-який із них із полем-пасткою та правилами на сервері, як описано в документації для HTML.
Cloudflare Turnstile
Turnstile запускає в браузері невеликі перевірки й у більшості випадків вирішує без завдань. Є три режими: Managed, Non-Interactive та Invisible. Безкоштовний тариф включає до 20 віджетів, необмежену кількість перевірок і 10 доменів на віджет. Переносити сайт на Cloudflare для цього не потрібно.
Cloudflare заявляє, що Turnstile не отримує, не зберігає й не передає вміст форм, а віджет відповідає WCAG 2.2 AA. Кожен токен діє 300 секунд і перевіряється лише раз. Повторна перевірка того самого токена повертає помилку timeout-or-duplicate.
Слабші місця: немає оцінки ризику, яку можна налаштувати, а аналітика на безкоштовному тарифі охоплює сім днів.
Google reCAPTCHA
reCAPTCHA тепер частина Google Cloud із рівнями Essentials, Premium і Enterprise. Essentials безкоштовний до 10 000 оцінок на місяць для однієї організації. Далі Premium коштує $8 фіксовано до 100 000, потім $1 за кожну 1000.
Версія 3 ніколи не показує завдань. Вона повертає оцінку від 0.0 до 1.0, а Google радить почати з порогу 0.5. Що робити з низькими оцінками, вирішуєте ви. Токен діє дві хвилини, тож людині, яка довго пише повідомлення, може знадобитися новий.
Дві практичні деталі. Google просить показувати значок reCAPTCHA або рядок про те, що сайт захищено reCAPTCHA, з посиланнями на умови Google. А скрипт завантажується з серверів Google, тож це варто згадати в політиці конфіденційності.
hCaptcha
hCaptcha працює дуже схоже на галочку reCAPTCHA v2, і в її власному посібнику з переходу лише кілька змін. Тариф Basic безкоштовний. Pro коштує $139 на місяць при помісячній оплаті або $99 на місяць при оплаті за рік. У нього включено 100 000 перевірок, далі $0.99 за 1000. Pro додає пасивний режим з мінімумом завдань, а Enterprise — оцінку ризику.
На безкоштовному тарифі відвідувачі частіше бачать завдання з картинками, ніж із Turnstile. Це коштує частини справжніх заявок, особливо з телефонів. hCaptcha заявляє, що відповідає GDPR, CCPA та іншим законам про приватність. Подробиці, важливі саме вам, шукайте в її політиці конфіденційності.
Завжди перевіряйте токен на сервері
Усі три віджети кладуть токен у приховане поле форми. Сам по собі токен нічого не доводить. Сервер має надіслати його сервісу й отримати успішну відповідь. Форма, яка лише показує віджет, не захищена: бот може надіслати дані прямо на ваш сервер, оминаючи сторінку.
Приклад нижче перевіряє токен Turnstile у Cloudflare Worker. reCAPTCHA та hCaptcha працюють так само, лише зі своїми адресами перевірки й секретами.
// Cloudflare Worker (або будь-який сервер із fetch), який приймає форму.
export default {
async fetch(request, env) {
const form = await request.formData();
const check = new FormData();
check.append("secret", env.TURNSTILE_SECRET_KEY); // секрет зберігайте лише на сервері
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());
// Токен працює один раз і діє 300 секунд.
if (!result.success) return new Response("Спробуйте ще раз.", { status: 403 });
// Перевірку пройдено: збережіть форму або передайте її далі.
return new Response("Дякуємо, ми отримали ваше повідомлення.");
},
};Код віджета для кожного сервісу
<!-- Cloudflare Turnstile: додає поле cf-turnstile-response --> <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 з галочкою: додає поле g-recaptcha-response --> <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 --> <script src="https://js.hcaptcha.com/1/api.js" async defer></script> <div class="h-captcha" data-sitekey="YOUR_HCAPTCHA_SITE_KEY"></div>
Типові помилки
- Секретний ключ у коді сторінки. Публічним має бути лише site key.
- Перевірка токена в браузері замість сервера.
- Подвійна перевірка того самого токена, наприклад під час повтору. Turnstile відхилить другу.
- Забутий другий домен, наприклад тестовий, у списку доменів віджета.
- Складне завдання на кожному візиті. Якщо спаму мало, поля-пастки може вистачити.
Якщо після додавання капчі форма раптом перестала доставляти заявки, часто винна саме перевірка токена. Знайти причину допоможуть кроки зі статті чому форма на сайті не надсилає листи.
Що з цього працює з Formgong
Formgong сам перевіряє Cloudflare Turnstile на сервері. Увімкніть Вимагати Cloudflare Turnstile у налаштуваннях форми й вкажіть там свої site key і secret від Turnstile. Потім додайте віджет у форму, і Formgong перевірятиме токен у кожній заявці. Це працює й на безкоштовному тарифі.
Токени reCAPTCHA та hCaptcha Formgong не перевіряє. Якщо ваша форма використовує одну з них, Formgong збереже токен як звичайне поле й покладеться на власні перевірки: поле-пастку, час заповнення й вміст. Про захист даних читайте в статті як обрати бекенд для форм під GDPR. Ця стаття не є юридичною консультацією.
Питання та відповіді
Чи справді Cloudflare Turnstile безкоштовний?
Так. Станом на 05.10.2026 безкоштовний тариф включає необмежену кількість перевірок і до 20 віджетів. Інші сервіси Cloudflare для цього не потрібні.
Чи reCAPTCHA досі безкоштовна?
До 10 000 оцінок на місяць на організацію на рівні Essentials. Понад це Google бере оплату за рівнем Premium.
Чи легко перейти з reCAPTCHA на hCaptcha або Turnstile?
Зазвичай так. Замініть скрипт і віджет, а на сервері — назву поля, адресу перевірки й секрет. hCaptcha має короткий посібник із переходу з reCAPTCHA.
Чи потрібна капча у формі зворотного зв'язку взагалі?
Спершу часто ні. Поле-пастка, мінімальний час заповнення й правила на сервері зупиняють більшість ботів. Додайте Turnstile, коли боти почнуть проходити.
Джерела та документація
Офіційні джерела для цієї інструкції: 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. Formgong для HTML, де зберігаються дані.
Завантажити текст статті (Markdown)Читайте також
- Заявки з форми Lovable на пошту й у Telegram
- Контактна HTML-форма без бекенду: готовий приклад
- Як отримувати заявки з форми сайту в Telegram
- Форма не надсилає листи: як знайти причину
- Як вести ліди із сайту в Telegram без CRM
- Бекенд для форм із AI-білдерів: Lovable, Bolt, v0, Cursor
- Telegram-бот для форми сайту: писати свій чи ні?
- Сервіс форм і GDPR: 7 пунктів перед вибором
- Форма mailto чи бекенд для форм: що обрати
- HTML-форма в Google Таблиці: 2 безкоштовні шляхи
- Ліміт форм Webflow: що робити після 50 заявок
- Contact Form 7 і Elementor: заявки в Telegram
- Форма Squarespace не надсилає листи?
- Контактна форма Shopify: куди йдуть листи?
- Google Форма в Telegram: безкоштовний спосіб
- Форма Wix не надсилає листи? Рішення
- Альтернативи Formspree з даними в ЄС / GDPR
- Форми, що нічого не надсилають: перевірка 793 AI-сайтів