Чтобы сделать email-подписку на сайте, нужны не только поле и кнопка. Рабочая цепочка состоит из формы с ясным согласием, серверной передачи адреса, письма подтверждения, записи статуса и доступной отписки. Проще всего подключить форму сервиса рассылок; собственную обработку стоит писать только тогда, когда вы готовы защищать данные и поддерживать доставку.
Какой результат должна давать подписка
После отправки формы человек ещё не должен бесследно попадать в рекламную базу. Безопасный сценарий показывает понятный статус, отправляет подтверждение на указанный адрес и начинает рассылку только после подтверждения. У каждого письма есть рабочий способ отказаться.
Карта результата состоит из семи состояний:
- Форма объясняет, какие письма и от кого придут.
- Человек отдельно выражает согласие и отправляет адрес.
- Сервер или сервис рассылок принимает данные, браузер не хранит секретный ключ.
- Страница просит проверить почту, но не утверждает, что подписка уже активна.
- Ссылка из письма переводит запись в подтверждённое состояние.
- Рассылка уходит только подтверждённым адресам.
- Ссылка отписки прекращает будущие отправки.
Критерий готовности: вы можете по одному тестовому адресу показать, когда согласие получено, когда адрес подтверждён и когда рассылка прекращена.
Сначала выберите способ реализации
Для небольшого сайта выбирайте встроенную форму сервиса рассылок: сервис даёт адрес обработчика, письмо подтверждения, список статусов и отписку. Например, официальный конструктор SendPulse описывает простую форму с double opt-in, где адрес добавляется после перехода по ссылке из автоматического письма (документация SendPulse). Mailchimp также описывает double opt-in как два шага: отправка формы и переход по уникальной ссылке подтверждения (документация Mailchimp).
Собственный обработчик выбирайте, если есть разработчик, серверная база, журнал состояний, защита от повторов и процесс удаления данных. Обычная форма заявки на сайте решает передачу сообщения, но ещё не создаёт корректный жизненный цикл подписчика.
- Нужно запуститься без серверной разработки: форма сервиса рассылок.
- Нужен единый кабинет клиентов и несколько типов согласий: серверная интеграция через API.
- Нужно только сообщить об успешном действии на странице: это уведомление интерфейса, а не подписка.
- Нужен платный доступ к материалам: это аккаунт, платежи и управление доступом, не email-рассылка.
Теория понятна, дальше нужен ваш сайт, а не пример из статьи. На бесплатном вебинаре страницу собирают с нуля и сразу публикуют в интернете.
Собрать свой сайтНапишите ясное согласие
Для российского оператора персональных данных актуальная редакция статьи 9 Федерального закона 152-ФЗ требует, чтобы согласие было конкретным, предметным, информированным, сознательным и однозначным, а также оформлялось отдельно от другой информации или документов. Статья 15 требует предварительного согласия для обработки персональных данных в целях прямого продвижения через средства связи и возлагает на оператора обязанность доказать его получение (актуальный текст Федерального закона 152-ФЗ).
Практически это означает: не прячьте рассылку внутри фразы «нажимая кнопку, вы соглашаетесь со всем». Поставьте отдельный непредвыбранный флажок, назовите отправителя и тип писем, дайте ссылку на текст согласия и политику обработки данных. Конкретную юридическую форму согласования и обязанность уведомления Роскомнадзора проверьте с профильным специалистом под вашу организацию и процесс.
По теме: Как сделать сайт цветов: каталог букетов и заказ
Соберите форму
Ниже показан каркас. Адрес /subscribe является условным: он должен вести на ваш серверный обработчик. Если вы используете сервис рассылок, вставьте его официальный код и не меняйте служебные поля наугад.
<form action="/subscribe" method="post">
<label for="email">Email для писем</label>
<input id="email" name="email" type="email"
autocomplete="email" required>
<label>
<input name="mailing-consent" type="checkbox" required>
Согласен получать письма о новых материалах от «Название».
</label>
<p><a href="/privacy/">Политика обработки данных</a></p>
<button type="submit">Подписаться</button>
</form>
Тип email помогает браузеру проверить базовый формат, но не доказывает, что адрес принадлежит отправителю формы. Это подтверждает письмо со ссылкой. Не просите имя, телефон и дату рождения, если рассылке достаточно email: каждое лишнее поле расширяет объём данных, который нужно защищать и обслуживать.
Один собранный сайт учит больше десяти инструкций, потому что ошибки видны сразу. На бесплатном эфире по вайбкодингу показывают, как описать идею словами и получить работающую страницу, а участникам достаётся гайд.
Собрать сайт с ИИПодключите подтверждение адреса
Double opt-in не следует выдавать за универсальную формулировку закона: приведённые статьи Федерального закона 152-ФЗ не называют этот термин. Это практический способ проверить доступ к адресу и сохранить отдельный статус подтверждения. Mailchimp указывает, что до перехода по ссылке контакт не добавляется как подписанный, а подтверждение создаёт второй проверяемый шаг.
- Создайте статус
pendingпосле отправки формы. - Отправьте одно служебное письмо с уникальной одноразовой ссылкой.
- После перехода смените статус на
subscribedи покажите страницу успеха. - Не отправляйте рекламную серию записям
pending. - При отписке установите статус
unsubscribed, не возвращайте его автоматически при импорте старого списка.
В журнале полезно хранить версию текста согласия, источник формы, время отправки формы, время подтверждения и текущий статус. Это не готовая юридическая модель для любого бизнеса, а минимальная техническая трасса, по которой можно восстановить действия системы.
По теме: Как зарабатывать на создании сайтов с ИИ в 2026: направления и старт
Не помещайте ключ рассылки в браузер
Ключ API, который умеет добавлять контакты или отправлять письма, нельзя писать в HTML или script.js: посетитель может прочитать клиентский код. Форма должна отправлять данные на ваш сервер либо напрямую на официальный адрес формы сервиса, рассчитанный на публичное встраивание. При собственной интеграции ограничьте права ключа, храните его в серверной переменной окружения и настройте защиту от массовых повторных отправок. Общую границу рисков проверьте по чек-листу безопасного сайта.
Проверьте весь путь до рассылки
Проверочный чек-лист нужно пройти на отдельном адресе, а не только посмотреть форму:
- Отправьте пустую форму и неверный адрес: понятная ошибка должна появиться рядом с полем.
- Попробуйте отправить форму без флажка согласия: подписка не должна начаться.
- Укажите рабочий тестовый адрес: страница сообщает, что нужно проверить почту.
- Не переходите по ссылке и убедитесь, что рекламное письмо не приходит.
- Перейдите по ссылке один раз, затем повторно: второй переход не должен создавать дубль.
- Получите тестовую рассылку и нажмите отписку.
- После отписки отправьте следующую тестовую кампанию и убедитесь, что адрес исключён.
- Проверьте два одновременных отправления формы и защиту от ботов, не блокируя обычного человека непонятной ошибкой.
По теме: Как сделать ответы на сайте: FAQ без лишнего JavaScript
Диагностика по симптому
- Форма пишет «готово», письма нет: проверьте статус
pending, папку спама, адрес отправителя и журнал доставки. - Контакт сразу активен без подтверждения: включите double opt-in в настройках списка или исправьте переход статусов.
- Один адрес появился несколько раз: сделайте email уникальным ключом списка и обновляйте статус существующей записи.
- Отписка открывается, но письма продолжаются: проверьте, откуда кампания берёт получателей и не импортирует ли старый список заново.
- На сайт пришёл поток автоматических регистраций: добавьте ограничение частоты и защиту формы, но не заменяйте ими подтверждение адреса.
Частые вопросы
Можно сделать подписку без сервиса рассылок?
Можно, но понадобятся сервер, доставка писем, подтверждение, статусы, отписка, защита данных и мониторинг ошибок. Для первой версии сервис обычно безопаснее и быстрее.
Обязательно ли подтверждать email второй раз?
Приведённые нормы Федерального закона 152-ФЗ не называют double opt-in отдельным обязательным термином. Подтверждение полезно как проверка владения адресом и дополнительное доказательство действия.
Можно заранее поставить галочку согласия?
Не используйте предвыбранный флажок. Действие должно быть отдельным и однозначным, а текст согласия нужно показать до отправки.
Что написать после отправки формы?
Сообщите, что письмо подтверждения отправлено, попросите проверить адрес и папку спама. Не пишите «вы подписаны», пока ссылка не подтверждена.
На воркшопе по сайтам с ИИ вы соберёте рабочую страницу и научитесь проводить действие посетителя от формы до проверяемого результата.
Записаться на воркшоп