Меня зовут Илья Воробьёв, и я расскажу читателям Хабра историю возникновения альтернативного решения — возможности управлять рассылками и гарантированно отписаться от любой, не покидая интерфейс Яндекс.Почты.
Проблема бесполезных писем знакома не только по интернету. В подъездах наших домов стоят металлические ящики для самои? обычнои? бумажнои? почты. Их очень любят наполнять листовками и буклетами. Приходится доставать, аккуратно перебирать, чтобы не потерять полезное уведомление или квитанцию между страницами рекламы. У этои? проблемы до сих пор нет системного решения. Разве что нанять сурового консьержа для отпугивания разносчиков макулатуры.
Электронная почта в полнои? мере унаследовала эту проблему. Казалось бы, в цифровои? среде решить ее? должно быть проще. Отчасти это так. Например, наш почтовыи? сервис вполне успешно использует машинныи? интеллект для фильтрации спама от неизвестных отправителеи? с одноразовыми адресами и прочих наследников из Африки. Но не все рассылки — это спам.
List-Unsubscribe и кнопка «Отписаться»
Что делать с регулярными и порой даже качественными рассылками от известных сервисов, на которые пользователь когда-то подписался, но по разным причинам перестал читать?
Почтовый сервис может помогать людям отписаться от таких писем. Ровно это мы и это делаем с 2013 года. Именно тогда у писем в Яндекс.Почте появилась кнопка «Отписаться». Но и это нельзя назвать полноценным решением по трём причинам.
Во-первых, эта кнопка работает не на магии, а использует ссылку List-Unsubscribe, которую автор рассылки мог передать в заголовке письма (согласно стандарту RFC 4021). А мог и не передать, чтобы не упрощать пользователям процесс отписки.
Во-вторых, даже наличие ссылки не гарантирует её корректную работу. Клик по кнопке «Отписаться» или по ссылке в письме перенаправляет пользователя на внешний сайт. Владелец сайта может проигнорировать переход по такой ссылке, потребовать давно забытый пароль от аккаунта или даже попросить позвонить в поддержку в рабочие часы.
В-третьих, автор рассылки мог и вовсе не предусмотреть возможность отписаться.
Первый подход к управлению рассылками
Мы искали возможность помочь людям, которые тонут в рассылках, но не находят время на разбор писем, прохождение квестов для отписки и настройку ручных фильтров. Нужно было найти такое решение, которое помогло бы любому человеку быстро найти все рассылки и гарантированно от них отписаться.
В этой ситуации часто вспоминают про идею фильтровать письма по разным вкладкам в зависимости от их природы. Это хорошая идея, когда нужно отделить рассылки от личных писем или уведомления соцсетей от авиабилетов. Но сегодня у нас другая задача — помочь людям отделить полезное от того, что они не читают, и дать возможность надёжно избавиться от ненужных писем.
Примерно два года назад мы нарисовали первый макет того, как люди могли бы отписываться от рассылок с нашей помощью.
Идея проста: собрать в одном месте все рассылки, на которые подписан человек, и дать гарантированную возможность отписаться от любой прямо в почте, без перехода на сайт сервиса!
Макет был не идеален, если судить по нашим текущим знаниями. Например, как оказалось, общее количество писем и дата последнего мало помогают принятию осознанного решения, скорее, даже отвлекают от него.
Внутреннии? прототип
Мы учли это в нашем первом внутреннем прототипе, который был собран за пару недель в рамках Школы разработки интерфейсов. В нём мы отказались от лишних полей, но попробовали помочь иначе.
Яндекс.Почта знает, какие письма открываются, а какие рассылки так и остаются непрочитанными. Значит, мы можем оценить их по признаку читаемости самостоятельно и дать кнопку удалить все, которые пользователь не читает.
Казалось бы, идеальное решение. Казалось бы…
Первый эксперимент
Прототип лёг в основу эксперимента, который был доступен части пользователей с весны прошлого года. Мы наблюдали. Меняли те или иные элементы. Собирали отзывы.
Например, мы поняли, что зачастую людям не хватает примеров писем, чтобы понять, полезная это рассылка или нет. Поэтому в итоге мы добавили возможность просмотреть список последних писем.
Но были и более серьёзные проблемы. Оказалось, что пользователи в массе своей не доверяют оценкам алгоритмов о том, полезная рассылка или нет. Более того, многие боятся удалять даже нечитаемые рассылки — вдруг там будет что-то важное?
Этот страх побудил нас доработать решение так, чтобы важные письма из скрытых рассылок всё равно попадали во входящие. К примеру, если вы отказались от новостной рассылки интернет-магазина, вы продолжите получать сообщения о сделанных в нём заказах. Для этого пришлось повозиться с машинным обучением, но оно того стоило.
Запуск на всех
Финальное решение, которое сегодня мы включаем для всех пользователей Яндекс.Почты, больше не пугает лишними деталями и сложными вопросами. Мы даём пользователям простой, удобный интерфейс для управления всеми рассылками и надёжный способ от них отказаться. Люди сами решат, какие рассылки им нужны.
Внимательный читатель уже мог задаться вопросом, каким же именно образом мы позволяем «отписываться» от рассылок прямо в Почте, без перехода на сайт сервиса? Мы не можем полагаться на добропорядочность авторов рассылок и наличие заголовка List-Unsubscribe. Поэтому все новые письма (а также все старые, если поставить всего одну галочку) автоматически перемещаются в Корзину, откуда их при желании можно восстановить. Рассылки, кстати, тоже легко восстановить в любой момент в соседней вкладке (и это удобнее, чем искать возможность подписаться на сайте).
Итоги
Немного чисел об эффективности этого решения. В среднем у страдающих пользователей подключено около 50 рассылок. Благодаря новому решению, они отписываются в среднем от 38 рассылок! Это существенно экономит время и помогает не терять полезные письма.
Кроме того, мы провели опрос среди пользователей, которые получили доступ к новой возможности раньше других. Его результаты можно найти за спойлером.
Дальше — больше.
Комментарии (40)
Melkij
13.02.2019 12:37Штука сейчас явно не понимает что происходит, когда речь идёт о списках рассылок. Например, списки рассылок postgresql как официальный канал обсуждения. Так, сегодня утром меня порадовали сообщением что я подписан на пару десятков сервисов и показали email отдельных людей, хотя это на самом деле всего несколько списков рассылок.
soldieroflight Автор
13.02.2019 13:35+1Спасибо! Можете пожалуйста прислать детали в личку. Очень нам поможет!
rinaty
13.02.2019 12:57Все ждал как отписываться в тяжелых случаях когда залогиниться предлагают (или что похуже), а оказалось что итоговое решение не отписка, а фильтрация писем, а у нее много своих минусов (один вы описали и пишите что решаете с помощью машинного обучения, т.е. в ~10% случаев не верно решаете).
Мое решение простое, правда ручное: если письма приходят по ощущениям чаще двух раз в месяц, то жму отписаться, если нельзя отписаться или на этот сайте я не регистрировался, то отправляю в спам (после какой-то итерации они туда автоматом попадают, плюс если некоторые другие пользователи также делают, то есть надежда что недобросовестный рассылатель угодит в бан лист у почтового сервера)soldieroflight Автор
13.02.2019 13:46у нее много своих минусов (один вы описали и пишите что решаете с помощью машинного обучения, т.е. в ~10% случаев не верно решаете).
На наших UX исследованиях мы увидели, что большинство людей (80%+) понимает такую фильтрацию как полное скрытие всех писем от данного отправителя. Дополнительные детали в виде классификации не очень понятны рядовому пользователю. Можно это воспринимать как простой способ создавать правила/фильтры, которые не очень дружелюбны для обычного человека. Другими словами, скрывая так рассылку человек обычно ожидает полное скрытие всех писем от отправителя, НО мы решили подстраховать человека и добавили машинное обучение
Мое решение простое, правда ручное: если письма приходят по ощущениям чаще двух раз в месяц, то жму отписаться, если нельзя отписаться или на этот сайте я не регистрировался, то отправляю в спам (после какой-то итерации они туда автоматом попадают, плюс если некоторые другие пользователи также делают, то есть надежда что недобросовестный рассылатель угодит в бан лист у почтового сервера)
Это работающий вариант, но чуть более трудоемкий
bustEXZ
13.02.2019 13:23+1Интересное наблюдение. Был куплен тестовый премиум на puzzle-english (иногда приходили письма от них). В рассылках их показывает около 30 вида: noreply-<число>@puzzle-english.com. В итоге сервис один, а подписок как будто тонна).
PS спасибо за сервис и интересные фичиsoldieroflight Автор
13.02.2019 13:26+1Да, группировка в таких случаях была бы очень кстати. Уже тестируем такую идею. С ней есть ряд нюансов — решили не тянуть с запуском
mechatroner
14.02.2019 07:14+1Уверен, что для деятелей, которые генерят уникальный адрес для своих спам-рассылок в аду стоит отдельный котел. Вообще я против регулирования интернета, но с рассылками реально что-то надо делать. Вроде бы в Евросоюзе есть какие-то подвижки и я даже почти готов уже это поддержать. Если бумажный спам в почтовый ящик как-то ограничивается стоимостью бумаги, то в интернете ничто не мешает компаниям слать гигабайты треша, который потом всплывает на экранах мобильников в виде поп-апов и безумно раздражает. Аж трясет.
lopatoid
14.02.2019 17:16В РФ вроде как уже есть ответственность за спам (гуглим «Ответственность за распространение спама»).
JanisV
13.02.2019 16:19По случаю зашел на свою Яндекс.Почту, которой в общем-то пользуюсь только для некоторых сервисов Яндекса. Меня ждет 122 новых письма. Открываю самое новое от Ваша Яндекс.Музыка. И Яндекс меня спрашивает: «Это реклама? Яндекс.Почта может помогать вам сортировать письма. Сейчас она всё верно определила?». Я даже и не знаю…
Это не говоря о том, что я не подписывался на розыгрыши от Яндекс.Денег, от Яндекс.Музыки, на новости от Яндекс.Недвижимости. Половина писем — это мошеннические рассылки, вторая половина — спам от Яндекса.
wladyspb
13.02.2019 18:08Вот ещё бы сервисы яндекса научились не включать рассылку по умолчанию при подключении нового сервиса — цены бы им не было.
Valery4
13.02.2019 19:10Я бы убивал за каждую подписку после логина через социальных auth провайдеров.
Нажимаешь кнопку войти, а тебя ещё и на рассылку подписывают.
ukt
13.02.2019 21:51Мой кейс:
Есть список с которых могут быть письма, если письмо не в этом списке — отметка спам и улетает в корзину.
Разумеется, новый нужный адрес попадает в спам при первой посылке.
Поэтому есть правило, что если от меня ушло письмо, то адрес появляется в собранных адресах и письма с этого адреса уже не будут попадать в спам.
Suntechnic
13.02.2019 22:43И где эта возможность прячется в интерфейсе? Что-то не вижу.
soldieroflight Автор
13.02.2019 22:46В настройках, колесико сверху в вебе. В мобильных тоже есть и тоже в настройках.
Для тех, у кого много рассылок, показывается промка — не хотели быть слишком навязчивымиSuntechnic
13.02.2019 23:34+1У меня 185 рассылок. Это наверно не много, раз промка мне не показалась. Ну и как и все массово выбрать я тоже не понял. Хотя может такой функции только у меня нет — у меня же их «немного» :)
gre
13.02.2019 22:48Вопрос — а возможно ли как-то узнать о том, что пользователь воспользовался этим инструментом?
Либо всё слать что-то в List-Unsubscribe, в FBL отправлять письмо, либо в Postmaster как-то отслеживать это?
P.S> Спасибо за инструмент — очень круто, что можно почистить ящик от ненужных писем.soldieroflight Автор
13.02.2019 22:59Мы сделали не отписку, а скрытие рассылок, которое создает правило в корзину. List-unsubscribe работает только на письмах, которые это предоставляют и только из письма, а не из данной тулзы.
Suntechnic
13.02.2019 23:35Добавьте механизм уведомления стандартный который будет работать как вызов ссылки List-Unsubscribe в фоне с некоторым параметром. Может это простимулирует использовать List-Unsubscribe?
gre
14.02.2019 10:26Отлично.
Но это ровно никак не решает проблему того, что вы эти самые расылки получаете, а я отправляю.
При этом вы сразу кидаете их в корзину, а я об этом даже не узнаю, что данному пользователю нет смысла слать данные письма.
boilroom
14.02.2019 03:13+1Отписка от рассылок в ящике — это, конечно, здорово. Но, как мне кажется, есть более логичное решение проблемы с тонущими в непрочитанных письмах пользователями. Например у меня есть друг, который регулярно заявляет мне что-то вроде «О, я не заметил, что у меня стало 1492 непрочитанных письма вместо 1491, поэтому-то я ничего не прочитал/не ответил/не знаю». И бороться с этим бесполезно. Потому, что он раздолбай. И при этом его полностью устраивает эта ситуация. Предпринимать какие-либо действия ему будет просто лень. Даже если 80% работы за него уже сделал умный алгоритм. И письма продолжат «уходить в пространство». Даже если он отпишется от всех рассылок и пометит все письма из них как прочитанные, то у него все равно останется 689 непрочитанных «новых» писем. В результате ничего, в общем, не поменяется. Разве что число новых писем будет меняться медленнее, что даст больший шанс на то, что эти изменения будут замечены и заинтересуют
пациентапользователя.
Я бы попробовал действовать иначе. Если так классно получается определять рассылки, то почему бы вместо «у вас 1492 письма» не писать «у вас 1492 (3) письма»? В скобках ставить цифру потенциально важных непрочитанных писем. Ну а в самом интерфейсе отмечать такие письма так, чтобы они отличались от всех остальных: подсвечивать другим цветом или что-нибудь такое. Остается вопрос, что должно входить в потенциально важные письма. Как минимум — это не рассылки. Еще бы я подумал о том, как не допустить ситуацию «у вас 15 412 (831) письма». Возможно, стоит сделать временное окно, при выходе за которое письмо перестает быть потенциально важным и становится просто непрочитанным и т.д и т.п. Мне такой подход кажется более предпочтительным и потенциально эффективным. Хотя еще раз повторю — отписка от рассылок это тоже отлично, но можно совмещать подходы.bkar
14.02.2019 10:18«у вас 1492 (3) письма»? В скобках ставить цифру потенциально важных непрочитанных писем.
Предложение на миллион!
Остается вопрос, что должно входить в потенциально важные письма.
Для меня:
– адреса, на которые я сам когда-либо что-то писал (отвечал).
– адреса, которые я сам включу в список «потенциально важные».
Не менее важен вопрос, что не должно входить с список потенциально важного.
Предложу:
— адреса, которые я сам вычеркнул из списка «возможно важно».
— владельцы почт, не застпамляйте своими «очень важными» рассылками ящики которые у вас открыли.
— не подпускайте искусственный интеллект, чтобы он за меня решал что куда сортировать. Важнейшее качество такого списка — его 100% предсказуемость.
crackpot
14.02.2019 12:54Вот просто например.
Есть сферический сервис в вакууме — service.tld. Этот сервис шлёт с info@service-mail.tld письма с маркетингом ("черная пятница", етц) и письма "ваша подписка продлена".
Юзер получает за год 3-5 писем с маркетингом, "отписывается" от рассылки, и в итоге уведомления о продлении подписки или, что хуже, невозможности продления (карта кончилась) не увидит. Как быть?BarakAdama
14.02.2019 13:04На этот случай:
Этот страх побудил нас доработать решение так, чтобы важные письма из скрытых рассылок всё равно попадали во входящие. К примеру, если вы отказались от новостной рассылки интернет-магазина, вы продолжите получать сообщения о сделанных в нём заказах. Для этого пришлось повозиться с машинным обучением, но оно того стоило.
crackpot
14.02.2019 13:12Справедливо, но нет. Или нужна открытая документация, а ещё лучше — способ описать "важное" письмо самим письмом: метадата в верстке или ещё что-то. В противном случае сервис не может никак заранее предвидеть будет ли его уведомление в текущем дизайне действительно распознано как "важное", или свалится вслед за остальным маркетингом. Или заводить десятки ящиков сотрудникам и тренироваться на них, что тоже даёт такие себе гарантии.
Забороть спам — намерение, безусловно, благое. Но мы все ведь знаем, куда такие намерения могут привести.
Melkij
14.02.2019 13:23способ описать «важное» письмо самим письмом
Ну и будет весь спам с этой меткой, в итоге эту метку большинство будут игнорировать
Suntechnic
14.02.2019 16:58Вобщем инструмент получился классный для статьи на хабре, но для реальной жизни слабо применим:
- Массового выделения нет
- Оценка полезности (я доверяю алгоритму) куда-то подевалась по пути к пользователю
Из-за этого не понятно как этим пользоваться. Сидеть кликать 200 чекбоксов? Писать в коносли браузера скрипт который их кликнет? Ну предположим для кого-то это решит проблему 1. Но мне лень.
А ведь можно было сделать вверху три кнопки Выделить редкочитаемые, Выделить нечитаемые, Выделить все.aimh
15.02.2019 09:47Массовое выделение действительно было бы удобно
Suntechnic
15.02.2019 11:18Во-во. Когда вижу такие интерфейсы, первый же вопрос возникает — кто это делает? Почему он получает за это деньги? Возьмите лучше меня.
Хотя я и понимаю, что возможно мои рассуждения дилетантские.
aimh
15.02.2019 11:26Вот у меня вопрос возник. То есть по факту новый инструмент не отписывает от рассылки? То есть они помещаются в «скрытые». Так что ли? И если из скрытых их вернуть обратно, то они снова начнут приходить? Не надо будет снова подписываться?
BarakAdama
15.02.2019 13:16Да, так.
aimh
15.02.2019 14:14А письма которые были в промежутке между включенном и выключенном состоянии где то можно посмотреть? Куда они деваются? Они же по факту приходили.
И еще вопрос со стороны копании, которая отправляет рассылки клиентам. Будет ли это как то влиять на корректность email-статистики? Количество получений, открываемость, спам и все такое?
Anastasia_K
15.02.2019 12:56очень крутая идея, но реализация…
зашла в почту. ткнула в рассылки. вылезло окно с 200+ рассылками. рандомно в них потыкала, во всех письма старые. я отписалась от них ручками уже давно. искать среди такой пачки актуальные? занятие крайне неблагодарное. выделить все каким либо образом? полезные пропадут.
нужно как минимум сортировать «приходили за последний месяц-пол года-год»
AndreyYu
Я в Gmail делаю следующим образом с теми рассылками, которые могут быть нужны, но не сейчас и практически никогда:
Создал правило и добавил туда через оператор OR все адреса не нужных глазу рассылок, которые вместо инбокса падают в папку «Корзина-2». Затем раз в месяц я туда захожу, бегло просматриваю, если ничего нужного — очищаю её и всё. Да, сбор адресов отправителей занял какое-то время, но ничего, за пару дней список не в спешном режиме составляется без проблем и дополняется по мере необходимости.
sidristij
а могли завести на Яндексе импорт почты, пользоваться GMail, а на Яндексе — делать отписку ))))
AndreyYu
и затем все пересылать на mail.ru :)
lopatoid
На GMail тоже есть кнопка «отписаться», и работает так же через List-Unsubscribe, судя по всему.