Реалізація Rewarded Ads для мобільної гри

Гравець щойно програв на 10-му рівні — витратив 15 хвилин, злість і бажання кинути. Правильно розміщена Rewarded Ads перетворює цю фрустрацію на дохід без втрати лояльності. Але неправильна інтеграція руйнує баланс економіки та зменшує retention. Ми займаємося rewarded-інтеграцією 5+ років, реалізув

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Реалізація Rewarded Ads для мобільної гри
Простий
~2-3 дні

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Гравець щойно програв на 10-му рівні — витратив 15 хвилин, злість і бажання кинути. Правильно розміщена Rewarded Ads перетворює цю фрустрацію на дохід без втрати лояльності. Але неправильна інтеграція руйнує баланс економіки та зменшує retention. Ми займаємося rewarded-інтеграцією 5+ років, реалізували 30+ проєктів для iOS та Android — від гіперказуальних до RPG. Один із кейсів: після налаштування continue-after-fail retention зріс на 12%, а eCPM збільшився на 25%. Середній ріст eCPM після нашого налаштування — 25-40% (наприклад, з $6 до $9 для одного з проєктів). Розберемо технічні нюанси та підводні камені.

Як вибрати placement для Rewarded Ads?

Placement — це точка в ігровому циклі, де в гравця виникає потреба, яку він готовий «оплатити» переглядом реклами. Найефективніші:

  • Continue after fail — конверсія 30–50% за умови, що гравець не бачив рекламу на цьому екрані раніше. Показуємо після onGameOver, до екрану результатів. Ліміт: 1–2 рази за спробу.
  • Daily bonus multiplier — «дивись рекламу — отримай x3 до щоденної нагороди». Не порушує баланс, конверсія стабільно висока.
  • Extra currency / chest unlock — конкретна пропозиція: «+50 gems» замість «бонус». Працює в головному меню або після рівня.
Placement Конверсія Вплив на Retention Рекомендований ліміт
Continue after fail 30–50% Нейтральний (при ліміті) 1–2 за спробу
Daily bonus multiplier 20–35% Позитивний 1 раз на день
Extra currency 15–25% Нейтральний 3–5 разів на день

Як технічно інтегрувати rewarded на Unity?

Використовуємо SDK AdMob (Google Mobile Ads) або IronSource (LevelPlay). Для AdMob ініціалізація:

private RewardedAd rewardedAd; public void LoadRewardedAd() { var adUnitId = Application.platform == RuntimePlatform.Android ? "ca-app-pub-xxx/yyy" : "ca-app-pub-xxx/zzz"; RewardedAd.Load(adUnitId, new AdRequest(), (ad, error) => { if (error != null) { Debug.LogWarning($"Rewarded load failed: {error}"); return; } rewardedAd = ad; RegisterRewardedAdEvents(rewardedAd); }); } private void RegisterRewardedAdEvents(RewardedAd ad) { ad.OnAdFullScreenContentClosed += () => { LoadRewardedAd(); }; } public void ShowRewardedAd(System.Action<int> onRewarded) { if (rewardedAd == null || !rewardedAd.CanShowAd()) { Debug.Log("Rewarded not ready"); return; } rewardedAd.Show(reward => { onRewarded?.Invoke(reward.Amount); }); } 

IronSource (LevelPlay) вимагає виклику IronSource.Agent.loadRewardedVideo() заздалегідь, а кнопку показувати тільки при IronSource.Agent.isRewardedVideoAvailable() == true.

void Start() { IronSource.Agent.loadRewardedVideo(); } public void OnShowRewardedClicked() { if (IronSource.Agent.isRewardedVideoAvailable()) { IronSource.Agent.showRewardedVideo(); } } private void OnRewardedVideoAdRewarded(IronSourcePlacement placement) { int rewardAmount = placement.getRewardAmount(); // нарахувати нагороду } 
SDK SSV-підтримка Простота інтеграції eCPM (середнє)
AdMob + (ECDSA) Середня $8-12
Unity Ads + Проста $6-10
IronSource + (LevelPlay) Складна (потрібне налаштування waterfall) $10-15

Чому серверна верифікація (SSV) обов'язкова?

Якщо rewarded дає тверду валюту (gems, crystals) — без SSV нагороди накручуються інструментами типу Frida за кілька хвилин. AdMob SSV обробляє callback швидше за IronSource, що знижує затримку нарахування на 200 мс. Схема:

  1. Клієнт передає userId та унікальний nonce у customData при запиті реклами.
  2. AdMob/IronSource включають їх у SSV-callback на ваш backend з ECDSA-підписом.
  3. Сервер перевіряє підпис, унікальність nonce (щоб один callback не пройшов двічі) та нараховує валюту.

Реалізація клієнта — 0.5 дня, серверна частина — 1 день з тестуванням.

Приклад обробки SSV-коллбеку на Python
from flask import Flask, request from ecdsa import VerifyingKey import json app = Flask(__name__) @app.route('/ssv_callback', methods=['POST']) def ssv_callback(): data = request.json signature = data['signature'] payload = data['payload'] vk = VerifyingKey.from_pem(open('public_key.pem').read()) if vk.verify(signature, payload.encode()): # Перевірити nonce в Redis return 'OK', 200 return 'Invalid signature', 400 

Які ліміти показів ставити?

Ліміти мають бути на сервері, а не тільки на клієнті (PlayerPrefs скидаються). У проєкті з MMO-грою ми налаштували ліміти через Redis, щоб гарантувати унікальність nonce навіть при високому RPS. Типові: 5–10 rewarded/день для валюти, 1–2/день для continue. Жорсткий ліміт вбиває дохід, м'який — руйнує економіку. Рекомендуємо починати з 8 rewarded/день і A/B-тестувати крок у ±2. A/B-тестування дозволяє знайти баланс між доходом та економікою без ризику.

Як ми інтегруємо rewarded ads: покроковий процес

  1. Аудит поточної інтеграції (якщо є) та рекомендації щодо збільшення eCPM.
  2. Підбір placement під вашу ігрову економіку.
  3. Реалізація на Unity (AdMob, IronSource) або нативних SDK (iOS/Android).
  4. Налаштування SSV-бекенду (будь-який стек: Node.js, Python, Go).
  5. A/B-тестування placement та лімітів.
  6. Документація та 1 місяць підтримки.

Що ви отримуєте в результаті

Після завершення роботи ви отримуєте:

  • Робочі rewarded placements з оптимізованим часом показу.
  • Серверну верифікацію SSV із захистом від накруток.
  • Документацію за ключовими скриптами та конфігами.
  • Доступ до бекенд-коду для самостійного доопрацювання.
  • 1 місяць технічної підтримки та консультацій.

Строки орієнтовно

Базова інтеграція з 2–3 placement та лімітами — від 2 днів. Із SSV та серверною логікою нагород — від 3 днів. Вартість розраховується індивідуально.

Замовте аудит вашої поточної інтеграції — безкоштовно оцінимо проєкт. Зв'яжіться з нами для консультації.