Каждый разработчик мобильных приложений хорошо знает, какую важную роль играют отзывы и оценки приложений. Недостаточное количество оценок может вызвать недоверие к вашему приложению. Низкий средний уровень может удержать пользователей от загрузки из-за опасений по поводу его качества.
В этой статье мы собрали лучшие практики по запросу оценки приложения, которые мы почерпнули из разработки приложений и опроса других разработчиков. Мы рассмотрели 19 пунктов, в том числе избегание запроса оценки, когда у пользователя разряжен аккумулятор, уход от отвлекающихся пользователей и приостановка запросов после значительных обновлений. Мы также подскажем вам, как интегрировать эти тактики в ваше приложение с минимальными усилиями. Продолжайте читать, чтобы узнать, как эффективно оптимизировать запрос отзыва в вашем приложении!
О том, как можно использовать Critical Moments SDK для реализации всех этих концепций, читайте в разделе «Инструментарий».
Об оптимизации рейтинга
Существует два типа пользователей, которые оценивают ваше приложение.
Во-первых, пользователи, которые специально заходят в App Store с единственной целью — оставить отзыв на ваше приложение. Во-вторых, пользователи, которых вы просите оставить отзыв, после чего они его оставляют.
Вы практически не можете контролировать первую группу пользователей, которые сами заходят в App Store, чтобы оставить отзыв о вашем приложении. Вы не можете ни предсказать их действия, ни предотвратить их. Секрет, который мы узнали за годы работы над отзывами приложений, заключается в том, что средняя оценка этих пользователей обычно значительно ниже, чем оценка второй группы — тех, кто соглашается оставить отзыв по запросу.
Почему так происходит? Оказывается, пользователи, столкнувшиеся с проблемой или разочарованием, более склонны оставлять отзывы, чем те, кто доволен вашим приложением.
Например, давайте сравним встроенное приложение Apple «Калькулятор» и приложение-калькулятор от стороннего разработчика:
Почему приложение Apple Calculator, предположительно с гораздо большей базой пользователей, имеет менее 1% от общего числа отзывов стороннего приложения и в среднем в 15 раз больше однозвездочных оценок? Ответ прост: Apple не побуждает пользователей оставлять отзывы о своем приложении. В рейтинге участвует в основном недовольное меньшинство (пользователи первого типа), и это видно. Apple не нужно уделять приоритетное внимание рейтингам, поскольку их приложение предустановлено, и большинство пользователей, скорее всего, никогда не посетят его страницу в App Store. Как у разработчика приложений, у вас нет такой шикарной возможности.
Вот отличный способ подумать о том, как побудить пользователей оставить отзыв о вашем приложении:
Вы запрашиваете отзывы у своих пользователей, чтобы отразить молчаливое удовлетворенное большинство в рейтинге App Store. Если вы этого не сделаете, ваш рейтинг вскоре будет понижен активным недовольным меньшинством.
К счастью для качественных приложений, довольных пользователей обычно гораздо больше, чем недовольных. Всегда надо инициировать призывы к оставлению оценок, чтобы значительно повысить рейтинг вашего приложения в App Store. Но тонкая настройка частоты, выбора пользователей и времени может значительно повлиять на рейтинг вашего приложения.
Проверьте состояние устройства
Есть определенные моменты, которые всегда плохо подходят для того, чтобы просить пользователей оценить приложение.
Низкий уровень заряда батареи или режим пониженного энергопотребления
Когда уровень заряда батареи критически низкий, пользователи вряд ли захотят тратить время на просмотр приложения.
Пример условия:
device_battery_level > 0,2 && !device_low_power_mode
Отсутствие подключения к Интернету или режим низкой передачи данных
Неэффективно запрашивать отзывы, если у пользователя нет подключения к интернету. Поскольку запрос на отзыв может быть показан только ограниченное количество раз в одном приложении, старайтесь не тратить его, когда пользователь находится в автономном режиме или в режиме низкого объема данных.
Пример фильтра:
has_active_network && !low_data_mode
Отвлечения пользователя
Пользователь, который разговаривает по телефону, слушает подкаст или ведет машину, скорее всего, отвлекается и не в состоянии оставить отзыв.
Пример:
!on_call && !other_audio_playing && !has_car_audio
Устройство неактивно
Часто люди откладывают или блокируют телефон сразу после выполнения задачи в приложении. Избегайте показывать приглашение к просмотру, если устройство лежит экраном вверх или вниз, или если экран заблокирован. Помните, что Apple ограничивает частоту появления подсказок, поэтому важна каждая возможность.
Пример:
device_orientation != 'face_up' && device_orientation != 'face_down' && foreground
Не спрашивайте слишком часто
Регулярные просьбы пользователей оставить отзыв могут стать назойливыми. Apple даже устанавливает ограничения на частоту отображения запроса на отзыв. Если вы решили внедрить запрос на оставление отзыва, важно проверить, когда вы в последний раз спрашивали об этом пользователей, прежде чем показывать его.
Пример:
(eventCount('ask_for_review') == 0 || lastEventTime('ask_for_review') < now() - duration('21d'))
Проверьте версию приложения
Всегда учитывайте версию приложения, в котором работает пользователь, прежде чем просить его оставить отзыв. Имейте в виду, что эти значения могут меняться со временем, поэтому требуется возможность обновления по воздуху, чтобы передать новые значения старым клиентам.
Избегайте устаревших версий приложений
Некоторые пользователи могут нечасто обновлять свои приложения. Не просите таких пользователей оставлять отзывы, особенно если они используют старую версию приложения, в которой могут быть известные ошибки или проблемы совместимости с API сервиса.
Пример:
versionGreaterThan(app_version, '2.4.0')
Релизы с ошибками
Не просите пользователей просмотреть ваше приложение, если они используют версию с серьезными известными ошибками.
Пример:
app_version not in ['buggy_version_1', 'buggy_version_2'].
Кроме того, воспользуйтесь нашими инструментами обмена сообщениями, чтобы уведомить пользователей затронутых сборок о доступных обновлениях, устраняющих эти ошибки!
Учитывайте устройство пользователя
Тип и состояние устройства, с которым работает пользователь, может негативно повлиять на его впечатления. Возможно, вы захотите отфильтровать информацию на основе характеристик устройства.
Исключите старые версии ОС
Если ваше приложение использует новые API или лучше работает на последних версиях ОС, не запрашивайте отзывы на устаревших версиях ОС.
Пример:
!versionLessThan(os_version, '17.0')
Исключите версии ОС с известными ошибками
Иногда новые обновления ОС от Apple/Google содержат ошибки, которые негативно влияют на функциональность приложений и приводят к плохим отзывам. Отфильтруйте эти версии, чтобы избежать получения отзывов в такие периоды. Используйте OTA-обновления, чтобы предотвратить появление запросов на отзывы на проблемных версиях ОС.
Пример:
os_version not in ['14.3.2', '14.3.3'].
Категории устройств
Если ваше приложение оптимизировано для определенных типов устройств, например телефонов, планшетов, CarPlay или телевизоров, сконцентрируйте запросы на отзывы в соответствии с этой платформой:
Пример:
user_interface_idiom == 'phone'
Исключите старые устройства
Приложения, требующие много памяти или графики, могут работать не так хорошо на старых устройствах. Несмотря на то что полезно обеспечивать работоспособность вашего приложения на старых устройствах, рекомендуется направлять запросы на оценку на устройства, где приложение работает оптимально.
Пример:
((device_model_class == 'iPhone' && versionGreaterThan(device_model_version, '13.0') || (device_model_class == 'iPad' && versionGreaterThan(device_model_version, '11.0'))
Проверьте локализацию
Не все приложения поддерживают все языки. Пользователи, для которых языки интерфейса вашего приложения не являются родными, могут воспринимать его не так легко, как другие.
Пример:
locale_language_code IN ['en', 'es', 'de']
Сделайте паузу после крупных обновлений
После внесения значительных изменений в пользовательский опыт (UX) вашего приложения дайте пользователям некоторое время на адаптацию, прежде чем просить об отзывах. Крупные обновления могут поначалу запутать или расстроить пользователей, что может привести к временному падению рейтинга, даже если обновление будет полезным в долгосрочной перспективе. Эта пауза также дает вам время найти и исправить все реальные UX-проблемы, которые вы могли внести в обновление!
Пример для значительного обновления приложения, версии 2.0:
app_version not in ['2.0', '2.0.1', '2.0.2']
Проверьте основные разрешения
Некоторые приложения требуют определенных разрешений для оптимального функционирования. Если пользователем отказано в этих важных разрешениях, подождите, пока проблема не будет решена, и попросите пересмотреть приложение.
Примеры:
- Для фоторедактора, которому нужен доступ к камере или фотобиблиотеке:
(camera_permission == 'authorized' || photo_library_permission == 'authorized')
- Для приложения для отслеживания бега, которое полагается на GPS:
location_permission_detailed == 'authorized_always'
- Для приложения «умный дом», где необходим Bluetooth:
bluetooth_permission == 'authorized'
- Для приложения для чата, которое будет гораздо лучше, если сможет получить доступ к контактам:
contacts_permission == 'authorized'
Тут приведены примеры того, как Critical Moments может помочь решить подобные проблемы.
Запрашивайте в нужное время
Время имеет решающее значение, когда речь идет о просьбе оставить отзыв о приложении. Вот несколько моментов, которые следует учитывать, чтобы оптимизировать время подачи запроса на рецензию.
Обеспечьте достаточный пользовательский опыт перед обзором
Дайте пользователям достаточно времени, чтобы ознакомиться с основными функциями вашего приложения, прежде чем просить их оставить отзыв. Это гарантирует, что они получат всесторонний опыт, на котором будет основываться их отзыв.
Напримtр:
- Для игры:
max_level_reached >= 5
- Для приложения для изучения языка:
eventCount('selected_language') > 0 && eventCount('completed_written_lesson') > 2 && eventCount('completed_spoken_lesson') > 2
- Для приложения для медитации:
eventCount('completed_meditation') > 3
- Убедитесь, что приложение установлено не слишком давно:
app_install_date < now() - duration('7d')
Спрашивайте после «момента Ага»
У каждого приложения есть особый момент, когда пользователь чувствует его ценность: достижение страйка в Duolingo, завершение медитации в Calm или окончание резервного копирования фотографий в Google Photos. В этот момент пользователь испытывает максимальную благодарность за приложение и его место в его жизни. Это лучшее время для того, чтобы попросить написать отзыв о приложении!
И, пожалуйста, не спрашивайте сразу после запуска приложения или когда пользователь находится в середине работы. Это верный способ получить разочарованные отзывы.
С помощью Critical Moments вы можете попробовать различные триггеры для отображения запроса на отзыв о приложении, чтобы найти оптимальный вариант для вашего приложения. В том числе можно обновлять триггеры по воздуху, без обновления приложения.
Избегайте негативного опыта
Лучше всего не запрашивать отзыв у пользователей, которые явно имеют негативный опыт работы с вашим приложением. Некоторые примеры того, как различные приложения могут это определить:
- Для игры, в которой пользователь часто проигрывает:
eventCount('level_failed') / eventCount('level_passed') < 2.0
- Для социального приложения, где пользователь не следит за многими людьми:
follow_count < 5
- Для приложения для резервного копирования, которому мешает низкая скорость интернета или резервное копирование еще не завершено:
total_bytes_backed_up / total_backup_time_s > 750 && total_bytes_backed_up / total_bytes_to_back_up > 0,95
Если пользователи испытывают трудности, можно использовать обратные условия, чтобы помочь пострадавшим пользователям решить их проблему!
Приостанавливайте подсказки, когда это необходимо
Иногда внешние факторы, такие как перебои в работе сервиса или недавнее повышение цен, могут заставить вас временно прекратить запрашивать отзывы у пользователей.
Будьте креативны!
В конечном счете, в каждом приложении есть уникальные моменты, когда пользователи с наибольшей вероятностью оставят положительный отзыв. Определите и эффективно используйте эти возможности.
Например:
- Для приложения, предлагающего концерты, которое использует библиотеку Spotify:
canOpenUrl('Spotify:')
- Для приложения, используемого для навигации в нью-йоркском метро, которое лучше всего использовать местным жителям:
location_approx_city == 'New York' && location_approx_region == 'NY'
- Для погодного приложения в определенные погодные условия:
weather_condition IN ['Rain', 'Snow'] && weather_cloud_cover > 0.80
- Для приложения, ориентированного на бизнес, в рабочее время:
formatTime(now(), 'hod') => 9 && formatTime(now(), 'hod') < 17
- Приложение для аудиофилов, в котором качество звука не имеет особого значения при работе через Bluetooth:
!has_bt_headphones
У Critical Moments есть более 100 свойств таргетинга, которые могут быть полезны для вашего приложения. Ознакомьтесь со списком, чтобы найти больше идей!
Не будьте слишком строгими
Помните, что поддержание значительного количества запросов имеет решающее значение. Это поможет сбалансировать влияние недовольного меньшинства. Убедитесь, что вы не слишком ограничиваетесь тем, что используете, иначе вы рискуете получить слишком мало отзывов.
Фильтры, встроенные в наш шаблон, либо носят временный характер, либо затрагивают небольшой процент вашей пользовательской базы.
Инструментарий: как создать идеальную систему запроса отзывов
Рассмотренные выше стратегии могут значительно повысить рейтинг вашего приложения, но реализовать их с нуля не так-то просто. Critical Moments разработан для упрощения интеграции сложной системы таргетинга для запроса отзывов (и других оптимизаций).
Да, именно здесь мы рассказываем о том, насколько крут наш инструмент и почему его использование может быть более эффективным, чем разработка собственного решения. Читайте дальше, чтобы понять, согласны ли вы с этим.
Обновления по воздуху (OTA)
Использование обновлений OTA для корректировки логики отображения запросов очень важно для постоянной оптимизации.
Обновления необходимы для таких стратегий, как прекращение показа запросов в случае ошибок или устаревших версий приложений, которые не известны заранее и не могут быть четко прописаны в коде.
Обновления позволяют быстро адаптировать стратегию на всех клиентских устройствах. Без OTA каждое обновление потребовало бы дополнительного обновления и развертывания приложения, что значительно замедлило бы процесс.
Удаленное обновление позволяет быстро проводить A/B-тестирование различных стратегий.
Помните, что если вы пойдете по пути собственной разработки, ваши OTA-обновления должны включать в себя как логику, так и триггеры для ее выполнения.
Мощные свойства
В этом блоге мы упомянули около 20 свойств, полезных для запроса обзоров (например, device_battery_level, os_version, has_active_network и т. д.). Реализация, тестирование и поддержка каждого свойства по отдельности при обновлении ОС может потребовать больших усилий. Critical Moments поддерживает эти свойства, а также около 100 других, которые могут помочь в оптимизации ваших стратегий обзора.
База данных вовлеченности пользователей
Critical Moments отслеживает прохождение пользователей через приложение, создавая частную локальную базу данных на каждом устройстве. Это позволяет обновлять по воздуху условные строки, которые могут запрашивать частоту и периодичность событий в приложении. Мы предлагаем мощные встроенные события для отслеживания сеансов, запусков приложения и выполненных действий. Кроме того, вы можете настроить эту систему с помощью событий, которые соответствуют потребностям вашего приложения.
Все это делается без ущерба для конфиденциальности пользователей: данные полностью остаются на устройстве, а условия оцениваются локально.
Устранение первопричин
Несмотря на то, что избегать запросов об оценке для пользователей, столкнувшихся с проблемами, полезно, еще эффективнее решать их проблемы напрямую. Как правило, это означает разработку высококачественного приложения и быстрое исправление любых ошибок. Однако иногда в релиз могут закрасться непредвиденные проблемы.
С помощью Critical Moments вы можете посылать целевые исправления по воздуху в свои приложения, предотвращая появление негативных отзывов до того, как они появятся.
Если пользователи испытывают трудности с каким-либо аспектом вашего приложения, используйте сообщения в приложении, чтобы указать им на решение, или условные флаги функций, чтобы отключить проблему для затронутых пользователей.
Проактивное уведомление может предотвратить появление негативных отзывов.
Другие примеры:
- Во время перебоев в работе сервиса отправьте нативные сообщения затронутым пользователям по воздуху. Объясните, что проблема известна и решение уже готово.
- Если вы обнаружили проблему с темным режимом на iOS 15, отключите его на затронутых устройствах с помощью удаленного условного флага функции:
dark_mode_enabled = !versionLessThan(os_version, '16.0')
. - Уведомляйте пользователей, у которых установлена версия приложения с известной ошибкой, о выходе нового релиза, содержащего исправление проблемы. Это можно сделать с помощью баннера в приложении, который содержит прямую ссылку на обновление в App Store.
- Передача важного объявления с помощью баннера и/или браузера в приложении. Это может включать показ нативного пользовательского интерфейса в версиях приложения, выпущенных до того, как стало известно об анонсе.
- Пользователь заблокировал разрешения? Покажите модальное окно или баннер с объяснением проблемы, включая глубокую ссылку на настройки для ее решения.
- Если пользователь застрял на сложном уровне игры, порекомендуйте повторить учебник или дайте ему подсказку.
Начинаем работу
Повысить рейтинг своего приложения можно не только собирая как можно больше отзывов, но и грамотно выбирая, когда и кого спрашивать. Инструменты и стратегии, о которых мы рассказали, призваны облегчить эту задачу, помочь вам получить лучшие отзывы и продемонстрировать все лучшее, что может предложить ваше приложение.
Если вы хотите улучшить качество отзывов о своем приложении, почему бы не попробовать некоторые из рассмотренных нами целевых тактик? Начните с легких побед и экспериментируйте, чтобы понять, что лучше всего работает для вашего приложения. Помните, что каждое приложение уникально, и лучшая стратегия для вас будет зависеть от вашей конкретной аудитории и ее потребностей.
Если вы готовы к тому, чтобы поднять свой рейтинг приложений на новую ступень, ознакомьтесь с нашим руководством для разработчиков App Rating, в котором вы найдете пошаговые инструкции по реализации этих идей.