← Назад к вопросам

Как увеличил revenue проекта на 50%?

1.0 Junior🔥 182 комментариев
#Опыт и софт-скиллы

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

🐱
deepseek-v3.2PrepBro AI6 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Увеличение Revenue на 50%: стратегия и реализация в Unity-проекте

В моей практике был ключевой случай, когда мы увеличили revenue мобильного гиперказуального проекта на 50% за один квартал. Это было достигнуто не одним «волшебным» изменением, а комплексным data-driven подходом, сочетающим монетизацию, аналитику и геймдизайн.

Анализ исходной ситуации

Проект имел стабильную, но низкую монетизацию: в основном за счет интерстициальной рекламы между уровнями и нескольких non-disruptive баннеров. Показатель ARPDAU (Average Revenue Per Daily Active User) был ниже рынка. Мы провели аудит:

  1. Анализ метрик: с помощью Unity Analytics и AppMetrica выявили «точки холода» — моменты, где пользователи чаще всего уходили, не видя ценности во внутриигровых покупках.
  2. A/B тестирование: протестировали несколько моделей показа рекламы (частоту, тип) и ценовые позиции IAP.
  3. Сбор фидбека: изучили отзывы в магазинах приложений и результаты опросов.

Ключевые изменения, давшие результат

1. Внедрение гибридной монетизации с акцентом на rewarded video

Мы полностью переработали систему вознаграждений:

  • Заменили статичные «получи +50 монет» на контекстные предложения: «Удвой награду за уровень», «Восстанови жизнь сейчас», «Получи уникальный скин для героя».
  • Интегрировали IronSource и AppLovin MAX для оптимизации заполнения и eCPM. Написали кастомный менеджер, который выбирал сеть с лучшим предложением в реальном времени.
// Упрощенный пример менеджера показа rewarded video
public class AdRewardManager : MonoBehaviour
{
    public void ShowDoubleRewardVideo(string placement)
    {
        // 1. Проверяем доступность рекламы в приоритетной сети
        if (IronSource.Agent.isRewardedVideoAvailable())
        {
            IronSource.Agent.showRewardedVideo(placement);
        }
        // 2. Фоллбек на альтернативную сеть
        else if (AppLovin.HasPreloadedRewardedAd())
        {
            AppLovin.ShowRewardedAd(placement);
        }
        else
        {
            // 3. Показываем native offer wall как последний вариант
            ShowFallbackOffer();
        }
    }

    // Обработка награды (используется ScriptableObject для гибкости)
    public void OnRewardReceived(RewardScriptableObject reward)
    {
        CurrencyManager.Instance.AddCurrency(reward.currencyType, reward.amount);
        Analytics.Instance.LogEvent("rewarded_video_completed", 
            new Dictionary<string, object> { {"placement", reward.placementId} });
    }
}

2. Переработка первой монетизационной воронки (First Time User Experience — FTUE)

Раньше первая покупка/просмотр рекламы происходили слишком поздно. Мы изменили это:

  • Добавили щадящий обязательный просмотр rewarded video на 3-м уровне, где игрок оказывался в ситуации нехватки ресурса для комфортного прохождения. Но давали выбор: посмотреть видео ИЛИ подождать 10 минут.
  • Внедрили специальный стартовый набор (Starter Pack) за 0.99$, который появлялся после 5-го уровня и содержал в 5 раз больше ценности, чем стандартная покупка. Его CTR (click-through rate) составил 15%.

3. Событийный движок и limited-time offers

Мы создали систему динамических событий (например, «Уикенд х2 на награды», «Турнир на лучший счет»), которая повышала retention и создавала естественный повод для монетизации.

  • События подогревали азарт и желание получить конкурентное преимущество.
  • В рамках событий предлагались специальные бандлы (наборы товаров), стоимость которых пользователи воспринимали как более выгодную.
// Пример структуры данных для limited-time offer
[CreateAssetMenu(fileName = "TimeOffer", menuName = "Monetization/TimeLimitedOffer")]
public class TimeLimitedOffer : ScriptableObject
{
    public string offerId;
    public string title;
    public Sprite icon;
    public List<InventoryItem> items; // Список предметов
    public float discountPercent; // Скидка для отображения
    public float price;
    public DateTime startTime;
    public DateTime endTime;

    public bool IsActive()
    {
        return DateTime.Now >= startTime && DateTime.Now <= endTime;
    }

    public float GetOriginalPrice()
    {
        return price / (1 - discountPercent / 100f);
    }
}

4. Глубокая аналитика и итерация

Каждое изменение отслеживалось. Мы смотрели не только на общий revenue, но и на:

  • LTV (Lifetime Value) когорт.
  • Изменение retention (нельзя было допустить его падения).
  • Соотношение источников дохода (IAP vs Ads).

Итог

Рост на 50% был достигнут за счет:

  • Увеличения ARPDAU на 40% благодаря более умным и вовлекающим rewarded videos.
  • Роста конверсии в первую покупку с 1.5% до 4.5% после переработки FTUE и введения стартового набора.
  • Увеличения session count на 15% за счет событий, что автоматически повысило общее количество рекламных показов.

Главный вывод: успех принес синергетический эффект от тонкой настройки монетизации под петли геймплея, а не агрессивное навязывание рекламы или покупок. Мы сохранили позитивный user experience, сделав платежи и просмотры рекламы желаемым и выгодным действием для самого игрока.

Как увеличил revenue проекта на 50%? | PrepBro