Продукт

Собрал SaaS-мониторинг сайтов: движок проверок, биллинг и статус-страницы

Собственный продукт SaaS с подписками Запущен, работает
Главная страница сервиса мониторинга Acme Pulse
AТочка А

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

БТочка Б

Собрал сервис вокруг подрядчика, а не вокруг владельца сайта: статус-страница на домене клиента с понятными ему названиями сервисов, месячный отчёт по аптайму, уходящий клиенту сам, история инцидентов как доказательство. Восемь типов проверок – от аптайма и ключевого слова до RDAP-запроса о сроке домена и heartbeat для ночных задач. Отдельно – механика достоверности: подтверждение сбоя повторной проверкой, самоконтроль связности и удержание алертов при массовом падении. Бесплатный план на 10 мониторов с разрешённым коммерческим использованием.

Что было

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

Вторая деталь: бесплатные планы конкурентов запрещают коммерческое использование. То есть запрещают ровно то, ради чего их берут. На практике это означает, что часть рынка тихо нарушает условия и ждёт, когда это заметят.

Что сделали

Продукт спроектирован вокруг подрядчика. Статус-страница выносится на домен клиента, сервисы на ней называются словами клиента – «Оплата», а не prod-lb-03. Отчёт по аптайму уходит клиенту первого числа сам. Инциденты хранятся с причиной и длительностью и работают как доказательство, а не как воспоминание.

Проверок восемь, и каждая отвечает на свой вопрос. Аптайм ловит недоступность. Проверка по ключевому слову – случай, который аптайм пропускает: страница отдаёт 200 OK и показывает ошибку базы. SSL-проверка открывает TLS-соединение и читает сам сертификат: срок, цепочку, соответствие имени. Срок домена спрашивается у реестра напрямую по RDAP с откатом на WHOIS. DNS-проверка ловит и кривую миграцию, и угон домена. Плюс TCP-порт, ping и heartbeat – для ночных задач, у которых нет публичного адреса.

Отдельная работа – сделать так, чтобы алертам можно было верить. Одна неудача не поднимает тревогу: проверка повторяется через тридцать секунд. Перед тем как поверить в сбой, сервис проверяет собственную связность по эталонным хостам. И если одновременно падает больше трети всего, что он наблюдает, – считает виноватым себя: держит алерты и будит собственных операторов. Мониторинг, который будит зря, перестают читать через неделю.

Как устроено технически

WordPress используется как платформа, но продукт – это четыре собственных плагина и тема. Ядро: движок проверок, диспетчер, машина состояний с подтверждением сбоя, инциденты, watchdog самоконтроля, агрегатор статистики, статус-страницы, серверная проверка лимитов, шифрование, очередь уведомлений, окна обслуживания и CLI. Отдельно – аккаунты с двухфакторной аутентификацией и REST API, биллинг на Paddle и слой доставки уведомлений в пять каналов.

Три решения, которые стоили дороже остальных.

Планировщик WordPress отключён намеренно. Он срабатывает только когда кто-то открыл сайт – такое расписание проспало бы любую ночную аварию. Проверки идут из системного крона раз в минуту.

Доступ к платному плану выдаётся только по подписанному вебхуку платёжного провайдера, никогда по редиректу после оплаты: до страницы «спасибо» можно дойти кнопкой «назад» в браузере. Вебхук обязан отвечать 401 на неподписанный запрос – 200 там означал бы, что любой желающий может выдать себе платный план.

Лимиты плана проверяются на сервере при каждом создании монитора, каждой смене интервала и каждом вызове API. Заблокированная кнопка в интерфейсе – вежливость, а не защита: то, что останавливает пользователя только в браузере, не останавливает никого.

Результат

Сервис работает и продаётся по подписке: от бесплатного плана на десять мониторов до пятисот мониторов с командой и SLA-отчётами. Бесплатный план разрешён к коммерческому использованию – им можно вести клиентские сайты, и это заявлено прямо.

Побочный, но не менее важный результат – открытая страница о боте: User-Agent, IP-адреса, инструкции по добавлению в исключения для Cloudflare, Nginx, Apache и Wordfence. Половина ложных срабатываний в мониторинге вообще – это фаервол, отвечающий проверяющему капчей.

Как сервис выглядит для пользователя – на странице Acme Pulse в экосистеме. Что и в каком порядке заводить на клиентском сайте – в отдельном разборе.

Другие кейсы

Все кейсы
CASE_01 · Продукт
Собрали платформу целевого нетворкинга с ИИ-профилированием личности
Открытая бета Собственная разработка ИИ-профилирование
Разбор целиком
AТочка А

У сообщества была проработанная методология: семь принципов Кодекса, словарь из 40+ терминов, анкета мировоззрения, форматы встреч и система ролей. Всё это жило в текстах и чатах. Совпадение взглядов участники искали вручную, договорённости о встречах терялись, а результат встречи нигде не фиксировался. Методология не масштабировалась дальше круга тех, кто её лично прочитал.

БТочка Б

Перевели методологию в доменную модель продукта: РМК стала анкетным движком с реакциями, совпадение взглядов – считаемой метрикой VFL, встреча – митинапом с целью и флэшсайтом на выходе, вклад участника – квентами, ТОКами и ролями. Сверху собрали ИИ-контур сигмейджа, который накапливает цифровой образ личности из ответов, заметок и материалов встреч. Платформа запущена в открытую бету с бесплатной регистрацией.

Результат
40+
Терминов методологии превращены в работающие сущности продукта
CASE_02 · EdTech · Воронки продаж
Школа программирования: запись на пробный урок с 15% до 38%
7 месяцев Дети 8–14 лет 2 400 регистраций
Разбор целиком
AТочка А

Трафика на сайт школы было достаточно, конверсия — низкая. Родители не понимали ценность продукта: программирование для ребёнка 8–14 лет — покупка не для себя, с длинным горизонтом и без быстрого измеримого результата. Реклама вела на страницу курса, где нужно было сразу записаться, — то есть принять решение о занятиях ребёнка за один визит.

БТочка Б

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

Результат стоимость лида −40%
×2,5
Запись на пробный урок: 15% → 38%
CASE_03 · EdTech · Воронки продаж
База подписчиков без продаж: конверсия в покупку с 2% до 9%
6 месяцев Личная эффективность 1 800 подписок
Разбор целиком
AТочка А

У коуча была база подписчиков и продукт — курс по управлению временем. Продаж почти не было: люди подписывались и не доходили до оплаты. Между «человек оставил контакт» и «человек платит» не происходило ничего, что дало бы ему основание заплатить.

БТочка Б

В разрыв поставили бесплатный мини-курс на семь дней: человек получает первый результат до того, как увидит платное предложение. Серия писем с заданиями и историями, Telegram-бот для автоматизации, предложение основного курса в конце недели — только участникам мини-курса, с бонусом в виде личной консультации.

Результат 36 → 162 оплаты, ROI рекламы ×3
×4,5
Конверсия из подписки в покупку: 2% → 9%

Если у вас есть бизнес – у нас есть, что обсудить.

Опишите в двух словах задачу – отвечу в течение 1 рабочего дня. Если совпадаем по подходу, назначим часовой созвон-разбор. Бесплатно.

Обсудить проект