Осенью 2026 года число регистраций в Mellow Hub выглядело здоровым, а доля подтверждений — ужасной. И то и другое врало по одной причине: большинство тех, кто регистрировался по почте, людьми не были. За 30 дней до 7 ноября до включения капчи пришло 760 регистраций по коду из письма, подтвердили 42. Ниже — как мы отличили ботов от людей, почему ждали и что изменил Cloudflare Turnstile 3 ноября.
С чего началось и чего хотели
6 октября мы собирались объявить главную дыру в воронке: из 142 регистраций по почте адрес подтвердили только 35. Прежде чем публиковать эту цифру, посмотрели, кто именно регистрировался, — и в тот же день забрали вывод назад. Из 140 регистраций по почте с 24 сентября, не считая команды, 106 были автоматическими.
С тех пор цель простая. Никогда не читать число регистраций или подтверждений, не отделив сначала ботов, и заранее решить, при какой цене от ботов ставить проверку перед живыми людьми.
Как мы отличали ботов от людей
Одного признака не хватало. Вместе они не оставляли сомнений.
- Сеть. Вход у нас работает на Supabase за Cloudflare, и в логах Supabase для каждого запроса хранится код страны от Cloudflare. У всех 106 стоял код
T1— так Cloudflare обозначает Tor. Позже появилась вторая серия: запросы «из Великобритании», от одного оператора с названием «Private Customer», 18 адресов и 19 user agent’ов, отправленные напрямую в API регистрации со старыми, выдуманными версиями браузеров. - Одинаковость. Серия из Tor шла с одним и тем же десктопным Chrome и локалью
en, ровно по 10–15 в день начиная с 26 сентября. - Адреса. Это были обычные почтовые адреса (Gmail, Yahoo, AOL, Comcast) настоящих людей, которым потом приходили наши письма со входом. Девять из них нажали на ссылку подтверждения, восемь стали аккаунтами. Это классический subscription bombing: нашей формой заваливали чужие почтовые ящики.
- Возвраты. Журнал писем с 22 сентября по 12 октября: 378 писем с кодом, 122 вернулись, 9 заблокированы, 1 жалоба на спам — около 32% возвратов. С 26 октября по 3 ноября: 264 отправлено, 166 вернулись (63%), 2 жалобы. Все вернувшиеся адреса разные, в основном Gmail с кучей цифр.
- Группа, про которую точно известно, что это люди. Те, кто пришёл из нашей платной рекламы в Meta, подтверждали в 87% случаев, 20 из 23, почти все во встроенном браузере Instagram или Facebook, 18 из них — вводя код.
- Для людей, задним числом. У настоящих регистраций в поле Cloudflare с организацией сети стояли домашние и мобильные операторы. VPN выдаёт себя хостинговой компанией или часовым поясом браузера, который отличается от пояса адреса на два часа и больше.
Что делали, по порядку
- 6 октября: любую цифру регистраций и подтверждений сначала делим по Tor. Вывод про «главную дыру» забрали.
- 11 октября: когда дали новым аккаунтам три бесплатных поста, привязали их к подключённой соцсети, а не к аккаунту Mellow. Одна соцсеть получает три поста за всю жизнь, под сколькими бы аккаунтами Mellow она ни была, так что ферма ботов ничего не выигрывает. (С 3 ноября новые аккаунты вместо этого начинают с пробного периода по карте.)
- 12 октября: перевели продуктовую почту на свой домен и обсуждали капчу. Наш основатель решил её не ставить: атаки на продукт пока нет, а проверка на входе только отсечёт живых людей. Записали, когда вернуться к вопросу: если почтовый сервис предупредит или доля возвратов уйдёт сильно выше 32%.
- 3 ноября: при 63% условие сработало. Около 05:40 UTC включили Cloudflare Turnstile. Веб-вход отправляет токен Turnstile, а Supabase с включённой защитой CAPTCHA не принимает регистрацию без действующего токена, поэтому прямые запросы британской серии тоже падают. Приложения для iPhone и Mac теперь ходят в Supabase через адрес на нашем домене, с лимитами на адрес и запретом Tor.
- 4 ноября: исправили собственную проблему капчи, о ней ниже.
- 7 ноября: во внутренней панели строки до капчи показываются отдельно, чтобы никто не принял 880 строк за 880 человек.
Результаты
- Первые девять часов с Turnstile: отправлено 4 письма с кодом, возвратов 0. За сутки до этого — 34 письма и 23 возврата.
- Первые 21 час: 5 писем, 0 возвратов; британская серия получила отказ трижды; попыток из Tor не было вовсе.
- До капчи к нам доходило около 35 запросов на регистрацию в день, и все от ботов: 14 из Tor через нашу страницу и 21 напрямую от британской серии.
- Строк в таблице регистраций стало не 30–54 в день, а около 3. Подтверждённых регистраций живых людей было 2–4 в день с 30 октября по 2 ноября и 6 — 3 ноября. Люди никуда не делись; делись боты.
- Каждое письмо с кодом с 3 по 7 ноября было доставлено.
- Картина за 30 дней на 7 ноября: около 160 живых людей (106 через Google, 10 через Apple, 45 с подтверждённым кодом из письма), 20–60 в неделю. Из 760 регистраций по коду до капчи подтвердили 42.
Что не сработало
- Наша первая цифра. Доля подтверждений без проверки, кто регистрируется, чуть не отправила нас чинить воронку, которая не была сломана.
- Капча спрятала собственное окошко. 3 ноября она отказала 2 из 2 живых людей, входивших по паролю. Если Cloudflare не узнаёт браузер, Turnstile показывает окошко «Подтвердите, что вы человек». По описанию самого Cloudflare, управляемый виджет выбирает между проверкой, которая ничего не требует от человека, и галочкой — по степени риска посетителя. У нас оно оказалось под карточкой входа, вне поля зрения, и через 45 секунд запрос уходил без токена. 4 ноября мы сделали так, чтобы окошко само прокручивалось в поле зрения, увеличили ожидание до пяти минут, включили автоматический повтор и начали записывать каждый исход: показано, пройдено, истекло время, ошибка. Проходят ли теперь окошко браузеры незнакомых людей, должны показать эти записи; по нашим последним заметкам это ещё не доказано.
- Новое слепое пятно. Регистрации из приложений теперь идут через наш сервер, и логи авторизации показывают его местоположение, а не человека. Страну приходится брать из наших собственных событий.
- График выглядит как обвал. Строк регистраций за ночь стало примерно на 90% меньше. Если не показывать ботов отдельно, это читается как катастрофа. Настоящее падение посетителей случилось раньше, 31 октября, и по другой причине: ChatGPT перестал ссылаться на одну из наших страниц.

Примерно через час после капчи, тем же утром, Hub начал просить у новых аккаунтов пробный период по карте. Это меняет то, что происходит после регистрации, а не то, кто регистрируется, — поэтому сравнение выше построено только на данных регистраций и писем.
Как повторить
- Прежде чем смотреть на долю регистраций или подтверждений, разделите их по сети: сначала Tor (
T1в поле страны у Cloudflare) и хостинги. - Каждую неделю следите за долей возвратов писем с подтверждением. Это самый ранний признак того, что домен-отправитель в опасности.
- Держите группу, про которую точно известно, что это люди (подойдут платные посетители во встроенном браузере), и сравнивайте с ней.
- Привязывайте всё бесплатное к тому, что боту дорого создать, например к подключённой соцсети.
- Заранее запишите цифру, при которой поставите капчу.
- Ставя её, закройте и чёрный ход: прямые запросы к API авторизации тоже должны требовать токен, а приложения пусть ходят через ваш домен с лимитами на адрес.
- Сделайте проверку видимой: прокручивайте её в поле зрения, ждите минуты, а не секунды, повторяйте автоматически и записывайте каждый исход.
- Пересчитайте прошлое с ботами отдельно, иначе графики покажут обвал, которого не было.
Цифры коротко
| Что | Сколько | Когда |
|---|---|---|
| Автоматических регистраций по почте | 106 из 140 | 24.09–6.10.2026 |
| Регистраций по коду до капчи / подтвердили | 760 / 42 | 30 дней до 7.11.2026 |
| Доля вернувшихся писем с кодом | 32% → 63% | 22.09–12.10 → 26.10–3.11.2026 |
| Подтверждения у людей из рекламы | 87% (20 из 23) | замер 6.10.2026 |
| Письма и возвраты: сутки до / 9 часов после | 34 и 23 / 4 и 0 | 3.11.2026 |
| Живых людей за 30 дней | около 160 | до 7.11.2026 |



