Согласно нашим исследования, не менее 20% пользователеи? страдают от большого числа непрочитанных писем. Львиная доля этих писем — регулярные рассылки. Большая часть из них никогда не будет открыта и прочитана — они лежат ме?ртвым грузом и отвлекают от полезных писем. Для решения этой проблемы придумано множество способов, но ни один из них нельзя назвать полноценным.

Меня зовут Илья Воробьёв, и я расскажу читателям Хабра историю возникновения альтернативного решения — возможности управлять рассылками и гарантированно отписаться от любой, не покидая интерфейс Яндекс.Почты.



Проблема бесполезных писем знакома не только по интернету. В подъездах наших домов стоят металлические ящики для самои? обычнои? бумажнои? почты. Их очень любят наполнять листовками и буклетами. Приходится доставать, аккуратно перебирать, чтобы не потерять полезное уведомление или квитанцию между страницами рекламы. У этои? проблемы до сих пор нет системного решения. Разве что нанять сурового консьержа для отпугивания разносчиков макулатуры.

Электронная почта в полнои? мере унаследовала эту проблему. Казалось бы, в цифровои? среде решить ее? должно быть проще. Отчасти это так. Например, наш почтовыи? сервис вполне успешно использует машинныи? интеллект для фильтрации спама от неизвестных отправителеи? с одноразовыми адресами и прочих наследников из Африки. Но не все рассылки — это спам.

List-Unsubscribe и кнопка «Отписаться»


Что делать с регулярными и порой даже качественными рассылками от известных сервисов, на которые пользователь когда-то подписался, но по разным причинам перестал читать?

Почтовый сервис может помогать людям отписаться от таких писем. Ровно это мы и это делаем с 2013 года. Именно тогда у писем в Яндекс.Почте появилась кнопка «Отписаться». Но и это нельзя назвать полноценным решением по трём причинам.



Во-первых, эта кнопка работает не на магии, а использует ссылку List-Unsubscribe, которую автор рассылки мог передать в заголовке письма (согласно стандарту RFC 4021). А мог и не передать, чтобы не упрощать пользователям процесс отписки.

Во-вторых, даже наличие ссылки не гарантирует её корректную работу. Клик по кнопке «Отписаться» или по ссылке в письме перенаправляет пользователя на внешний сайт. Владелец сайта может проигнорировать переход по такой ссылке, потребовать давно забытый пароль от аккаунта или даже попросить позвонить в поддержку в рабочие часы.



В-третьих, автор рассылки мог и вовсе не предусмотреть возможность отписаться.

Первый подход к управлению рассылками


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

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

Примерно два года назад мы нарисовали первый макет того, как люди могли бы отписываться от рассылок с нашей помощью.



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

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

Внутреннии? прототип


Мы учли это в нашем первом внутреннем прототипе, который был собран за пару недель в рамках Школы разработки интерфейсов. В нём мы отказались от лишних полей, но попробовали помочь иначе.

Яндекс.Почта знает, какие письма открываются, а какие рассылки так и остаются непрочитанными. Значит, мы можем оценить их по признаку читаемости самостоятельно и дать кнопку удалить все, которые пользователь не читает.



Казалось бы, идеальное решение. Казалось бы…

Первый эксперимент


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



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

Но были и более серьёзные проблемы. Оказалось, что пользователи в массе своей не доверяют оценкам алгоритмов о том, полезная рассылка или нет. Более того, многие боятся удалять даже нечитаемые рассылки — вдруг там будет что-то важное?

Этот страх побудил нас доработать решение так, чтобы важные письма из скрытых рассылок всё равно попадали во входящие. К примеру, если вы отказались от новостной рассылки интернет-магазина, вы продолжите получать сообщения о сделанных в нём заказах. Для этого пришлось повозиться с машинным обучением, но оно того стоило.

Запуск на всех


Финальное решение, которое сегодня мы включаем для всех пользователей Яндекс.Почты, больше не пугает лишними деталями и сложными вопросами. Мы даём пользователям простой, удобный интерфейс для управления всеми рассылками и надёжный способ от них отказаться. Люди сами решат, какие рассылки им нужны.



Внимательный читатель уже мог задаться вопросом, каким же именно образом мы позволяем «отписываться» от рассылок прямо в Почте, без перехода на сайт сервиса? Мы не можем полагаться на добропорядочность авторов рассылок и наличие заголовка List-Unsubscribe. Поэтому все новые письма (а также все старые, если поставить всего одну галочку) автоматически перемещаются в Корзину, откуда их при желании можно восстановить. Рассылки, кстати, тоже легко восстановить в любой момент в соседней вкладке (и это удобнее, чем искать возможность подписаться на сайте).

Итоги


Немного чисел об эффективности этого решения. В среднем у страдающих пользователей подключено около 50 рассылок. Благодаря новому решению, они отписываются в среднем от 38 рассылок! Это существенно экономит время и помогает не терять полезные письма.

Кроме того, мы провели опрос среди пользователей, которые получили доступ к новой возможности раньше других. Его результаты можно найти за спойлером.

Результаты опроса


Дальше — больше.

Комментарии (40)


  1. AndreyYu
    13.02.2019 12:36

    Я в Gmail делаю следующим образом с теми рассылками, которые могут быть нужны, но не сейчас и практически никогда:
    Создал правило и добавил туда через оператор OR все адреса не нужных глазу рассылок, которые вместо инбокса падают в папку «Корзина-2». Затем раз в месяц я туда захожу, бегло просматриваю, если ничего нужного — очищаю её и всё. Да, сбор адресов отправителей занял какое-то время, но ничего, за пару дней список не в спешном режиме составляется без проблем и дополняется по мере необходимости.


    1. sidristij
      14.02.2019 12:26

      а могли завести на Яндексе импорт почты, пользоваться GMail, а на Яндексе — делать отписку ))))


      1. AndreyYu
        14.02.2019 12:27

        и затем все пересылать на mail.ru :)


      1. lopatoid
        14.02.2019 17:06

        На GMail тоже есть кнопка «отписаться», и работает так же через List-Unsubscribe, судя по всему.


  1. Melkij
    13.02.2019 12:37

    Штука сейчас явно не понимает что происходит, когда речь идёт о списках рассылок. Например, списки рассылок postgresql как официальный канал обсуждения. Так, сегодня утром меня порадовали сообщением что я подписан на пару десятков сервисов и показали email отдельных людей, хотя это на самом деле всего несколько списков рассылок.


    1. soldieroflight Автор
      13.02.2019 13:35
      +1

      Спасибо! Можете пожалуйста прислать детали в личку. Очень нам поможет!


  1. rinaty
    13.02.2019 12:57

    Все ждал как отписываться в тяжелых случаях когда залогиниться предлагают (или что похуже), а оказалось что итоговое решение не отписка, а фильтрация писем, а у нее много своих минусов (один вы описали и пишите что решаете с помощью машинного обучения, т.е. в ~10% случаев не верно решаете).

    Мое решение простое, правда ручное: если письма приходят по ощущениям чаще двух раз в месяц, то жму отписаться, если нельзя отписаться или на этот сайте я не регистрировался, то отправляю в спам (после какой-то итерации они туда автоматом попадают, плюс если некоторые другие пользователи также делают, то есть надежда что недобросовестный рассылатель угодит в бан лист у почтового сервера)


    1. soldieroflight Автор
      13.02.2019 13:46

      у нее много своих минусов (один вы описали и пишите что решаете с помощью машинного обучения, т.е. в ~10% случаев не верно решаете).

      На наших UX исследованиях мы увидели, что большинство людей (80%+) понимает такую фильтрацию как полное скрытие всех писем от данного отправителя. Дополнительные детали в виде классификации не очень понятны рядовому пользователю. Можно это воспринимать как простой способ создавать правила/фильтры, которые не очень дружелюбны для обычного человека. Другими словами, скрывая так рассылку человек обычно ожидает полное скрытие всех писем от отправителя, НО мы решили подстраховать человека и добавили машинное обучение

      Мое решение простое, правда ручное: если письма приходят по ощущениям чаще двух раз в месяц, то жму отписаться, если нельзя отписаться или на этот сайте я не регистрировался, то отправляю в спам (после какой-то итерации они туда автоматом попадают, плюс если некоторые другие пользователи также делают, то есть надежда что недобросовестный рассылатель угодит в бан лист у почтового сервера)

      Это работающий вариант, но чуть более трудоемкий


  1. bustEXZ
    13.02.2019 13:23
    +1

    Интересное наблюдение. Был куплен тестовый премиум на puzzle-english (иногда приходили письма от них). В рассылках их показывает около 30 вида: noreply-<число>@puzzle-english.com. В итоге сервис один, а подписок как будто тонна).
    PS спасибо за сервис и интересные фичи


    1. soldieroflight Автор
      13.02.2019 13:26
      +1

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


    1. mechatroner
      14.02.2019 07:14
      +1

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


      1. lopatoid
        14.02.2019 17:16

        В РФ вроде как уже есть ответственность за спам (гуглим «Ответственность за распространение спама»).


  1. DickCancer
    13.02.2019 13:43
    -2

    А я то думал статья о том как одной кнопкой отказаться от Яндекс почты!


  1. LevOrdabesov
    13.02.2019 15:28
    +1

    И плюс серьёзная экономия на трафике и хранилищах. Логичное решение.


  1. JanisV
    13.02.2019 16:19

    По случаю зашел на свою Яндекс.Почту, которой в общем-то пользуюсь только для некоторых сервисов Яндекса. Меня ждет 122 новых письма. Открываю самое новое от Ваша Яндекс.Музыка. И Яндекс меня спрашивает: «Это реклама? Яндекс.Почта может помогать вам сортировать письма. Сейчас она всё верно определила?». Я даже и не знаю…

    Это не говоря о том, что я не подписывался на розыгрыши от Яндекс.Денег, от Яндекс.Музыки, на новости от Яндекс.Недвижимости. Половина писем — это мошеннические рассылки, вторая половина — спам от Яндекса.


  1. wladyspb
    13.02.2019 18:08

    Вот ещё бы сервисы яндекса научились не включать рассылку по умолчанию при подключении нового сервиса — цены бы им не было.


  1. Valery4
    13.02.2019 19:10

    Я бы убивал за каждую подписку после логина через социальных auth провайдеров.
    Нажимаешь кнопку войти, а тебя ещё и на рассылку подписывают.


  1. ukt
    13.02.2019 21:51

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


  1. Suntechnic
    13.02.2019 22:43

    И где эта возможность прячется в интерфейсе? Что-то не вижу.


    1. soldieroflight Автор
      13.02.2019 22:46

      В настройках, колесико сверху в вебе. В мобильных тоже есть и тоже в настройках.

      Для тех, у кого много рассылок, показывается промка — не хотели быть слишком навязчивыми


      1. Suntechnic
        13.02.2019 23:34
        +1

        У меня 185 рассылок. Это наверно не много, раз промка мне не показалась. Ну и как и все массово выбрать я тоже не понял. Хотя может такой функции только у меня нет — у меня же их «немного» :)


        1. aimh
          15.02.2019 09:45

          272 рассылки тоже немного)


  1. gre
    13.02.2019 22:48

    Вопрос — а возможно ли как-то узнать о том, что пользователь воспользовался этим инструментом?
    Либо всё слать что-то в List-Unsubscribe, в FBL отправлять письмо, либо в Postmaster как-то отслеживать это?

    P.S> Спасибо за инструмент — очень круто, что можно почистить ящик от ненужных писем.


    1. soldieroflight Автор
      13.02.2019 22:59

      Мы сделали не отписку, а скрытие рассылок, которое создает правило в корзину. List-unsubscribe работает только на письмах, которые это предоставляют и только из письма, а не из данной тулзы.


      1. Suntechnic
        13.02.2019 23:35

        Добавьте механизм уведомления стандартный который будет работать как вызов ссылки List-Unsubscribe в фоне с некоторым параметром. Может это простимулирует использовать List-Unsubscribe?


      1. gre
        14.02.2019 10:26

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


  1. boilroom
    14.02.2019 03:13
    +1

    Отписка от рассылок в ящике — это, конечно, здорово. Но, как мне кажется, есть более логичное решение проблемы с тонущими в непрочитанных письмах пользователями. Например у меня есть друг, который регулярно заявляет мне что-то вроде «О, я не заметил, что у меня стало 1492 непрочитанных письма вместо 1491, поэтому-то я ничего не прочитал/не ответил/не знаю». И бороться с этим бесполезно. Потому, что он раздолбай. И при этом его полностью устраивает эта ситуация. Предпринимать какие-либо действия ему будет просто лень. Даже если 80% работы за него уже сделал умный алгоритм. И письма продолжат «уходить в пространство». Даже если он отпишется от всех рассылок и пометит все письма из них как прочитанные, то у него все равно останется 689 непрочитанных «новых» писем. В результате ничего, в общем, не поменяется. Разве что число новых писем будет меняться медленнее, что даст больший шанс на то, что эти изменения будут замечены и заинтересуют пациента пользователя.

    Я бы попробовал действовать иначе. Если так классно получается определять рассылки, то почему бы вместо «у вас 1492 письма» не писать «у вас 1492 (3) письма»? В скобках ставить цифру потенциально важных непрочитанных писем. Ну а в самом интерфейсе отмечать такие письма так, чтобы они отличались от всех остальных: подсвечивать другим цветом или что-нибудь такое. Остается вопрос, что должно входить в потенциально важные письма. Как минимум — это не рассылки. Еще бы я подумал о том, как не допустить ситуацию «у вас 15 412 (831) письма». Возможно, стоит сделать временное окно, при выходе за которое письмо перестает быть потенциально важным и становится просто непрочитанным и т.д и т.п. Мне такой подход кажется более предпочтительным и потенциально эффективным. Хотя еще раз повторю — отписка от рассылок это тоже отлично, но можно совмещать подходы.


    1. bkar
      14.02.2019 10:18

      «у вас 1492 (3) письма»? В скобках ставить цифру потенциально важных непрочитанных писем.

      Предложение на миллион!

      Остается вопрос, что должно входить в потенциально важные письма.

      Для меня:
      – адреса, на которые я сам когда-либо что-то писал (отвечал).
      – адреса, которые я сам включу в список «потенциально важные».

      Не менее важен вопрос, что не должно входить с список потенциально важного.
      Предложу:
      — адреса, которые я сам вычеркнул из списка «возможно важно».
      — владельцы почт, не застпамляйте своими «очень важными» рассылками ящики которые у вас открыли.
      — не подпускайте искусственный интеллект, чтобы он за меня решал что куда сортировать. Важнейшее качество такого списка — его 100% предсказуемость.


  1. crackpot
    14.02.2019 12:54

    Вот просто например.
    Есть сферический сервис в вакууме — service.tld. Этот сервис шлёт с info@service-mail.tld письма с маркетингом ("черная пятница", етц) и письма "ваша подписка продлена".
    Юзер получает за год 3-5 писем с маркетингом, "отписывается" от рассылки, и в итоге уведомления о продлении подписки или, что хуже, невозможности продления (карта кончилась) не увидит. Как быть?


    1. BarakAdama
      14.02.2019 13:04

      На этот случай:

      Этот страх побудил нас доработать решение так, чтобы важные письма из скрытых рассылок всё равно попадали во входящие. К примеру, если вы отказались от новостной рассылки интернет-магазина, вы продолжите получать сообщения о сделанных в нём заказах. Для этого пришлось повозиться с машинным обучением, но оно того стоило.


      1. crackpot
        14.02.2019 13:12

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


        Забороть спам — намерение, безусловно, благое. Но мы все ведь знаем, куда такие намерения могут привести.


        1. Melkij
          14.02.2019 13:23

          способ описать «важное» письмо самим письмом

          Ну и будет весь спам с этой меткой, в итоге эту метку большинство будут игнорировать


  1. Suntechnic
    14.02.2019 16:58

    Вобщем инструмент получился классный для статьи на хабре, но для реальной жизни слабо применим:

    1. Массового выделения нет
    2. Оценка полезности (я доверяю алгоритму) куда-то подевалась по пути к пользователю

    Из-за этого не понятно как этим пользоваться. Сидеть кликать 200 чекбоксов? Писать в коносли браузера скрипт который их кликнет? Ну предположим для кого-то это решит проблему 1. Но мне лень.
    А ведь можно было сделать вверху три кнопки Выделить редкочитаемые, Выделить нечитаемые, Выделить все.


    1. aimh
      15.02.2019 09:47

      Массовое выделение действительно было бы удобно


      1. Suntechnic
        15.02.2019 11:18

        Во-во. Когда вижу такие интерфейсы, первый же вопрос возникает — кто это делает? Почему он получает за это деньги? Возьмите лучше меня.
        Хотя я и понимаю, что возможно мои рассуждения дилетантские.


  1. aimh
    15.02.2019 11:26

    Вот у меня вопрос возник. То есть по факту новый инструмент не отписывает от рассылки? То есть они помещаются в «скрытые». Так что ли? И если из скрытых их вернуть обратно, то они снова начнут приходить? Не надо будет снова подписываться?


    1. BarakAdama
      15.02.2019 13:16

      Да, так.


      1. aimh
        15.02.2019 14:14

        А письма которые были в промежутке между включенном и выключенном состоянии где то можно посмотреть? Куда они деваются? Они же по факту приходили.

        И еще вопрос со стороны копании, которая отправляет рассылки клиентам. Будет ли это как то влиять на корректность email-статистики? Количество получений, открываемость, спам и все такое?


        1. BarakAdama
          15.02.2019 19:58

          Они помещаются в Корзину, откуда их можно достать в течение 30 дней.


  1. Anastasia_K
    15.02.2019 12:56

    очень крутая идея, но реализация…
    зашла в почту. ткнула в рассылки. вылезло окно с 200+ рассылками. рандомно в них потыкала, во всех письма старые. я отписалась от них ручками уже давно. искать среди такой пачки актуальные? занятие крайне неблагодарное. выделить все каким либо образом? полезные пропадут.
    нужно как минимум сортировать «приходили за последний месяц-пол года-год»