Триггеры в email-маркетинге (триггерные письма) — письма, которые отправляются автоматически в ответ на действие пользователя или после наступления события, связанного с пользователем.
Мы относим к триггерным рассылкам все автоматические письма, кроме регулярных. Разница в том, что триггерные рассылки отправляются в ответ на действие, а регулярные — с заданной периодичностью (раз в неделю, раз в месяц).
Персонализация в триггерных рассылках
Триггерные рассылки обычно связаны с персонализацией. Персонализация — автоматическая подстановка данных, соответствующих конкретному получателю. Элементами персонализации могут быть:
- имя человека, вставленное в качестве обращения;
- номер телефона магазина, соответствующий городу пользователя;
- просмотренные товары;
- предложение товаров из той же категории, что просмотрел пользователь;
- день отправки, например, поздравление пользователя с днём рождения.
Все примеры, кроме последнего — это персонализация контента, а последний — персонализация времени отправки. Персонализировать письмо по времени отправки могут только триггерные рассылки.
Кому подходят триггерные рассылки
Триггерная рассылка подходит для интернет-магазинов, сервисов, работающих по онлайн-подписке, доставки еды, обучающих онлайн-курсов и вообще почти для любой сферы бизнеса. Если нужно своевременно предоставить пользователю информацию об изменениях в его аккаунте, его заказе или скидках на его любимый товар, триггерные письма решат эту задачу.
Какие бывают триггерные письма
Самые распространённые триггеры:
- приветственные — при подписке на рассылку;
- письма при незавершённом заказе — брошенные корзины;
- реактивация — если пользователь не заходил на сайт / в сервис какое-то время;
- письма о скидках, например «снижение цены на товар в вашем избранном» товар снова в наличии;
- «пожалуйста, оставьте отзыв» — после покупки;
- опрос, которое также можно высылать после покупки.
Читайте также
Ваши триггеры ужасны. Вот, как их починить
Техническая реализация триггерных рассылок
Мы делим их на простые и сложные. Простые рассылки можно реализовать в несколько кликов. Сложные требуют технической интеграции сервиса с сайтом и другими средствами хранения данных о клиентах.
Термины
Мы много работаем с платформой рассылок ExpertSender, и объяснять работу писем я буду на её примере. Поэтому обозначу некоторые понятия, которые мы встретим.
Транзакционное письмо Транзакционные письма используются для уведомления пользователя о совершенной транзакции — оформлении заказа, смене пароля, а также об индивидуальных событиях (к примеру, получении сообщения на форуме). Содержимое каждого отправленного транзакционного сообщения уникально и предназначено конкретному пользователю. Вся информация для письма и его получатель передаются в API-запросе на отправку.
Триггерное письмо Триггерные письма относятся к автоматическим сообщениям и требуют единоразовой настройки. Для редактирования активного триггерного сообщения его необходимо временно деактивировать.
Таблица данных Хранилище информации о подписчиках и других сущностях, связанных с проектом: промокоды на скидку, адреса магазинов, покупки, совершённые пользователем, количество товаров на складе.
Сниппеты Сниппет — кусок кода в API-запросе, содержащий информацию, которая добавляется в триггерную рассылку. В наших примерах мы передаём через них товары, которые содержатся в корзине пользователя сайта или уже были куплены им. В сниппете также можно передавать фрагменты HTML, которые будут использоваться в теле или теме письма.
При подписке на рассылку / Приветственные письма
Для нашего клиента мебельной фабрики Pushe, чтобы собрать базу, мы каждый месяц устраиваем конкурс с розыгрышем кресла. Человек подписывает на конкурс, оставляет свой email и получает приветствие с номером участника.
При наступлении конкретной даты или за Х дней до/после определенной даты / Праздничные письма
В день розыгрыша призов мы выбираем всех людей, которые подписались на конкурс в текущем месяце и уведомляем, что кресло уже разыграно. К этому времени у нас на сайте уже готово видео с результатами.
Читайте также
Простые правила праздничных рассылок
Бонусы и промокоды в обмен на целевое действие
Для пользователей Амедиатеки мы делали партнёрское предложение. Сервис MyBook предлагал скидку тем, кто купит с письма подписку «Амедиатеки».
После покупки подписки в ExpertSender передавалась информация о ней, и срабатывал триггер на отправку письма с промокодом MyBook.
Эти триггеры — простые. Далее мы разберём сложные триггеры, реализованные через профессиональную платформу ExpertSender, и расскажем механику их запуска.
Письма при незавершенном заказе (брошенной корзине)
Задача
Корзина вызывается через 2 часа и через 2 дня после того, как пользователь оставил товары в корзине и ушёл. Возобновляем отправку, если снова заходил на сайт и посещал корзину.
Для большей мотивации во второе и последующие письма добавляем промокод — раз за два дня покупатель не оформил заказ, ему нужно дать дополнительный стимул, Промокод мы храним в таблице данных до тех пор, пока покупатель не использует его.
Варианты реализации
Есть три варианта реализации таких писем:
- Транзакционное, где событие отправки устанавливает разработчик на стороне сайта. В таком случае данные передаются внутри запроса на отправку письма.
- Триггерное, где событие отправки устанавливаем мы сами на стороне платформы.
- Регулярное, где мы настраиваем отправку каждый день, но ограничиваем её через сегмент тех, у кого остались товары в корзине.
Через триггер или регулярное храним информацию о товарах в таблицах данных. Можно добавлять в письма рекомендации, но тогда всё реализуем только сниппетами, либо подключаем рекомендательный сервис.
Реализация
Мы выбрали реализацию через транзакционные письма, где товары подставляются через сниппеты. Создаём таблицу данных с промокодами.
Читайте также
Как быстро создать 80 тысяч персональных QR-кодов
При отправке первого письма не добавляем блок с промокодом, но передаём промокод в дополнительное поле подписчика и помечаем, что промокод не был использован.
При отправке следующих писем подставляется блок с промокодом.
Если промокод был использован, информация об этом передаётся в дополнительное поле подписчика. В следующий раз, когда пользователь бросит корзину, первое письмо снова придёт без промокода.
Для реализации этой тактики достаточно создать один шаблон и менять содержимое в теле письма. А ещё мы можем менять тему письма и другие элементы:
Полезно почитать
Транзакционные рассылки о статусах заказа после его оформления / Письмо «Вам также понравится»
Задача
Письмо «Cпасибо за покупку» не только уведомляет покупателя, что всё прошло хорошо, и заказ оформлен. Его можно использовать для допродаж, добавляя рекомендации других товаров.
Варианты реализации
Письмо «Спасибо за покупку» нам удобнее всего реализовать как транзакционное и о других вариантах не задумываться. Следующие письма со статусами заказа реализуются идентично, изменяется только название статуса.
Реализация
В письмо добавлены рекомендации, которые мы берём из раздела «Хиты продаж». Этот блок даёт дополнительную прибыль. Всю информацию передаём через сниппеты.
Сниппеты можно передавать и в тему письма:
А ещё можно выводить только те строки, в которые были переданы данные через сниппет. Тогда отображаться будут только нужные для клиента данные. Так выглядит список всех полей, которые мы могли бы передать:
Нужно также не забыть добавлять подписчиков в базу (можно в отдельный лист не для рекламных рассылок), чтобы ему точно ушло письмо.
Оставить отзыв о товаре / Письма-отзывы после покупки
Задача
Через два месяца после отправки письма «Спасибо за покупку» отправить письмо с просьбой оставить отзыв о товаре. В нашем случае мы заложили два месяца, потому что это письмо для магазина мебели — чтобы её доставить и собрать, требуется время.
Варианты реализации
Письмо с запросом отзыва можно также реализовать как транзакционное. Мы передаём данные о купленных товарах через запрос со сниппетами, как в «Спасибо за покупку». Но придётся подождать некоторое время, чтобы покупка успела дойти, и её проверили в использовании. Можно было бы сделать триггер с событием «Вызов по API», но для этого на стороне сайта пришлось бы хранить дату вызова, а на стороне платформы рассылок — кучу товаров в таблицах данных.
Поэтому мы выбрали третий путь — настроить регулярное письмо и ограничить сегментом получателей письма в нужную дату.
Реализация
Мы создали таблицу данных feedback_date, в которую собираем всю информацию о заказе: электронную почту покупателя, ID заказа и атрибуты заказанных товаров — на каждый товар по одной строке. И чтобы знать, когда отправить письмо, я для каждой строки собираю дату отправки отзыва — через 2 месяца после отправки письма о покупке.
Вот таким получается письмо после того, как вся информация в него подставилась:
Кстати, когда готовите письмо с просьбой оставить отзыв, обязательно добавляйте в него информацию о товаре, иначе покупатель может просто не вспомнить, что он заказывал.
Для подстановки товаров в письмо находим номер последнего заказа, который был совершён у этого подписчика за текущую дату, а потом выбираем все строки, которые соответствуют этому заказу, и циклом подтягиваем их в письмо. После подстановки строки в письмо её можно удалить.
Для настройки регулярного письма мы выбираем все даты и время, в которое хотим отправить письмо, а через сегменты выбираем те email-адреса, которые в таблице содержат дату, совпадающую с сегодняшней.
Уведомление о снижении цены на товар / Снижение цены
Задача
Собрать всех пользователей, которые хотят дождаться акции на товар, узнать, какой конкретно товар они хотели бы купить, и потом передавать информацию о снижении цены на товар.
Варианты реализации
Реализация через транзакционное возможна, но слишком сложна, т.к. на стороне сайта не слишком удобно хранить так много данных и генерировать события. Реализация через триггеры неудобна, потому что на каждый товар отправится много писем, а это нам не подходит. Мы снова выбрали регулярное письмо, потому что это позволит мне выбрать удобное время для отправки и собрать все товары, на которые снизилась цена в один день.
Реализация
В карточки товаров размещается форма, которая всплывает после ознакомления с товаром.
В таблицу данных drop_in_price передаётся email, атрибуты товара и текущая цена товара. Так как первичный ключ — email и товар, то подписаться на один и тот же товар дважды не получится. В список подписчиков email также попадает.
В таблицу new_prices передаём один атрибут для идентификации продукта и новую цену после её изменения на сайте.
После создания таблиц связываем их совпадающим атрибутом.
Совместить всю информацию в одну таблицу мы не можем, потому что не можем менять отдельную ячейку, а только всю строку. Чтобы сначала запрашивать все данные из строки, нужно слишком много ресурсов.
Для подстановки товаров в письмо мы ищем все товары, которые хочет конкретный подписчик. Потом для каждого товара ищем новую цену и подставляем в сетку. Вычисляем разницу между ценами. Если новая цена выше или равна старой, то товар не добавляем. Кроме этого вычисляем размер скидки в процентах и общую сумму, которую сэкономит подписчик, если купит товары сейчас. После подстановки товара в письмо удаляем строку с его упоминанием из таблицы.
В тему мы также решили добавить информацию, что снизилась цена на ожидаемый товар. Если товаров в письме несколько, добавляем «… и многое другое».
Если реализация такой механики сложна, вы можете анализировать, на какие товары больше всего подписываются пользователи, и устраивать акции с действительно ожидаемыми позициями. А можно вызывать отправку письма вручную, добавляя в таблицу с новыми ценниками строки с желаемыми товарами.
Уведомление о появлении товара / Товар снова в наличии
Задача
Собрать всех пользователей, которые ждут появления товара, и информацию об этом товаре. В каждое письмо добавить рекомендации на случай, если интерес к этому товару уже пропал.
Варианты реализации
Судя по прошлому решению, я могла бы и это письмо сделать регулярным и останавливать отправку, если товара нет в наличии. Тогда в одном письме были бы все товары, которые ждёт подписчик. Или сделать его триггером с вызовом по API, когда товар появится в магазине. Но перед этим письмом стояла ещё одна важная задача — добавлять рекомендации. В результате мы выбрали транзакционное письмо, но храним список ожидаемых товаров в таблицах данных.
Реализация
Для товаров, которых нет в наличии, в карточке товара вместо кнопки «Купить» показывается форма, в которой можно подписаться на оповещение о появлении товара.
Всю информацию о товаре мы добавляем в таблицу данных product_availability: это емейл, ссылка на товар и название товара, чтобы можно было после выгрузить все товары, которые ждут посетители сайта, и заказать их как можно скорее.
Когда товар снова оказывается в наличии, сайтом вызывается запрос, какие пользователи ждут появившийся товар, и их адреса подставляются в адрес получателя транзакционного письма. Вся информация о товаре, в том числе, рекомендации на него, подставляются через сниппеты. Если в день появилось много товаров, то придёт несколько писем, но не страшно, потому что пользователь заинтересован в них.
Информацию о появившемся товаре мы также добавляем и в тему, чтобы хотелось открыть письмо.
Письма-возвращалки / Реактивация
Задача
Вернуть на биржу тех фрилансеров, которые посещали биржу в последний раз 30 дней назад.
Реализация
Для отправки этого письма мы передаём в дополнительное поле пользователей последнюю дату посещения биржи. Если с указанной даты прошло 30 дней, срабатывает триггер на отправку письма. Мы предлагаем зайти и посмотреть уведомления о работе от заказчиков.
Также если фрилансер не рекламирует свои услуги, предлагаем разместить объявление. Если рекламирует, убираем.