Как собрать SMM-машину на n8n и LLM: реальный кейс 60 постов в месяц за $5

4 июня 2026 г. · 15 мин чтения · Максим Космов

Как собрать SMM-машину на n8n и LLM: реальный кейс 60 постов в месяц за $5
Содержание

TL;DR

Полгода назад картина выглядела так: пять Telegram-каналов и хроническое чувство вины. Каждый день нужно выкатывать по два поста в каждом, итого десять постов в сутки. Кто-то пишет руками, иногда забывает, иногда лепит халтуру в час ночи, иногда молчит по три дня и теряет подписчиков. Если автор не SMM-щик, а разработчик, тратить на ленту по полтора часа в день нелогично.

Решение: автоматическая SMM-машина на n8n. План контента лежит в Google Sheets, n8n каждый день в 9:00 забирает оттуда тему, отправляет её в LLM через HTTP Request ноду, получает готовый пост и публикует его в нужный Telegram-канал через Telegram-ноду. Систему не трогают руками, только раз в месяц садятся и расписывают план на 30 дней.

Цифры: 60 постов в месяц, расход $5 на API, время на ведение каналов упало с 30 часов в месяц до примерно двух часов на план. Качество текстов на глаз неотличимо от ручного режима, потому что промпт настроен под голос автора и тематику каждого канала.

В тексте дальше будет: зачем вообще автоматизировать SMM, какая архитектура у этой машины, как готовится план в Google Sheets, как устроен n8n workflow, какие промпты работают для LLM, на какие подводные камни приходится наступать и какие реальные результаты вышли за три месяца работы системы.

Зачем автоматизировать SMM, если можно нанять копирайтера

Считай три раза, каждый раз получается одно и то же. Копирайтер на пять Telegram-каналов и 60 постов в месяц стоит в районе 30-50 тысяч рублей. Это адекватный ценник, торговаться смысла нет, труд понятный. Но если каналы нишевые, про разработку, AI-инструменты и автоматизацию, копирайтер либо не разбирается в теме, либо разбирается, но стоит уже как сеньор-разраб.

Второй вариант, писать самому. Можно пробовать три месяца. Реальные затраты времени получаются 25-30 часов в месяц, если писать вдумчиво. Это половина рабочей недели, выброшенная на тексты, которые не приносят прямой выручки. Косвенно приносят, через подписчиков и лояльность, но это длинная история.

Третий вариант, не вести каналы. Тоже работающий эксперимент. За месяц молчания теряется 5-10% подписчиков, лента в Telegram быстро вымывает мёртвые каналы из топа выдачи внутри тематики. Это не катастрофа, но обидно.

Автоматизация, четвёртый путь. Платишь за инфраструктуру (n8n на своём сервере, LLM API, Telegram-бот, всё это копейки) и за час времени в месяц на план. Качество ниже личного потолка, но выше ленивого среднего того же автора. Это рабочий компромисс.

Архитектура: четыре ноды, ничего лишнего

Вся машина живёт в одном n8n workflow. Специально не дробится на микросервисы, потому что задача простая и поддержка важнее красоты. Четыре ноды, связанные линейно.

Первая нода, Schedule Trigger. Срабатывает каждый день в 9:00 по нужному часовому поясу. Время выбрано именно это, потому что замер активности аудитории через TGStat показал утренний пик с 9 до 11 утра.

Вторая нода, Google Sheets. Читает строку из таблицы плана, где сегодняшняя дата совпадает с колонкой date. В строке лежат поля: канал, тема, формат, ключевые тезисы, длина. Если на сегодня запланировано два поста (обычно так и есть), нода возвращает две строки, и дальше workflow выполняется для каждой.

Третья нода, HTTP Request к LLM. В этом кейсе используется Claude Haiku через Anthropic API, потому что по соотношению цена-качество это лучший вариант для коротких текстов. Промпт собирается из шаблона канала и данных из Sheets-строки. На выходе получается готовый пост в нужном формате.

Четвёртая нода, Telegram. Отправляет сообщение в нужный канал по chat_id, который тоже лежит в строке плана. Если в посте есть картинка (поле image_url в Sheets), бот сначала отправляет фото с подписью, иначе просто текст.

Между нодами есть две вспомогательные. После LLM стоит Code-нода, которая чистит ответ от лишнего: иногда модель добавляет вступление вроде «вот ваш пост», и оно вырезается регуляркой. Перед Telegram стоит проверка длины, если текст вышел длиннее 4096 символов (лимит Telegram), workflow падает с понятной ошибкой, приходит уведомление, и руками сокращают в Sheets.

Google Sheets: как устроен план на месяц

Это самая важная часть. Эксперименты с форматом плана шли долго, и финальная версия выглядит так. Колонки: date, channel, topic, format, key_points, length, image_url, published.

Поле topic, это то место, где задаётся конкретика. Стало понятно на третьей итерации: размытые темы дают размытые тексты. «Пиши про AI», это плохая тема. LLM сгенерирует общие слова про нейросети, и текст будет звучать как все остальные тексты про AI в интернете.

Хорошая тема выглядит так: «Разбери паттерн RAG для новичков. Что такое retrieval, что такое augmented generation, зачем эти два слова вместе. Дай пример: поиск по корпоративной базе знаний. Объясни, почему обычный поиск не работает для длинных документов. Покажи минимальную схему: vector DB плюс embedding model плюс LLM».

Такая тема занимает 5-7 строк, и на её формулировку уходит 2-3 минуты. Но результат стабильно хороший: LLM знает, что нужно сделать, не уходит в общие места, не выдумывает.

Поле format, это краткая инструкция по структуре. Шесть форматов в обойме: «разбор», «новость», «личный опыт», «вопрос к аудитории», «инструмент дня», «миф vs факт». Каждый формат это просто строка вроде breakdown, а на стороне промпта подгружается соответствующий шаблон.

Поле key_points, 3-5 буллетов с тезисами, которые точно должны прозвучать. Это страховка от того, что LLM забудет важное.

Поле length, желаемая длина в знаках. Три пресета: 500, 1000, 2000. Это даёт ритм ленте: не все посты одинаковой длины, что снижает ощущение конвейера.

n8n workflow: детали и ловушки

Schedule Trigger настраивается через cron-выражение «0 9, каждый день». В n8n можно задать визуально через выпадашки, но cron предпочтительнее, потому что в одном поле сразу видна вся логика. Если нужно добавить вечерний публикатор в 19:00, добавляется второй триггер с такой же маской на 19 часов.

Google Sheets нода работает в режиме lookup row, фильтрует по сегодняшней дате через выражение {{ $now.format('yyyy-MM-dd') }}. Даты в Sheets хранятся в формате ISO, это надёжнее, чем локальные форматы вроде 29.05.2026.

HTTP Request к LLM, самая хрупкая часть. Там настроен retry: 3 попытки с экспоненциальным бэкоффом, если API возвращает 429 (rate limit) или 5xx. На практике падений почти не было, но один раз Anthropic лежал три часа, и потерян был один день постов. Теперь в плане есть резервная LLM (OpenAI gpt-4o-mini), на которую workflow переключается, если основной API не отвечает после третьей попытки.

Telegram-нода требует токен бота и chat_id канала. Бот добавлен администратором в каждый из пяти каналов с правом постинга. Один токен на всё, разные chat_id для разных каналов.

Логирование сделано через ещё одну Google Sheets ноду в конце workflow. Она дописывает строку в лист logs: дата, канал, тема, длина результата, статус. Если что-то идёт не так, открываешь лог и видишь, где сломалось.

LLM промпты: как добиться своего голоса

Это место, где большинство проектов с автогенерацией постов сыпется. Дефолтный промпт «напиши пост в Telegram про X» даёт типичный ИИ-текст: вступление с риторическим вопросом, три буллета, призыв к действию в конце. Узнаваемо за версту.

Промпт состоит из четырёх блоков. Первый, роль и контекст канала. Модели даётся описание канала на 5-7 строк: про что пишут, кто читает, какой тон, какие слова не используются. Например, для одного из каналов запрещены слова «эффективный», «решение», «продуктивность» и любые корпоративные клише.

Второй блок, примеры. Берут 10 лучших постов автора и кладут их в промпт как few-shot examples. Это даёт модели представление о ритме, длине предложений, способе шутить. На few-shot уходит примерно 2000 токенов входа, но качество выхода кратно лучше.

Третий блок, задача. Сюда подставляются данные из Sheets: тема, формат, ключевые тезисы, длина. Явно прописано «не используй вступления вроде вот ваш пост, начинай сразу с содержания».

Четвёртый блок, стоп-листы. Запрещённые слова, запрещённые конструкции, запрет на эмодзи в начале и середине (только в конце, если уместно). Запрет на длинное тире, потому что автор его не использует и это палит автогенерацию.

Стоимость одного запроса на Claude Haiku: вход около 2500 токенов (промпт плюс примеры), выход около 500 токенов. Это $0.0025 на запрос. При 60 постах в месяц, $0.15. Округляют до $5/мес, потому что туда же входят тесты и переписывания.

Подводные камни, на которые приходится наступать

Тон голоса плывёт, если не следить. Первый месяц без few-shot примеров тексты были разные по тону: то деловые, то расслабленные, то технические. Подписчики писали в личку, что канал стал странный. Добавили примеры, и стиль выровнялся.

Факт-чекинг, отдельная боль. LLM иногда выдумывает цифры, особенно про новые модели и продукты. В промпт добавили строгое правило: «если не уверен в факте, не упоминай его, лучше пиши общими словами». Это снизило количество выдумок процентов на 80, но не до нуля. Раз в неделю автор выборочно проверяет посты глазами и правит руками в Sheets, если нашёл косяк. Сейчас правит один-два поста в месяц.

Антиспам Telegram, неожиданная проблема. Если бот постит ровно в одно и то же время с точностью до секунды, Telegram может срезать охваты. Добавлен рандомный джиттер 0-30 минут к Schedule Trigger через простую Code-ноду перед публикацией. Охваты вернулись в норму.

Одинаковые структуры постов, тоже маркер автогенерации. Замечено, что LLM любит структуру «тезис, три буллета, вывод». На пятом посте подряд это начинает выглядеть шаблонно. Решилось через расширение списка форматов в Sheets: теперь шесть разных шаблонов, и они чередуются.

Уведомления о падениях настроены через тот же Telegram-бот в личный чат. Если workflow упал, сообщение приходит в течение минуты, дальше идёшь чинить. За три месяца было четыре падения: один раз лежал Anthropic, один раз сломали руками промпт после правки, один раз Google Sheets API вернул 503, один раз кончился баланс на Anthropic из-за тестов.

Результаты за три месяца работы

Опубликовано 178 постов через автоматику (из плановых 180, два не вышли из-за падений Anthropic). Среднее время на пост со стороны человека, 90 секунд на формулировку темы в Sheets, не считая 15-минутной правки лога раз в неделю.

Денег потрачено: $14 на Anthropic API за три месяца, плюс n8n крутится на VPS за $5/мес, который и так был. Чистый расход на SMM, около $5/мес.

Время, сэкономленное относительно ручного режима, примерно 80 часов за три месяца. Это две полноценные рабочие недели, которые ушли на проекты с прямым доходом.

Подписчики на пяти каналах суммарно выросли на 12% за квартал. Это медленнее, чем когда автор лично писал ударные посты, но стабильнее. Раньше были всплески роста после двух-трёх хороших постов и провалы во время молчания. Теперь рост ровный.

Это не значит, что автогенерация заменяет хорошего автора. Это значит, что она убирает рутину и оставляет время на действительно важные тексты, которые пишутся руками и публикуются отдельно через тот же бот (там есть ручной режим, обходящий Sheets).

FAQ

Какую LLM выбрать? В кейсе остановились на Claude Haiku из-за цены и качества на коротких текстах. GPT-4o-mini тоже работает, чуть дешевле, чуть менее «человечный» голос. Llama 3 70B через Groq, бесплатно для разумных объёмов, но качество ниже. Для пяти каналов и $5/мес Haiku оптимален и не парит.

Можно ли без n8n? Можно. Есть люди, которые делают то же самое на чистом Python плюс cron. Преимущество n8n, визуальный workflow, который легко править без редактора кода, и встроенные интеграции с Telegram, Google Sheets и LLM-API. n8n удобнее, потому что правки в плане часто делают с телефона через мобильный n8n-клиент.

Что с авторским правом? Тексты, сгенерированные LLM, в большинстве юрисдикций не имеют чёткого статуса. Считать их «своими» в строгом смысле нельзя, но автор отвечает за то, что публикует, потому что составил план и отвечает перед подписчиками. На практике это не проблема: претензий на копирайт нет.

А подписчики не замечают, что это AI? За три месяца ни один человек не написал, что заметил автогенерацию. Скорее всего, потому что промпт настроен под голос автора, и тематика остаётся той же. Если переключить каналы на «общие AI-новости», то заметили бы сразу, такие тексты лезут отовсюду.

Можно ли продавать SMM-услуги клиентам на этой же машине? Технически, да, есть люди, которые так делают. Морально, лучше не стоит, потому что клиент платит за человеческое внимание, и автогенерация без его ведома это обман. С его ведома и за меньшую цену, почему нет.

📌 Dzen (~900 слов)

Как автоматизировать ведение пяти Telegram-каналов

Пять Telegram-каналов про разработку, AI и автоматизацию. На каждом нужно публиковать по два поста в день, итого десять постов в сутки или 300 в месяц. Если автор не SMM-щик, а разработчик, тратить на это полтора часа в день нелогично. Полгода назад была собрана автоматическая SMM-машина на n8n, и теперь систему не трогают руками: садятся раз в месяц, расписывают план на 30 дней, остальное делает машина.

Цифры по итогам трёх месяцев: 178 постов из 180 плановых, $14 на API Anthropic, около 80 часов сэкономленного времени относительно ручного режима. Подписчики на пяти каналах суммарно выросли на 12% за квартал, рост ровный, без провалов из-за молчания.

Архитектура из четырёх нод

Вся машина живёт в одном n8n workflow. Специально не дробится на микросервисы: задача простая, поддержка важнее красоты.

Первая нода, Schedule Trigger. Срабатывает каждый день в 9:00 по нужному часовому поясу, время выбрано из-за замера активности аудитории через TGStat. Утренний пик с 9 до 11.

Вторая нода, Google Sheets. Читает строку из плана, где сегодняшняя дата совпадает с колонкой date. В строке лежат поля: канал, тема, формат, ключевые тезисы, длина, ссылка на картинку, статус публикации.

Третья нода, HTTP Request к LLM. В кейсе используется Claude Haiku через Anthropic API, потому что по соотношению цена-качество это лучший вариант для коротких текстов. Промпт собирается из шаблона канала и данных из Sheets.

Четвёртая нода, Telegram. Отправляет сообщение в нужный канал по chat_id. Один бот, пять каналов, в каждом он администратор с правом постинга.

Между нодами стоит Code-нода, которая чистит ответ LLM от лишнего вступления вроде «вот ваш пост», и проверка длины перед Telegram: если текст вышел длиннее 4096 символов, workflow падает с уведомлением.

Google Sheets: главное, конкретика в плане

Эксперименты с форматом плана шли долго, и главное стало понятно на третьей итерации: размытые темы дают размытые тексты. «Пиши про AI», это плохая тема. LLM сгенерирует общие слова, и пост будет звучать как все остальные тексты про AI в интернете.

Хорошая тема выглядит так: «Разбери паттерн RAG для новичков. Что такое retrieval, что такое augmented generation. Дай пример: поиск по корпоративной базе знаний. Объясни, почему обычный поиск не работает для длинных документов. Покажи минимальную схему: vector DB плюс embedding model плюс LLM».

Такая тема занимает 5-7 строк, и на её формулировку уходит 2-3 минуты. Но LLM знает, что нужно сделать, не уходит в общие места, не выдумывает.

Поле format, это краткая инструкция по структуре. Шесть форматов: «разбор», «новость», «личный опыт», «вопрос к аудитории», «инструмент дня», «миф vs факт». Чередование форматов снижает ощущение конвейера в ленте.

Поле length, желаемая длина в знаках. Три пресета: 500, 1000, 2000. Это даёт ритм ленте, не все посты одинаковой длины.

Промпт для LLM: четыре блока

Дефолтный промпт «напиши пост в Telegram про X» даёт типичный AI-текст: риторический вопрос, три буллета, призыв к действию. Узнаваемо за версту.

Промпт состоит из четырёх блоков. Первый, роль и контекст канала: про что пишут, кто читает, какой тон, какие слова не используются. Для одного из каналов запрещены слова «эффективный», «решение», «продуктивность» и любые корпоративные клише.

Второй блок, примеры. Берут 10 лучших постов автора и кладут их в промпт как few-shot. На это уходит около 2000 токенов входа, но качество выхода кратно лучше.

Третий блок, задача с данными из Sheets: тема, формат, тезисы, длина. Явно прописано «не используй вступления, начинай сразу с содержания».

Четвёртый блок, стоп-листы: запрещённые слова, запрет на эмодзи в начале и середине, запрет на длинное тире, потому что автор его не использует и это палит автогенерацию.

Стоимость одного запроса: $0.0025. При 60 постах в месяц, $0.15. Округляют до $5 с учётом тестов.

Подводные камни

Тон голоса плывёт без примеров. Первый месяц без few-shot стиль скакал. Подписчики писали, что канал стал странный. Добавили примеры, выровнялось.

Факт-чекинг, отдельная боль. LLM выдумывает цифры. В промпт добавлено правило: «если не уверен в факте, не упоминай его». Это снизило количество выдумок процентов на 80. Раз в неделю автор выборочно проверяет и правит один-два поста в месяц.

Антиспам Telegram, неожиданная проблема. Если бот постит ровно в одно и то же время с точностью до секунды, охваты режутся. Добавлен рандомный джиттер 0-30 минут через Code-ноду перед публикацией. Охваты вернулись в норму.

Результаты за квартал

Опубликовано 178 постов через автоматику из плановых 180. Два не вышли из-за падения Anthropic в апреле. Среднее время на пост со стороны человека, 90 секунд на формулировку темы в Sheets, не считая 15-минутной правки лога раз в неделю.

Денег потрачено: $14 на Anthropic API за три месяца, плюс n8n крутится на VPS за $5/мес, который и так был. Чистый расход на SMM, около $5/мес.

Подписчики на пяти каналах суммарно выросли на 12% за квартал. Это медленнее, чем когда автор лично писал ударные посты, но стабильнее. Раньше были всплески роста после двух-трёх хороших постов и провалы во время молчания. Теперь рост ровный, без проседаний.

Время, сэкономленное относительно ручного режима, примерно 80 часов за три месяца. Это две полноценные рабочие недели, которые ушли на проекты с прямым доходом.

Что в итоге

Автогенерация не заменяет хорошего автора. Она убирает рутину и освобождает время на действительно важные тексты, которые пишутся руками и публикуются отдельно через тот же бот (там есть ручной режим, обходящий Sheets).

Это рабочий компромисс между «нанять копирайтера за 40К/мес» и «писать самому 30 часов в месяц». $5 в месяц на API и час времени на план, оптимум для нишевых каналов, где важно знание темы, а не количество постов.

Если решишь повторить, начни с одного канала и одного поста в день. Соберёшь рабочий промпт за пару недель, поймёшь, какие темы дают хороший выход, а какие плохой. Потом масштабируй на остальные каналы. Типичная ошибка: сразу запускают пять каналов и две недели чинят тон и факт-чекинг. Лучше отладить на одном.

📲 TG (600-900 символов)

SMM-машина на n8n: 5 Telegram-каналов, 60 постов в месяц, $5 на API, час времени на план.

Архитектура из четырёх нод: Schedule Trigger в 9:00, Google Sheets с планом (тема, формат, тезисы, длина), HTTP Request к Claude Haiku ($0.0025 за запрос), Telegram-нода с публикацией по chat_id. Между ними Code-нода для чистки ответа и проверка длины до 4096 символов.

Главное правило: размытые темы дают размытые тексты. Тема на 5-7 строк с тезисами и форматом даёт стабильный результат. Few-shot из 10 лучших постов автора в промпте держит голос.

Итог за квартал: 178 постов из 180, $14 расхода на API, плюс 12% подписчиков, минус 80 часов рутины.

Читайте дальше