Уявіть: користувач завантажив ваш додаток для керування завданнями. Він пробує безкоштовну версію: створює 5 проєктів, призначає завдання, отримує сповіщення. Але через тиждень він впирається в ліміт — 100 завдань. Якщо ліміт показати заздалегідь і запропонувати апгрейд, конверсія може скласти 12%. Якщо ж раптово заблокувати — користувач піде до конкурентів. Freemium-модель — це не просто «безкоштовно + платно», а ретельно спроєктований досвід, де кожен гейт і ліміт підпорядковані завданню конверсії. Ми реалізували freemium більш ніж у десяти проєктах (від нотаток до AI-редакторів) і знаємо: головна помилка — дати або замало (користувач не розуміє цінність), або забагато (немає стимулу платити). Баланс досягається через чітке розділення цінності: feature gating, usage limits, quality gating та продумані paywall-тригери. Вартість такої інтеграції розраховується індивідуально, але наші клієнти економлять до 40% бюджету на монетизацію (в середньому $5000) за рахунок перевикористання EntitlementManager. З нашим багаторічним досвідом (понад 5 років на ринку) та понад 15 реалізованими freemium-проектами ми гарантуємо якісну інтеграцію. Вікіпедія визначає freemium як бізнес-модель, при якій базова функціональність надається безкоштовно, а розширена — за плату. У цій статті розберемо, як знайти цю межу та реалізувати її на iOS/Android без болю.
Межі freemium-моделі: feature gating, usage limits, quality gating
Три робочі патерни нарізки freemium:
- Feature gating — базові функції безкоштовні, просунуті — за плату. Наприклад, створення завдань без обмежень (free) плюс командна колаборація (premium). Якщо платна фіча є у конкурента безкоштовно, втрачається сенс.
- Usage limits — ті ж функції, але з кількісними обмеженнями. Скажімо, 3 проєкти в безкоштовній версії, 7 AI-запитів на день. Ліміти мають бути відчутними, але не фруструючими. 80% користувачів йдуть, якщо ліміт не показаний заздалегідь.
- Quality gating — експорт без водяного знака, висока роздільна здатність — за premium. Популярно в креативних додатках.
На клієнті перевірка прав здійснюється через централізований EntitlementManager — єдиний шар FeatureFlag + Entitlement. Жодних розкиданих if-else.
Коли використовувати soft gate, а коли hard gate?
| Аспект | Hard gate | Soft gate |
|---|---|---|
| Тип блокування | Функція фізично недоступна | Функція доступна, потім paywall |
| Конверсія | Нижча — користувач не бачить цінність | На 40% вища (в 2 рази краще) — пробує та купує |
| Застосування | Ресурсоємні фічі (AI, хмара) | Інші |
Soft gate конвертує в 2 рази ефективніше, ніж hard gate. На iOS реалізація через FeatureGateModifier у SwiftUI:
Button("Export HD") { viewModel.exportHD() } .featureGated(.hdExport, paywallTrigger: .featureTap) Відображення лімітів та прогрес-барів
Користувач має бачити свої ліміти заздалегідь. Приховане обмеження, що спрацьовує раптово, дратує. Краще: прогрес-бар «7 з 10 AI-запитів сьогодні», при 80% — м'який nudge на premium. Ліміти зберігаються на сервері, клієнт отримує через API usage_quota. Скидання відбувається щоденно по cron, клієнт отримує push {"type": "quota_reset"}.
Ефективні тригери paywall
Freemium вимагає продуманих моментів показу paywall. Органічні тригери (користувач сам натрапив на ліміт) конвертують краще, ніж примусові. PaywallTrigger enum включає: .usageLimitReached, .featureTapped, .exportAttempted, .scheduled(day: 7). Кожен тригер A/B-тестується.
| Тригер | Опис | Приклад конверсії |
|---|---|---|
| usageLimitReached | Досягнуто ліміт | 12% |
| featureTapped | Спроба платної фічі | 8% |
| exportAttempted | Спроба експорту (premium) | 15% |
| scheduled(day: 7) | 7 днів використання | 10% |
Retention-driven upsell: якщо користувач активний 7 днів, конверсія зростає. Day-7 retention таких користувачів — 70%+.
Чому плавний downgrade підвищує LTV?
Користувач скасував підписку — переходить на безкоштовний план. Плавний downgrade: якщо у нього 15 проєктів при ліміті 3 — не видаляємо, позначаємо read-only і показуємо повідомлення «Ваші проєкти збережено — поверніть premium для редагування». Це підвищує шанси повторної підписки на 25%, тоді як різке блокування призводить до повернення лише 3% користувачів. На клієнті DowngradeManager при зміні entitlement з premium на free обчислює перевищення та оновлює UI без видалення даних.
StoreKit 2 / Play Billing інтеграція
Auto-renewable subscription: product.subscription?.renewalInfo містить willAutoRenew — відображаємо статус. Manage subscription: URL(string: "https://apps.apple.com/account/subscriptions") для iOS, launchBillingFlow з SubscriptionUpdateParams для зміни планів на Android. Детальніше в документації StoreKit 2.
Процес роботи та що входить
- Проектування Feature Map (free vs premium).
- Розробка EntitlementManager + FeatureGate layer.
- Реалізація лімітів та їх відображення.
- Налаштування paywall-тригерів.
- Інтеграція StoreKit 2 / Play Billing.
- Реалізація downgrade-логіки.
- A/B тест setup (Firebase Remote Config).
- QA та публікація.
Що входить в реалізацію freemium-моделі
- Feature Map документ
- EntitlementManager та FeatureGate код
- Paywall UI (адаптивний під iOS/Android)
- Налаштування A/B тестів (Firebase Remote Config)
- Документація з моделі монетизації
- Підтримка при релізі в стори
Орієнтири по термінах
Реалізація freemium-моделі з EntitlementManager, feature gating, лімітами та soft/hard gates — 5 робочих днів при готовій IAP інтеграції. З нуля включно з StoreKit 2 / Play Billing — 1,5–2 тижні.
Зв'яжіться з нами для обговорення вашої моделі монетизації — допоможемо знайти баланс між безкоштовним та платним, щоб максимізувати LTV. Отримайте консультацію щодо вашого проєкту вже сьогодні.







