Ефективний Soft Paywall з пропуском для мобільного додатку
Ми інтегруємо Soft Paywall з можливістю пропуску в мобільні додатки, балансуючи монетизацію та користувацький досвід. Такий підхід дозволяє не відлякати користувача на старті, а запропонувати платну підписку після того, як він оцінить цінність продукту. За 5 років роботи ми реалізували 20+ проєктів з paywall-механіками, і результати A/B тестів показують: конверсія при правильних тригерах зростає в 2–3 рази. В одному edtech-додатку перехід від жорсткого paywall до Soft Paywall з skip-кнопкою збільшив конверсію в 4 рази (з 2% до 8%).
Як працює Soft Paywall з пропуском?
Soft Paywall відрізняється від хард-пейволу тим, що користувач може закрити paywall без покупки і продовжити користуватися функціоналом. Згідно з App Store Review Guidelines Section 4.2, кнопка пропуску має бути видна одразу і розташовуватися зручно. Це знижує фрустрацію та покращує сприйняття додатку.
Коли показувати — ефективний soft paywall
Типова помилка — показувати soft paywall при першому відкритті. Користувач ще не зрозумів цінність, закриває — показник «бачив paywall» зростає, конверсія ні. Правильні тригери:
- Після досягнення aha-moment (користувач створив перший проєкт, згенерував перший результат, пройшов перший урок).
- При спробі використати premium-фічу.
- Після N-го сеансу (3–5 відкриттів) — користувач повернувся, отже цінність відчув.
- За часом: на 3-й день використання безкоштовного періоду.
Усі ці тригери керуються через PaywallTriggerManager — логіка на сервері або в Firebase Remote Config. Коли показувати, як часто, через скільки сеансів — це параметри, які A/B тестуються.
Як правильно налаштувати тригери показу?
Тригери поділяються на два типи: event-based і time-based. Подієві — після конкретної дії користувача (створення, завершення). Часові — після визначеної кількості днів або сеансів. Найкращий результат дає комбінація: перший показ — event-based, повторні — time-based з урахуванням cooldown.
| Тип тригера | Приклад | Конверсія (A/B) |
|---|---|---|
| Event-based | Після створення проєкту | 8–12% |
| Time-based | 3-й день використання | 5–7% |
| Intent-based | Спроба premium-фічі | 15–20% |
Наприклад, у додатку для медитації intent-based тригер при спробі відкрити преміум-курс показав конверсію 18%, що на 25% вище, ніж середнє по ринку.
Чому кнопка Skip має бути доступною?
Кнопка «Пропустити» / «Продовжити безкоштовно» — не повинна бути прихованою. Apple при рев'ю відхиляє UI, де Skip умисно розташовано незручно, маленьким шрифтом або з'являється із затримкою. Правило: якщо безкоштовна версія функціонально працює — користувач повинен бачити шлях назад без перешкод.
З технічної сторони: натискання Skip логується в аналітику (Analytics.logEvent("paywall_skipped", parameters: ["trigger": triggerName, "variant": variantId])). Це дані для A/B тесту — різні варіанти paywall мають різний skip rate і conversion rate. Обидва числа важливі: paywall з нульовим skip rate і 1% конверсією гірший, ніж paywall з 40% skip rate і 5% конверсією. Soft paywall з skip-кнопкою конвертує в 2–3 рази краще, ніж жорсткий paywall без альтернатив.
Частота показу
Показувати soft paywall щоразу при відкритті premium-фічі — агресивно і дратує. Стандартна схема: показуємо, якщо lastPaywallShownAt було більше N днів тому АБО якщо користувач сам натиснув на premium-фічу (intent-triggered). lastPaywallShownAt зберігається в UserDefaults / SharedPreferences, оновлюється при кожному показі.
Серверна конфігурація через Remote Config: soft_paywall_cooldown_days: 3, max_impressions_per_week: 2 — змінюється без релізу при A/B тестуванні.
Overlay vs full-screen
Soft paywall може бути:
-
Half-sheet / bottom sheet —
UISheetPresentationController(iOS 15+) з.mediumdetent. Користувач бачить під ним контент, це знижує anxiety від «зачинений». - Full-screen modal з прозорим фоном (blur overlay) поверх контенту — для feature-triggered paywall, коли показуємо що саме доступно в premium.
- Inline banner у стрічці на певній позиції — найменш агресивний варіант, конверсія нижча, але не перериває UX.
На iOS UISheetPresentationController з prefersGrabberVisible = true сигналізує користувачеві, що це dismissable sheet. Це не випадковість — люди частіше взаємодіють з UI, коли розуміють, що можуть вийти.
| Тип overlay | Конверсія | User experience |
|---|---|---|
| Bottom sheet | 8–12% | Низька агресивність |
| Full-screen modal | 12–18% | Середня, але ефективна |
| Inline banner | 3–5% | Мінімальне вторгнення |
Soft paywall з inline banner показав на 30% менше відмов порівняно з full-screen modal в одному з наших проєктів.
Логіка після Skip
Користувач пропустив paywall — не показуємо йому кнопку «Upgrade» всюди агресивно. Зберігаємо запис про намір (user_intent_score) і використовуємо для більш точного таргетингу наступного показу: якщо користувач 3 рази намагався використати premium-фічу — наступний paywall показуємо раніше стандартного cooldown.
PaywallTriggerManager інкрементує premium_feature_attempt_count при кожній спробі. При досягненні порогу — показує paywall незалежно від cooldown.
Процес роботи
- Визначення тригерів показу разом з продуктом.
- Розробка PaywallTriggerManager + Remote Config інтеграція.
- UI paywall + skip логіка.
- Аналітика подій (skip rate, conversion).
- A/B тест setup (мінімум 2 варіанти).
- QA і публікація.
Детальніше про налаштування тригерів через Remote Config
У Remote Config ми заводимо параметри: paywall_triggers (JSON зі списком подій та часових умов), cooldown_days, max_impressions_per_week. Кожен тригер має пріоритет, weight для A/B тестів і флаг enabled. Це дозволяє змінювати логіку без релізу.
Орієнтири за термінами
Soft paywall з конфігурованими тригерами, аналітикою подій та Remote Config управлінням — від 2 до 3 робочих днів за готової IAP інтеграції та Server API.
| Етап | Тривалість | Результат |
|---|---|---|
| Аналітика та проєктування | 4–8 годин | Специфікація тригерів і UI |
| Розробка компонентів | 1–2 дні | PaywallTriggerManager + екран |
| Інтеграція з Remote Config | 2–4 години | Параметри в консолі |
| A/B тест setup | 2–4 години | Готовий спліт |
| QA і реліз | 4–8 годин | Проходження рев'ю |
Що входить в роботу
- PaywallTriggerManager (iOS/Android)
- Інтеграція Remote Config
- Аналітика подій (Firebase, Amplitude)
- A/B тест (мінімум 2 варіанти)
- QA та документація
- Пост-релізна підтримка (2 тижні)
Гарантуємо стабільну роботу та відповідність App Store Review Guidelines. Для консультації щодо вашого проєкту — зв'яжіться з нами. Досвід 20+ paywall-інтеграцій — обговоримо ваш кейс. Отримайте консультацію інженера, щоб підібрати оптимальні тригери для вашого додатку.







