Быстро поднимаем собственную платформу для email рассылок

Сегодня я расскажу о том, как быстро поднять собственную платформу для email-маркетинга и отправить 1 млн писем, которые попадут во входящие всего за 100 $.

Но, сначала маленький опрос.

Какой сервис для email рассылок вы сейчас используете?
MailChimp
GetResponse
Unisender
Sendpulse
Sendinblue
Mindbox
Sendbox
Mailigen
Sendsay
Mandrill
Mailgun
Amazon AWS
Собственный сервер
Другой
Не занимаемся email-маркетингом
Показать результаты
Переголосовать
Проголосовать

Не будем ходить вокруг и сразу перейдём к делу. Вы, конечно, слышали, а может быть и использовали Amazon AWS. Частью этого облака является очень удобный сервис рассылок: SES (Simple Email Service).

К слову, некоторые российские сервисы email рассылок по сути просто перепродают вам услуги Amazon SES.

Чем же Amazon SES так хорош

  • Стоимость. Всего 1 $ за 10 000 отправленных писем. Это без учёта трафика. Если вы отправляете тяжелые вложения, нужно ещё учесть расходы на трафик.
  • Письма можно отправлять как по API, так и через SMTP, что позволяет интегрировать SES с чем угодно (ваш сервис или приложение не обязаны при этом находится в облаке AWS).
  • Поддержка DKIM, SPF, MAIL FROM доменов, Feedback Forwarding и все такое прочее разумеется в наличии.
  • Уведомления по API о доставках, жалобах на спам и отказах.
  • Выделенный IP для вашего домена, если он вам нужен.
  • Отсутствие предварительной модерации ваших рассылок. Да, чтобы получить доступ к сервису, вам придётся писать тикет в саппорт, где попросят подробно рассказать о том, что и как вы планируете отправлять, но после того как вам выделят лимиты на отправку, больше никаких проверок того, что вы отправляете не будет (если показатели качества в аккаунте в порядке).
  • Есть возможность настроить в том числе и приём почты.
  • Amazon может предоставить вам просто огромные мощности на отправку. Я отправлял по 2 млн писем в час и это далеко не предел.

Итак, продано? Вы закономерно спросите почему же тогда маркетинг в большинстве компаний всё ещё сидит на MailChimp, UniSender, SendPulse и подобных сервисах.

У Amazon SES нет web-интерфейса для отправки писем. Как вы понимаете, это несколько усложняет процесс его использования, если вы не обладаете техническими навыками.

Но, как я уже писал, c SES можно работать как с обычным SMTP-сервером, если вы по какой-то причине не хотите работать по API. А значит, всё что нужно это какая-то платформа для email-маркетинга, которую вы можете поставить на свой хостинг и подключить её к SES.

Вариантов у вас довольно много. Вот основные:

  • Sendy. Стоит 59 $ единоразово. Разрабатывался специально для Amazon AWS, т.ч. умеет работать с SES по API, что намного быстрее SMTP. Крутится на стандартной связке из PHP + MySQL + Apache (на nginx тоже работает нормально).
  • MailWizz. Стоит 69 $ единоразово. Поддерживает только SMTP.
  • Если нужно что-то, что можно сильно кастомизировать под себя посмотрите на Mailtrain. Это бесплатный продукт с открытым исходным кодом. Поддерживает только SMTP. Крутится на Nodemailer, Node.js и MySQL. Первая версия давно не обновлялась, но вполне работоспособна. Вторая версия ещё в бете и уже почти стабильна. Из неожиданных приятностей – MJML-шаблоны.

Кроме этого, можно ещё посмотреть в сторону Dada Mail, NuevoMailer, MoonMail. Ещё есть Mautic, который представляет из себя скорее платформу для маркетинга, но и в части email-рассылок тоже сможет вас очень порадовать.

В этой статье я расскажу о Sendy. Проект активно развивается, у него приятный не перегруженный интерфейс, есть весь основной функционал, который удовлетворит 90% компаний в малом бизнесе и он умеет работать с Amazon SES по API.

Что же Sendy нам предлагает

Установка

Как и большинство из упомянутых выше платформ, Sendy в установке не сложнее, чем Wordpress. Всё, что вам нужно это хостинг на Apache с поддержкой PHP и БД MySQL. Можете сами его поднять на виртуальной машине в Amazon AWS, тогда у вас будут ежемесячно бесплатные 62 000 писем.

Просто закидываете файлы на хостинг, выставляете права доступа на папку uploads, чтобы вы могли загружать файлы, указываете лицензию, адрес и доступы к БД в файле includes/config.php и готово.

Ну почти готово. Ещё нужно добавить в cron скрипты, чтобы отправка по расписанию, double opt-in и импорт подписчиков из csv заработали. Вот так:

*/1 * * * * php /var/www/sendy/import-csv.php > /dev/null 2>&1 */1 * * * * php /var/www/sendy/autoresponders.php > /dev/null 2>&1 */5 * * * * php /var/www/sendy/scheduled.php > /dev/null 2>&1​

Где, вместо /var/www/sendy/ вам нужно указать путь до скрипта на вашем виртуальном хостинге или сервере.

Нужна ли пошаговая инструкция по настройке виртуальной машины с Sendy в облаке Amazon AWS?
Да.
Нет.​
Показать результаты
Переголосовать
Проголосовать

Бренды

Залогинившись вы попадаете на панельку управления брендами:

Каждый бренд - по сути отдельный аккаунт. У каждого бренда свои рассылки, списки подписчиков, blacklist и т.п. Если вы работаете только с одним брендом, то этот функционал удобно использовать для того, чтобы разделить рассылки по продуктам, например. Вы можете на уровне брендов:

  • Создавать отдельных пользователей для каждого домена, настраивать отдельные интеграции, использовать разные SMTP-серверы (если хотите отправлять через SES по API - то указать разные аккаунты для разных брендов не получится).
  • Задавать для каждого бренда отдельный домен для трекинга открытий и кликов.
  • Использовать какие будут использоваться имя и email отправителя, UTM-метки и т.п. в рассылках по умолчанию (вы всегда их можете изменить на уровне каждой рассылки.

Рассылки

Так выглядит список ваших рассылок:

По отправленным рассылкам можно посмотреть всю основную статистику, выгрузить в csv списки тех, кто открывал или не открывал ваши письма, кто кликал по ссылкам, отписавшихся и отказы.

Также, есть статистика по гео, но она основательно врёт. В одной из последних версий вроде как точность определения гео выросла, но всё равно далека от идеала.

А вот так выглядит интерфейс создания рассылки:

К сожалению, нормального блочного редактора нет. Но, вам ничто не мешает верстать письма в каком-нибудь BEEFree или в том же MailChimp и загружать HTML-шаблоны в Sendy.

Списки подписчиков

Так выглядит управление списками подписчиков:

Для каждого списка можно настроить Double Opt-in и параметры отписки, а также отдельные странички для них. Шаблоны приветственных писем для них тоже можно сделать разными для каждого списка.

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

Кроме этого есть удобный инструмент для удаления неактивных подписчиков:

Если нужно исключить кого-то из всех списков рассылок, то есть blacklist по адресам и доменам:

При этом, если вы добавите какой-то email в blacklist, то при всех последующих импортах подписчиков Sendy его пропустит.

Интеграции и API

Если вам нужны интеграции, то вас обрадует наличие хорошего API и наличие готовой интеграции с Zapier. Так, что если вам не нужно что-то особенное, то можно просто интегрироваться через Zapier почти что с чем угодно: AMOcrm, Google Sheets, Google Analytics, Facebook (от лид-форм до оффлайн-конверсий) и ещё около 2000 сервисов.

Ещё пару слов про Amazon SES

Почему не Mailgun или что-то ещё

Собственно почему я говорю только про Amazon SES? Ведь есть же ещё всякие Mailgun, Sendgrid и прочие замечательные сервисы, которые предоставляют возможность отправлять письма через свои SMTP-серверы намного дешевле тех же MailChimp, UniSender и т.д. Даже UniSender запилил свой UniOne с абсолютно неадекватными ценами.

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

Ожидаемые показатели качества ваших рассылок

Кстати, о требованиях к качеству. В идеале должно быть так:

  • Процент отказов меньше 5%;
  • Процент жалоб меньше 0,1%.

Если вы превысите эти показатели, то получите предупреждение. Это не означает блокировку, но вам выделят какой-то лимит в несколько десятков тысяч писем (или сотен тысяч в зависимости от лимитов аккаунта), в течение которого вы должны исправится и привести показатели в норму.

А если показатели будут намного хуже? Автоматическая блокировка обычно прилетает при следующих показателях:

  • Процент отказов больше 10%;
  • Процент жалоб больше 1%.

Это кстати не означает, что если вы отправили неудачную рассылку и словили процент жалоб в 6%, то аккаунт обязательно заблокируют. Показатели рассчитываются по всем письмам отправленным за последние несколько дней (период варьируется в зависимости от объемов и частоты отправки).

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

Итого

Как видите, self-hosted платформы для рассылок предлагают функционал, который вполне сопоставим с большинством облачных решений и вполне покрывает потребности 90% компаний в малом бизнесе. А использование собственной платформы для email-маркетинга в связке в SES позволяет значительно сэкономить на отправке писем.

Кстати, если вам понравилась статья, подпишитесь на мой новый Telegram канал Ads Notata, где я буду выкладывать интересные заметки по интернет-маркетингу и web-аналитике. Лонгриды, конечно и дальше будут на vc.ru.

0
11 комментариев
Написать комментарий...
Zoibana
*/1 * * * *

Когда не понимаешь что делаешь

Ответить
Развернуть ветку
Verum Haeresis
Автор

А что не так?

Ответить
Развернуть ветку
Zoibana

Напишите, пожалуста, что значит звездочка и за что отвечает первый аргумент планировщика крон

Ответить
Развернуть ветку
Verum Haeresis
Автор

Ответил, но промахнулся веткой.

Ответить
Развернуть ветку
Verum Haeresis
Автор

Первое значение – минута. Звездочка – любое значение. Значит * == */1. По сути же одно и то же.

Ответить
Развернуть ветку
Alexander Sinyakov

Есть ещё довольно дешёвый сервис https://elasticemail.com/
0.09$ за 1000 писем. И нормально относятся к маркетинговым рассылкам. Проценты к качеству такие же.

Из плюсов наличие удобного интерфейса и все то, что предлагает sendy, только без необходимости разворачивать свой сервер

Ответить
Развернуть ветку
Verum Haeresis
Автор

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

Ответить
Развернуть ветку
Alexander Sinyakov

И у амазона есть свой собственный веб интерфейс, но стоит он 1000$ в месяц, если не ошибаюсь ;)

Ответить
Развернуть ветку
Антон Шигаев

Фигасе... И куда бечь?

Ответить
Развернуть ветку
Marina Selgis

Андрей, добрый день. Компетенции не имеем, поэтому вопрос к Вам, как к профессионалу. Какое оптимальное решение Вы порекомендуете для следующей задачи: Рассылки по конкретному инфоповоду (анонс мероприятия, подробности программы мероприятия и прочая инфа ) только по email адресам, срок - месяц, количество адресов 30000- 40000. Предварительно планируем такую рассылку два раза в год. Этот вариант с Amazon нам подойдет? Или посоветуете другой?

Ответить
Развернуть ветку
Антон Шигаев

Да, кстати. Тоже интересно.

Ответить
Развернуть ветку
8 комментариев
Раскрывать всегда