Я собрал бота, который превращает голосовые в посты. Я залатал в нём четыре дыры в воронке — и только потом понял, что люди до них не доходят

Сразу отвечу на вопрос, который появится к третьей строке: нет, это не обёртка над GPT-4o с кнопкой «сделай красиво». Внутри — распознавание с чисткой уличного шума, контур, который сверяет цифры текста с диктовкой и источниками, а чужие отправляет на точечную правку или в пометку "проверить цифру", и одиннадцать режимов: от треда для X до съёмочного сценария рилса с предсъёмочной проверкой. Делал я его для всех, кто превращает речь в текст: от соло-автора на две тысячи подписчиков до агентства, которое переваривает пачки голосовых от клиентов. Именно для таких делал. Получилось ли — честно ответит финал.

Дальше не история успеха. Бот вышел в люди недавно и денег пока не принёс вообще. Дальше пять серий о том, как я ломал его сам и где люди уходят на самом деле. Нытья не будет: поворот есть в каждой.

Серия 1. Скидка, которая врала цифрой

В меню бота жила строка: «Персональная скидка 50%, доступно ещё 48 часов». Число 48 стояло в конфиге. Оно не считалось. Человек, у которого осталось два часа, видел «48» и спокойно планировал на неделю. Я узнал об этом из скриншота в поддержке, а не из метрик: метрики не краснеют.

Вторая половина мины сидела глубже: окно скидки стартовало с регистрации. К моменту, когда у человека кончался бесплатный лимит, скидка была уже мертва. В момент максимальной боли продукт показывал сухую строку «купи тариф». Без кнопок, без крючка, без таймера рядом. Боль была — скидки рядом с ней не было.

Я переставил старт окна на момент исчерпания лимита и сделал отсчёт честным, по часам. Скидка перестала быть украшением витрины и начала приходить туда, где человеку нужно решение.

• Скидка — это не процент. Это таймер, который должен тикать рядом с болью. Включённый в момент регистрации, он тикает в пустоту.

Серия 2. Витрина, за которой стояла стена

Раньше на пейволле бот говорил: «Кончились обработки? Покрути колесо!» — и давал кнопку «Premium бесплатно». Выглядело заботой. Было ловушкой, которую я построил сам: колесо к тому моменту было закрыто для всех, кто ни разу не платил, — я закрыл его, чтобы бесплатные не фармили обработки без покупки.

То есть в момент, когда человек готов был что-то сделать, продукт отправлял его к двери с табличкой «вход только для плативших». Нажатие — и alert «доступно после покупки». Лицо человека я не видел, но логи показали всё: с этого экрана не возвращались.

Теперь на пейволле другой экран. Сначала цифры самого человека: сколько обработок за ним, сколько времени сэкономлено по моей оценке, сколько записей лежит в его памяти — и что всё это сохранено, ничего не сгорит. Потом цена через цену поста: 99 звёзд за 30 обработок, три звезды за пост. Потом кнопка покупки в один тап. И рядом маленький пакет: 8 обработок за 19 звёзд. Да, в пересчёте на обработку пакет выходит дешевле тарифа — специально: это пропуск без абонемента. Обработки даёт, но архив памяти, стиль и месячная квота остаются бесплатными. Тариф — это дом, пакет — переночевать.

Худшее, что можно сделать в момент боли, — предложить дверь, за которой стена. Лучше показать человеку, сколько он уже накопил внутри продукта: терять накопленное тошно. Это честнее любой скидки и работает дольше.

Серия 3. Дыра, которую я закрыл раньше, чем она сработала

Для возвращения уснувших я сделал промокоды: «держи 10 обработок, доделай своё». Звучало как забота. Считалось как дыра: код копируется в чат, альт активирует его, десять бонусных обработок уходят в месячный квест «10 обработок — дни Premium» и в квалификацию рефералки. Машина, которая конвертирует мою щедрость в премиум-дни мимо кассы.

Честно: реальных фермеров я не видел. Дыру я нашёл рассуждением, а не потерями — и закрыл до того, как кто-то успел ею воспользоваться. Дешевле ли это, чем закрыть после потерь? Да. Но настоящий урок другой:

бонус и квота обязаны жить в разных счётчиках, иначе твоя щедрость становится чьей-то зарплатой.

С добрым утром

Серия 4. Слово «бесплатный», сказанное без меня

Я носил бота по чатам копирайтеров и выучил правило: сообщение-энциклопедия читается как реклама, три строки собственного опыта — как рекомендация. Работало. Пока в одной болталке бота не порекомендовали словом «бесплатный». Не я. Чужой добрый человек.

Слово прилипло. Люди приходили за бесплатным навсегда, упирались в пейволл на четвёртой обработке и чувствовали себя обманутыми — хотя я обещал ровно три бесплатные обработки и одну первую сверху, и нигде ни слова про «навсегда».

Теперь в любой рассылке цена говорится раньше, чем её спросят: три обработки бесплатно, дальше пакет или тариф. Конвертирует ли честный пейволл лучше преданного ожидания — проверю, когда появится чем мерить. Пока это гипотеза, а не результат.

Чужое слово «бесплатный» о твоём продукте — кредит под бешеный процент. Тело кредита достаётся тому, кто порекомендовал, проценты — тебе.

Серия 5. Поворот: я чинил не там

Цифры за всё время жизни бота. Пришло 54 человека. Надиктовали 71 голосовое — полторы обработки на человека. Бесплатный лимит — четыре обработки. До стены дошли десять. Заплатили ноль.

Все четыре серии выше — про стену. Но до неё не дошли 44 человека из 54: они ушли между /start и первой диктовкой или сразу после неё. Полторы обработки на человека — это не «плохой пейволл». Это продукт, который не дал ценности даже в бесплатном режиме.

• Месяц я ремонтировал второй этаж дома, в котором сломана лестница. Таймер скидки у стены, экран накоплений, пакет для первого «да» — всё это встречает человека, который уже остался. А человек не остаётся.

Где именно он отваливается — в онбординге, в демо, на первом результате, на водяном знаке — я пока не знаю. На следующей неделе полезу в логи за этим ответом. Следующий пост будет либо «я нашёл где», либо «я закрыл проект». Оба варианта засчитываются.

Воронка не прощает фокуса не на том конце: стену можно отполировать до блеска, пока люди просто не доходят до неё.

Финал сезона: на чём это стоит

Экономика простая и злая: оплата звёздами Telegram, тарифы от 99 до 2499, рассрочка четырьмя частями для тех, кому разом тяжело. Колесо дня осталось, но только для плативших: семь спинов в месяц, призы — обработки и дни Premium, редчайший сектор на 30 дней выпадает с шансом 0,1%, его матожидание — 0,03 дня на спин. Это математика удержания, а не казино: разорить ею нельзя ни меня, ни игрока.

Приоритетная очередь под нагрузкой не проверена — написана. Этот пост — её первый тест. «Сэкономленное время» в меню — моя оценка (20 минут на обработку), а не замер, и я подписываю её как оценку, чтобы не повторять грех серии 1.

И про метрику, которая врала: база показывала конверсию 1,9% — один «платящий». Это реферальный бонус: флаг «начислен Premium» и флаг «заплатил» оказались одним флагом. Сегодня развожу их по разным флагам и таблице платежей, чтобы метрика больше не льстила. Так что конверсия — ноль, и этот ноль — самая честная цифра поста.

Главный вывод сезона в одну строку: продукт редко умирает от сложных задач. Он умирает от маленьких врак — неверной цифры в строке, не той кнопки в момент боли, чужого слова, которое не поправил, и своей метрики, которую не проверил.

Потыкать руками: @AudioToPostBot, три обработки бесплатные, первая сверху. Если после поста придёт толпа — очередь либо выдержит, либо нет: первый тест, я предупредил.

В комментариях отвечу всем, кроме «зачем это, если есть ChatGPT». Этому отвечу сразу здесь: ChatGPT с голосом тоже слышит. Он не хранит архив твоих диктовок с поиском, не превращает одно голосовое в пост, выжимку и сценарий рилса с предсъёмочной проверкой и не сверяет цифры текста с источниками. Это не "лучше, чем ChatGPT". Это другая работа.

33
11