Реалізація аналітики підписок (MRR, Churn Rate, ARPU) у мобільному додатку

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

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

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

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Реалізація аналітики підписок (MRR, Churn Rate, ARPU) у мобільному додатку
Середній
~5 днів
Часті запитання

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

Етапи розробки

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

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Реалізація аналітики підписок (MRR, Churn Rate, ARPU) у мобільних додатках

Модель бізнесу підписки найлегше испортити неправильною аналітикою. MRR $50K звучить добре — до моменту, коли виявляється, що 15% місячний churn rate означає втрату половини доходу за 4 місяці. Правильно налаштована subscription analytics дозволяє бачити ці сигнали заздалегідь.

Джерела даних про підписки

Найважливіше завдання — отримати надійні події про життєвий цикл підписки. На мобільних платформах це нетривіально.

iOS StoreKit 2. Transaction.updates — async потік всіх транзакцій (нові, renewals, revocations). Product.SubscriptionInfo.status — поточний статус підписки. Server-to-Server notifications (App Store Server Notifications V2) — єдиний надійний спосіб отримати renewal события на бекенд, оскільки клієнт може бути offline під час renewal.

Android Google Play Billing 6. PurchasesUpdatedListener для real-time подій, queryPurchasesAsync при запуску додатку для синхронізації. Real-time Developer Notifications через Pub/Sub — аналог Apple S2S notifications.

RevenueCat як middleware — усуває складність роботи з обома платформами. Один webhook з нормалізованими подіями: initial_purchase, renewal, cancellation, billing_issue, product_change, refund. Webhooks доставляються на бекенд з автоматичними повторами. Для більшості проектів RevenueCat — правильний вибір: SDK на клієнті + webhook на сервері.

Ключові метрики та як їх розраховувати

MRR (Monthly Recurring Revenue)

MRR = сума нормалізованого місячного доходу від усіх активних підписок. Річні підписки діляться на 12 (не суммуються повністю за місяць платежу).

SELECT
  SUM(
    CASE plan_interval
      WHEN 'monthly' THEN price_usd
      WHEN 'yearly'  THEN price_usd / 12.0
    END
  ) as mrr
FROM subscriptions
WHERE status = 'active' AND DATE_TRUNC('month', NOW())
  BETWEEN started_at AND COALESCE(ended_at, 'infinity')

Розкладіть MRR за рухом: New MRR (нові підписники), Expansion MRR (оновлення), Contraction MRR (понижень), Churned MRR (скасування), Reactivation MRR. Загальна зміна = Net New MRR. Ці цифри показують, звідки росте дохід і куди він витікає.

Churn Rate

Два варіанти — не плутайте їх:

Revenue Churn = Churned MRR / MRR на початок періоду. Показує втрату доходу.

User Churn = Скасовані підписки / Активні підписки на початок періоду. Показує втрату користувачів.

Revenue Churn важливіший для SaaS. Якщо upsell працює добре, User Churn може бути 5%, а Revenue Churn — негативним (Negative Churn) через розширення.

ARPU (Average Revenue Per User)

ARPU = MRR / Активні підписники. Рахуйте за когортами, не глобально: ARPU когорти січня 2025 vs ARPU когорти січня 2024 показує, чи поліпшилася якість залучення.

Trial Conversion Rate

(Користувачі, які перейшли з trial на платну) / (Користувачі, які почали trial). Рахуємо за когортою — trial почався в період X, перевіримо conversion після 7/14/30 днів. Важливо: RevenueCat надає готовий trial_conversion event.

Dashboard та сховище даних

Сирі события підписок → ETL в аналітичне сховище (BigQuery, ClickHouse, Redshift). Агреговані метрики перераховуються пакетом (щодня або щогодини для свіжих даних) і кешуються у PostgreSQL або Redis для API.

Мобільний dashboard (admin) відображає: MRR з трендом (sparkline за 90 днів), Active Subscribers, Churn Rate, ARPU, Trial Conversion. Cohort retention chart — класична трикутна таблиця, де рядки = когорти за місяцем старту, стовпці = місяці після старту, комірки = % залишилося.

На Flutter: fl_chart для лінійних графіків та DataTable для когортної матриці. На iOS: Swift Charts + UICollectionView з compositional layout.

Проблеми з біллінгом як причина невільного оттоку

20–40% churn у додатках підписки — невільний: карта просрочена, недостатньо коштів. App Store/Google Play автоматично повторюють кілька днів, але якщо conversion не вийшло — підписка скасовується.

Dunning flow на клієнті: при отриманні billing_issue события показуємо in-app повідомлення з CTA «Оновити спосіб платежу». На iOS — прямий link до налаштувань підписки через ManagedSettingsStore або deep link itms-apps://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions. На Android — BillingClient.launchBillingFlow з PRODUCT_DETAILS для оновлення платежу.

Правильно налаштований dunning може повернути 15–25% невільних churners.

Процес роботи

Аудит поточного event tracking → інтеграція RevenueCat або нативних S2S notifications → побудова ETL pipeline → реалізація аналітичних запитів → розробка dashboard → налаштування dunning flow → A/B тестування ціноутворення на основі ARPU-даних.

Часові оцінки

RevenueCat інтеграція + базові метрики MRR/Churn/ARPU у dashboard — 1 тиждень. Повна система з cohort retention, декомпозицією MRR, dunning flow та прогнозуванням churn — 4–6 тижнів. Ціна розраховується індивідуально після аналізу вимог.

Метрика Формула Частота перерахунку
MRR Σ нормалізованого доходу активних підписок Щодня
User Churn Rate Скасування / Активні на початок періоду Щомісячно
Revenue Churn Rate Churned MRR / MRR на початок періоду Щомісячно
ARPU MRR / Активні підписники Щодня
Trial Conversion Конвертовані trial / Почали trial За когортою після N днів
LTV ARPU / Revenue Churn Rate Щомісячно