Сообщения об ошибках все еще остаются незаслуженно обделенной вниманием частью UX, но именно от них зачастую зависит доверие аудитории. Сегодня мы попытаемся разобраться, как писать сообщения об ошибках, которые помогут нашим пользователям быстро исправить ситуацию и продолжить свой путь к достижению цели.
Одна из наиболее часто игнорируемых составляющих современных цифровых продуктов — работа с ошибками. Мы так заняты проектированием идеальных сценариев, что часто забываем уделять столько же внимания и заботы тем моментам, когда всё идет не так.
Наши продукты изобилуют тупиками, бессмысленными кодами ошибок, которые могут расшифровать только разработчики, и раздражающими причудливыми деталями, которые лишь сбивают людей с толку. Даже если мы находим время на создание полезных сообщений об ошибках, мы редко документируем такие решения, чтобы их можно было легко стандартизировать и использовать повторно.
Вот как писать сообщения об ошибках, которые помогут пользователям быстро исправить ситуацию и продолжить свой путь к цели.
Изучите типы ошибок, с которыми может столкнуться пользователь
Первый шаг — определить, какие типы ошибок могут возникнуть в процессе взаимодействия.
Например:
- ошибки внутри форм, связанные с отсутствием или вводом неправильных данных
- ошибки валидации вводимых пользователем значений
- страницы ошибок, например, 404 или 500
- поисковые запросы, не дающие результатов
- потеря интернет-соединения
Аудит всех возможных проблемных точек продукта поможет составить общее представление о том, какие сообщения об ошибках необходимо продумать.
Пишите как человек
К счастью, сегодня мы встречаем гораздо меньше бессмысленных сообщений об ошибках, однако еще 5–10 лет назад было практически невозможно зайти в сеть и не столкнуться с загадочными шифровками, типа «Error: Exception Processing Code: 038638638638».
Тем не менее даже в современных сообщениях об ошибках по-прежнему нередко есть что-то роботизированное. Например, формулировка «Произошла ошибка» не несет в себе никакого смысла. Это все равно что сказать: «Случилось что-то плохое», а потом уйти.
Вместо этого представьте, что вы сидите рядом с пользователем и мягко направляете его к решению проблемы. Прочитайте сообщение вслух и подумайте, похоже ли это на то, что вы бы сказали в реальном разговоре.
Пара примеров:
Вместо «Недействительный ввод» напишите «Пожалуйста, введите 6-значный код, который мы отправили вам по электронной почте».
Вместо «WiFi-соединение не обнаружено» — «Похоже, вы не в сети. Пожалуйста, подключитесь к WiFi и попробуйте снова».
Хороший пример есть на сайте Monzo. Если пользователь хочет изучить доступные варианты займов — а это можно сделать только в приложении — он видит четкое сообщение: «Для этого вам понадобится ваш телефон».

В данном случае подход Monzo настолько ориентирован на действия, что вы можете не заметить ошибку вовсе.
Не переборщите с причудливостью
Хотя сообщения об ошибках действительно более эффективны, когда они написаны разговорным языком, важно не заходить слишком далеко.
Написать «Хммм, это выглядит не совсем правильно», «Упс, ошибочка вышла!» или показать милую иллюстрацию грустного робота на странице 404 — это быстрый способ вызвать раздражение у пользователей в и без того неприятной ситуации.
Недавно один из интернет-магазинов назвал меня «глупышкой» за то, что я пропустила точку в адресе электронной почты. Я сразу же бросила корзину и отправилась искать футболку в другом месте. Когда что-то идет не так, мне не нужно, чтобы вы были моей веселой тетушкой — мне нужно, чтобы вы помогли мне это исправить.
Ошибки — это препятствия. Иногда они неизбежны, но если мы уважаем наших пользователей, мы должны поставить во главу угла ясность и эмпатию. Это точно не самый удачный момент, чтобы «добавить опыту индивидуальности».
Шутки и причуды могут восприниматься как пренебрежение, особенно если пользователь испытывает стресс или пытается завершить какую-то важную задачу. Представьте, что вы опаздываете на собеседование и получаете «Упс!» от приложения для покупки билетов на поезд.
Спросите себя:
- Сработает ли это сообщение для человека, у которого плохой день?
- Может ли эта формулировка обесценить проблему?
- Помогаем ли мы пользователям разобраться в ситуации или просто выпендриваемся?
Если сомневаетесь, сбавьте обороты.
Используйте активный залог (особенно актуально для английского языка)
Использование активного или действительного залога — один из самых эффективных способов улучшить UX в целом, и особенно, когда дело доходит до сообщений об ошибках.
Активный залог говорит нам, кто какое действие совершает, в то время как пассивный или страдательный залог оставляет больше вопросов, чем ответов.
Например:
«Ваша заявка не может быть обработана».
Кем обработана? Что пошло не так? Что мне с этим делать?
Вместо этого скажите:
«Мы не смогли обработать вашу заявку, потому что тип файла, который вы прикрепили, не поддерживается. Пожалуйста, прикрепите файл в формате jpeg и повторите попытку».
Активный залог позволяет обозначить, почему произошла ошибка, и дать четкие инструкции, следуя которым пользователи могут спокойно и легко двигаться вперед.
Четко скажите, что делать
Есть две категории ошибок:
- ошибки, которые пользователь может исправить — например, ошибки в полях формы или потеря WiFi-соединения
- ошибки, которые пользователь не может исправить — например, сбой в системе
В обоих случаях важно предложить людям следующий шаг, чтобы помочь им продвинуться в решении стоящих перед ними задач.
Для ошибок первой категории мы должны четко указать, что нужно сделать. Например:
Вместо «Платеж не прошел» напишите «Проверьте реквизиты вашей карты или попробуйте другой способ оплаты».
Вместо «Поле “Имя” не может быть пустым» — «Введите ваше имя».
Для ошибок второй категории также важны понятные указания. Например, если код ошибки 500 (внутренняя ошибка сервера), мы не должны ограничиваться общей фразой «Возникли проблемы». Мы можем:
- предложить конкретное действие: «Пожалуйста, повторите попытку позже».
- предоставить альтернативный способ связи: «Если вам нужна помощь, вы можете позвонить нам по телефону [номер]».
- рассказать, что произошло с предоставленными данными: «Мы зафиксировали ваши ответы и будем хранить их в течение 30 дней».
Мне очень нравится этот пример от The Wellcome Trust. Если поиск по сайту не дал никаких результатов, посетители видят список действий, которые они могут предпринять, чтобы исправить ситуацию (например, проверить запрос на опечатки, добавить в него более общие или более конкретные термины).

Будьте последовательны
Последовательные сообщения об ошибках помогают пользователям быстрее разбираться, что к чему, и двигаться вперед. Они также облегчают дизайнерам работу, поскольку нам не приходится придумывать каждое сообщение с нуля.
Для распространенных ошибок, таких как страница 404 или отсутствие результатов поиска, мы можем задокументировать выбранные формулировки как часть наших паттернов проектирования для этих сценариев.
Что касается сообщений, которые зависят, например, от того, какую информацию предоставил пользователь, мы можем заранее подготовить для них универсальные текстовые шаблоны. Например:
- если поле пустое: «Введите ваше [то, что отсутствует]».
- если введенное значение слишком длинное: «[что было введено] должно быть [ограничение по количеству символов] или меньше».
Именно такой подход реализован в дизайн-системе GOV.UK. Здесь есть:
- специфические сообщения об ошибках для конкретных полей, таких как адрес электронной почты,
- шаблоны для общих компонентов, таких как текстовые поля.

Заключение
Сообщения об ошибках все еще остаются незаслуженно обделенной вниманием частью UX, но именно от них зачастую зависит доверие пользователей.
Когда мы относимся к ошибкам вдумчиво и с эмпатией, мы не только помогаем людям двигаться дальше, но и показываем, что ценим их время, цели и опыт.
В конечном итоге, если нам удается отлично справляться с ситуациями, когда что-то идет не по плану, мы закладываем основу для более комфортного и эффективного опыта в целом.