44 KiB
title, aliases, created, updated, tags, related
| title | aliases | created | updated | tags | related | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Монетизация — RevenueCat |
|
2026-05-16 | 2026-05-31 |
|
|
Монетизация AI-приложения рефлексии: RevenueCat + Стратегия подписок
Контекст: AI-приложение рефлексии, iOS SwiftUI + Android через Skip.tools. Соло инди-разработчик, Бишкек. Планируемые планы: Бесплатный триал / Monthly $9.99 / Annual $59.99 / Unlimited $19.99/mo Дата исследования: Май 2026
1. RevenueCat: Детальный разбор
1.1 Что такое RevenueCat
RevenueCat — это платформа управления подписками, которая предоставляет бэкенд-обёртку над StoreKit (iOS) и Google Play Billing (Android). Ключевая ценность: единый источник правды по подпискам вместо самостоятельного обслуживания двух разных платёжных систем.
Полный список функций:
| Категория | Функциональность |
|---|---|
| Build | Open-source SDK для iOS, Android, Flutter, React Native, Unity, macOS/Catalyst, Cordova, Ionic; Unified subscription backend; REST API; StoreKit 2 / Play Billing 5 поддержка |
| Acquire | Интеграции с MMP (AppsFlyer, Adjust, Branch, Facebook Ads, Apple Search Ads); Predictive LTV cohort analysis; No-code Web-to-App Funnels |
| Convert | A/B тестирование с remote config; No-code paywall editor с шаблонами; Segmentation (audience + in-app placement targeting) |
| Understand | Dashboard с 40+ метриками; Webhooks real-time; Automated data delivery (S3, BigQuery); интеграция с Amplitude, Mixpanel, Firebase, Segment и другими (27 интеграций всего) |
| Retain | Automated in-app subscription support; Cross-platform customer insights; Grant promotional subscriptions из дашборда; Event-based lifecycle triggers через маркетинговые интеграции |
| Validation | Server-side receipt validation для iOS и Android; защита от мошенничества |
1.2 Ценообразование RevenueCat: точные условия
| Тариф | Цена | Лимит |
|---|---|---|
| Pro (Free tier) | $0 | До $2,500/month MTR (Monthly Tracked Revenue) |
| Pro (платный) | 1% от MTR | Свыше $2,500 MTR |
| Growth Tools Only | 1% только на конверсии | Только Paywalls + Funnels на своей инфраструктуре |
| Enterprise | Custom | Высокий объём, кастомные SLA |
Важные детали:
- MTR = gross revenue до вычета комиссии платформы (т.е. $2,500 MTR ≠ $2,500 у вас в кармане; реально на счёт придёт ~$1,750 после комиссии 30%)
- Кредитная карта не нужна для старта
- Все функции доступны на бесплатном тарифе — нет ограничений по фичам, только по объёму
- Для соло инди-разработчика с нуля — полностью бесплатно до ~175 активных подписчиков ($9.99/mo × 250 ≈ $2,500)
Когда начнёте платить: При $9.99/mo плане, переход на платный тариф произойдёт примерно при 250 платящих пользователях (≈$2,500 MRR). RevenueCat будет брать 1%, то есть при $5,000 MRR → $50/месяц. Это разумно.
1.3 Интеграция в SwiftUI проект: сложность и время
Установка через SPM (рекомендуемый путь):
// Package.swift или Xcode → Add Package Dependencies
// URL: https://github.com/RevenueCat/purchases-ios-spm.git
// Версия: 5.0.0 < 6.0.0
import RevenueCat
// Инициализация один раз при запуске
Purchases.logLevel = .debug
Purchases.configure(withAPIKey: "appl_YOUR_KEY", appUserID: currentUserID)
Проверка статуса подписки:
let customerInfo = try await Purchases.shared.customerInfo()
if customerInfo.entitlements.all["pro"]?.isActive == true {
// Пользователь Premium
}
Оценка времени для опытного iOS-разработчика:
- Базовая интеграция (SDK + проверка статуса + paywall) — 4–8 часов
- Полная интеграция с A/B тестами, аналитикой, webhooks — 1–3 дня
- Настройка App Store Connect (продукты, группы подписок) — 2–4 часа
1.4 RevenueCat + Skip.tools: Полная поддержка!
Отличная новость: Skip.tools имеет официальный модуль skip-revenue — это нативная обёртка для RevenueCat, работающая на обеих платформах из единого Swift-кода.
// Package.swift
.package(url: "https://source.skip.dev/skip-revenue.git", "0.0.0"..<"2.0.0")
// Инициализация с платформенными ключами
import SkipRevenue
@main struct MyApp: App {
init() {
#if !SKIP
RevenueCatFuse.shared.configure(apiKey: "appl_ios_key")
#else
RevenueCatFuse.shared.configure(apiKey: "goog_android_key")
#endif
}
}
Функции skip-revenue:
loadProducts()/loadOfferings()— загрузка продуктовpurchase(package:)— покупка (iOS: без доп. параметров; Android: требуетactivity)getCustomerInfo()— статус подпискиrestorePurchases()— восстановление покупокRCFusePaywallView— готовый нативный paywall UI на обеих платформах
⚠️ Важный нюанс для Android (через Skip):
// Android требует передачи Activity
let customerInfo = try await RevenueCatFuse.shared.purchase(
package: package,
activity: UIApplication.shared.androidActivity
)
Это единственное отличие от iOS-кода. Всё остальное идентично.
1.5 Отзывы инди-разработчиков о RevenueCat
Из Reddit r/androiddev (реальные комментарии):
✅ Плюсы:
- "Easy to set up, works well long-term" — стабильная работа
- User retention dashboards без необходимости настраивать BigQuery
- A/B testing paywalls из коробки
- Responsive support в GitHub issues
- "That sort of support is worth so much more to me than the bare implementation!"
- Цитата из маркетинга RevenueCat (но показательная): "In just a year from shipping with RevenueCat, I was able to quit my day job to focus 100% on CardPointers."
❌ Минусы:
- API latency: p90 ~800ms для запросов из EU-серверов (важно для UX)
- Абстракция Products/Offerings/Entitlements — требует понимания, не очевидна новичкам
- При высоких доходах 1% становится значительной суммой
- Paywall шаблоны ограничены (но fully custom paywall возможен)
Рейтинги:
- Capterra: 4.8/5
- G2: 4.7/5
- SOC2 certified, GDPR compliant
1.6 Конкуренты: Adapty, Qonversion, Superwall
| Критерий | RevenueCat | Adapty | Qonversion | Superwall |
|---|---|---|---|---|
| Free tier | $0 до $2,500 MTR | $0 до $10K MTR | ✅ (ограниченный) | — |
| Платный тариф | 1% от MTR | $99/mo (flat) | ~$20/mo | $99/mo |
| SDK платформы | 8 платформ | 5 платформ | iOS + Android | iOS + Android |
| Skip.tools support | ✅ Официальный пакет | ❌ | ❌ | ❌ |
| Интеграции | 27 | 17 | ~10 | ~15 |
| No-code Paywall Builder | ✅ (2024 добавлен) | ✅ | ❌ | ✅ (специализация) |
| A/B Testing | ✅ | ✅ | ❌ | ✅ |
| Free CRM access | ✅ | ❌ (только paid) | ❌ | — |
| Free analytics | Базовые 6 метрик | Более 10 метрик | Средние | — |
| Локализация paywalls бесплатно | ✅ | ❌ (только paid) | — | — |
| MMP/Attribution (бесплатно) | ✅ | ❌ ($100+ plan) | ❌ | — |
Вывод для нашего кейса:
RevenueCat — однозначный выбор для Skip.tools проекта. Единственный инструмент с официальной поддержкой Skip. Adapty дешевле до $10K MTR, но отсутствует поддержка Skip и локализация paywalls платная. Qonversion и Superwall не имеют Skip-интеграции.
2. Данные о конверсии: RevenueCat State of Subscription Apps 2024
Источник: RevenueCat, анализ 30,000+ приложений, 18,000+ разработчиков, $6.7B+ отслеживаемого дохода, 290M+ подписчиков
2.1 Ключевые бенчмарки конверсии
| Метрика | Значение |
|---|---|
| Downloads → платящий подписчик (первые 30 дней) | 1.7% (среднее) |
| Нижний квартиль | 0.6% |
| Верхний квартиль | 4.2% |
| Trial → конверсия (2024) | 37.3% (снизилась с 40.5% в 2023) |
| Trial → конверсия (Health & Fitness) | 44.5% |
| Trial → конверсия, триал ≤4 дня | 31.2% |
| Trial → конверсия, длинный триал | до 44.9% |
| App Store vs Google Play конверсия | 39.0% vs 28.5% |
| Разница top 5% vs bottom 25% (за 12 месяцев) | 200x |
| Churned пользователи, возвращающиеся за 12 мес | >10% |
2.2 Pricing benchmarks (релевантные для нашего приложения)
| Категория | Данные |
|---|---|
| Самая распространённая цена (месячная) | $9.99/mo ✅ — попадаем точно в рынок |
| Средняя месячная цена (2024) | $8.01 (рост +14% с $7.05) |
| Самая распространённая цена (годовая, Education) | $59.99/year ✅ — наш план попадает точно |
| Рекомендуемый дисконт Annual vs Monthly (аннуализированный) | ~17% (наш: $59.99 vs $9.99×12=$119.88 → скидка 50% — агрессивно, но работает) |
| Health & Fitness предпочитают | 1-year планы (долгосрочные цели) |
2.3 Стратегия триала: данные 2024
| Стратегия | 2024 | 2023 |
|---|---|---|
| Иногда предлагают триал | 47.84% | — |
| Никогда не предлагают | 28.81% | ~40% |
| Всегда предлагают | 23.34% | ~30%+ |
Тренды:
- Самый популярный период триала: 5–9 дней
- Рост 17–32 дневных триалов на 50% (тренд к более длинным)
- Большинство триалов стартуют в первые 24 часа после установки (85%+ в Business, Health)
- Эксперт Hannah Parvaz: "Short trials are the equivalent of a speed date: brief yet intense"
2.4 Модели монетизации: Calm, Headspace, Duolingo
| Приложение | Модель | Ключевые решения |
|---|---|---|
| Calm | Hard paywall после онбординга + 7-day trial | Нет бесплатного контента; paywall сразу после регистрации; упор на "sleep" как крючок |
| Headspace | Freemium + подписка | Базовые медитации бесплатно; всё остальное — платно; Annual план с большой скидкой |
| Duolingo | Freemium + рекламный tier + Super Duolingo | Сильный gamification; ads создают motivation to upgrade; агрессивные уведомления |
Вывод по индустрии:
- Health & Fitness / Mental Health имеют 44.5% trial conversion — лучший показатель после Travel
- Hard paywall (Calm) показывает хорошие результаты для brand-aware приложений
- Soft paywall (Headspace) работает для discovery через контент
2.5 Сравнение моделей для нашего приложения
| Модель | Конверсия (оценка) | Pros | Cons |
|---|---|---|---|
| 1 сессия бесплатно, потом prompt | 3–5% платных | Нет барьера входа; пользователь видит ценность | Сложнее предсказать MRR |
| 14-day trial с картой | 30–40% из начавших триал | Высокая конверсия завершивших | Меньше людей начнут триал (барьер карты) |
| 7-day trial без карты | 5–15% из скачавших | Оптимальный баланс | Люди забывают подписаться |
| Freemium с N сессиями в месяц | 2–8% платных | Постоянная аудитория; вирусность | Сложность удержания платящих |
Рекомендация для Mental Health / Reflection приложения:
Оптимальна модель "7-day free trial без карты + soft paywall после первой сессии" (показать paywall, но дать продолжить). После триала — hard paywall.
3. Правила Apple и Google
3.1 Apple: Free trial и сессии без карты
Можно ли давать первую сессию бесплатно без карты?
✅ ДА — это полностью разрешено и поощряется.
Apple позволяет предоставлять любой бесплатный контент без привязки карты. "1 бесплатная сессия" — это просто бесплатная функция приложения, не требующая IAP. Карта нужна только при оформлении подписки или триала.
Типы offer Apple IAP:
- Introductory Offers — бесплатный/сниженный триал для новых подписчиков
- Offer Codes — коды для маркетинговых акций
- Promotional Offers — специальные предложения для бывших/текущих подписчиков
App Store Review Guidelines (раздел 3.1.1 — IAP):
- Все функции, требующие разблокировки за деньги, обязаны использовать IAP Apple
- Нельзя ссылаться на другие методы оплаты внутри приложения (нарушение)
- "Free" приложения не могут требовать покупку до использования (но можно после первой сессии)
- Metadata должна чётко описывать, что нужна подписка
- Демо-аккаунт для ревьюеров обязателен если paywall блокирует функциональность
3.2 Apple Small Business Program: 15% комиссия
| Параметр | Условие |
|---|---|
| Стандартная комиссия | 30% |
| Уменьшенная комиссия | 15% |
| Порог дохода | ≤ $1,000,000 USD proceeds в предыдущем календарном году |
| Applies to | Ты + ВСЕ связанные аккаунты разработчика суммарно |
| Enrollement | Нужно подать заявку; одобрение ~15 дней после конца фискального месяца |
| Подходит ли соло-инди из KG? | ✅ Да, абсолютно — нет ограничений по географии |
| Subscriptions (2+ year) | После 1-го года подписки Apple снижает до 15% автоматически |
Как записаться: App Store Connect → Account Holder → Small Business Program → Enroll
Для нашего случая: Сразу при запуске подаём заявку. До $1M proceed в год — это примерно 8,300 платящих пользователей при $9.99/mo × 12. Очень реально оставаться на 15% долго.
3.3 Google Play: аналогичные условия
| Параметр | Условие |
|---|---|
| Стандартная комиссия | 30% |
| Подписки | 15% всегда (без лимита по доходу!) |
| Первый $1M/год (не подписки) | 15% |
| Свыше $1M/год | 30% |
| 97% разработчиков | Платят 0% (бесплатное распространение) |
| 99% разработчиков с транзакциями | Платят 15% или меньше |
Ключевое отличие Google: Для подписок Google уже автоматически берёт 15% (не нужна отдельная программа как у Apple). Это выгоднее.
Итоговые комиссии для нашего приложения:
- Apple (после Small Business Program): 15% → с $9.99 получаем $8.49
- Google Play (подписки): 15% → с $9.99 получаем $8.49
- После вычета RevenueCat 1%: ~$8.41
3.4 Типичные ошибки при первой настройке IAP
- Не подписано Paid Apps Agreement в App Store Connect → IAP не работает
- Не настроены банковские реквизиты → то же самое
- Продукт в статусе "Ready to Submit" но не "Approved" → покупки не работают в production
- Не включена In-App Purchase capability в Xcode (Capabilities tab)
- Hardcoded product IDs → при смене плана нужен update приложения
- Sandbox account не создан в App Store Connect → тестирование невозможно
- Не вызван
transaction.finish()→ транзакции висят бесконечно - Metadata не описывает подписку → reject от App Review (обязательно 2.3.2)
- Отсутствует восстановление покупок → обязательное требование Apple
4. Психология ценообразования для Mental Health
4.1 Где показывать paywall
Данные и рекомендации:
| Момент показа | Конверсия (оценка) | Обоснование |
|---|---|---|
| Сразу при открытии (до онбординга) | ~1-2% | Слишком рано; пользователь не видел ценности |
| После онбординга (перед первой сессией) | ~3-5% | Вариант Calm; работает при сильном бренде |
| После первой сессии | ~5-10% | ✅ Оптимально для рефлексии — пользователь понял ценность |
| После 3+ сессий / 3+ дней | ~3-6% | Пользователь "тёплый", но часть уже ушла |
| При достижении лимита (freemium) | ~4-8% | Естественный триггер; friction высокий |
Рекомендация:
Показывай paywall после первой завершённой сессии. Момент завершения сессии — пик эмоциональной ценности: пользователь только что получил инсайт и готов инвестировать в продолжение.
4.2 Soft vs Hard paywall
| Тип | Описание | Конверсия | Retention |
|---|---|---|---|
| Hard paywall | Полная блокировка; нужна подписка | Выше среди прошедших | Ниже органический рост |
| Soft paywall | Можно пропустить; часть функций доступна | Ниже одномоментная | Выше долгосрочная |
| Soft → Hard (после триала) | Триал без карты, затем блокировка | Оптимально | Лучший баланс |
Для mental health / reflection приложений:
- Soft paywall с триалом даёт больше шансов доказать ценность
- Пользователи не доверяют психологическим инструментам без опыта
- Рекомендую: мягкий paywall с 7-дневным триалом → hard блокировка после триала
4.3 Framing: как формулировать ограничения
| Формулировка | Эффект |
|---|---|
| "2 сессии в неделю" | Кажется щедро; создаёт ритм |
| "8 сессий в месяц" | Кажется меньше; абстрактно |
| "Попробуй 7 дней бесплатно" | Позитивный framing; снижает страх |
| "Осталось 2 бесплатных сессии" | Loss aversion; хорошо конвертирует |
| "Продолжи свой путь рефлексии" | Emotional hook; лучше для mental health |
Рекомендация по framing:
- Используй "неделю" как единицу ("2 сессии в неделю"), не месяц
- Показывай прогресс — "ты уже сделал X шагов" до paywall
- Формулируй как "продолжение", не как "покупку"
4.4 Annual plan: когда и как предлагать
Рекомендации из данных RevenueCat 2024:
- Health & Fitness аудитория сильно предпочитает годовые планы (долгосрочные цели)
- Эксперт Reid DeRamus (ex-Hulu): "Avoid lifetime plans — severely under-monetize most loyal users"
- Стандартный дисконт: 17% от аннуализированной месячной цены; наш: 50% скидка — агрессивно, но привычно для рынка
Когда предлагать Annual:
- На paywall экране: выделить Annual как "Most Popular" или "Best Value"
- После 2–3 недель месячной подписки: upgrade prompt
- При ежегодном продлении: предложить скидку если хотели отменить
Психология Annual:
- "$59.99/year" воспринимается как "меньше $5/month" — используй это в copy
- Сравни с "двумя чашками кофе в месяц" для mental health аудитории
4.5 Примеры удачных paywall экранов (паттерны)
Структура конвертирующего paywall для mental health:
[Эмоциональный заголовок]
"Продолжи свой путь к ясности"
[Список 3-4 бенефита с иконками]
✓ Неограниченные сессии рефлексии
✓ AI-анализ паттернов мышления
✓ История и инсайты
✓ Экспорт данных
[Планы — Annual highlighted]
┌─────────────────────────────────┐
│ ⭐ ГОДОВОЙ $59.99/год │
│ Экономия 50% · $4.99/месяц │
└─────────────────────────────────┘
МЕСЯЧНЫЙ $9.99/месяц
[CTA Button]
"Начать 7 дней бесплатно"
[Legal]
Отмена в любое время · Без обязательств
Ключевые принципы:
- Annual план — всегда первый и выделенный
- Кнопка CTA фокусируется на триале, не на цене
- Минимум юридического текста сверху, максимум — мелко снизу
- Social proof если есть: "Помог 10,000 пользователям"
5. Пошаговый план реализации
Шаг 0: Подготовка App Store Connect (до RevenueCat)
□ 1. Подписать Paid Apps Agreement (Schedule 2) в App Store Connect
□ 2. Добавить банковские реквизиты (можно Payoneer / карта KG-банка)
□ 3. Создать Subscription Group: "Psychologist Pro"
□ 4. Создать продукты:
- com.yourapp.monthly_999 ($9.99/mo, 1 month)
- com.yourapp.annual_5999 ($59.99/yr, 1 year)
- com.yourapp.unlimited_1999 ($19.99/mo, 1 month — "Unlimited")
□ 5. Для каждого продукта: добавить локализацию (EN обязательна)
□ 6. Настроить Free Trial: 7 days для каждого плана
□ 7. Добавить скриншот и описание для App Review
□ 8. Создать Sandbox тестовый аккаунт (Users and Access → Sandbox Testers)
□ 9. Подать заявку на Small Business Program (15% комиссия)
Шаг 1: Настройка RevenueCat
□ 1. Зарегистрироваться на revenuecat.com (бесплатно, без карты)
□ 2. Создать проект "Psychologist App"
□ 3. Добавить iOS App: вставить Bundle ID, Apple API Key (из App Store Connect)
□ 4. Добавить Android App: Bundle ID, Google Service Account JSON
□ 5. В RevenueCat Dashboard → Products: добавить те же Product IDs
□ 6. Создать Entitlement "pro"
□ 7. Привязать все продукты к entitlement "pro"
□ 8. Создать Offering "default" с пакетами monthly, annual, unlimited
□ 9. Настроить webhooks (опционально: Slack уведомления о подписках)
Шаг 2: Интеграция в Skip.tools проект
// Package.swift — добавить зависимость
.package(url: "https://source.skip.dev/skip-revenue.git", "0.0.0"..<"2.0.0")
// App.swift — инициализация
import SkipRevenue
@main struct PsychologistApp: App {
init() {
#if !SKIP
RevenueCatFuse.shared.configure(apiKey: "appl_XXXXXXXX")
#else
RevenueCatFuse.shared.configure(apiKey: "goog_XXXXXXXX")
#endif
}
}
// SubscriptionManager.swift — сервис подписок
@MainActor
class SubscriptionManager: ObservableObject {
@Published var isPro: Bool = false
func checkStatus() async {
let info = try? await RevenueCatFuse.shared.getCustomerInfo()
isPro = info?.isEntitlementActive("pro") ?? false
}
func loadOfferings() async throws -> [RCFusePackage] {
return try await RevenueCatFuse.shared.loadProducts()
}
}
// PaywallView.swift — использование готового UI
import SkipRevenueUI
.sheet(isPresented: $showPaywall) {
RCFusePaywallView(
onPurchaseCompleted: { _ in showPaywall = false },
onRestoreCompleted: { _ in showPaywall = false },
onDismiss: { showPaywall = false }
)
}
Шаг 3: Тестирование в Sandbox
□ 1. В Xcode: настроить StoreKit Configuration File (File → New → StoreKit Config)
□ 2. Edit Scheme → Run → Options → StoreKit Configuration: выбрать файл
□ 3. Войти в Simulator под Sandbox тестовым аккаунтом (Settings → App Store)
□ 4. Тестировать сценарии:
- Успешная покупка подписки
- Отмена подписки
- Восстановление покупок
- Истечение триала (ускоренное время в Sandbox: 1 day = 5 min)
- Billing issue (decline карты)
□ 5. Проверять события в RevenueCat Dashboard → Customer Lookup
Шаг 4: Запуск и мониторинг
□ 1. Настроить Webhook → Slack канал для real-time уведомлений
□ 2. Подключить Firebase Analytics для funnel отслеживания
□ 3. Настроить A/B тест paywall (RevenueCat Experiments):
- Вариант A: paywall после онбординга
- Вариант B: paywall после первой сессии
□ 4. Мониторить метрики:
- Trial start rate (цель: >5%)
- Trial conversion rate (цель: >35%)
- Monthly churn (цель: <10%)
- MRR growth
6. Рекомендованная модель монетизации
Финальная рекомендация
Выбранная модель: "Soft Paywall → Free Trial → Hard Paywall"
Первый запуск
↓
Онбординг (5 экранов, без paywall)
↓
Первая ПОЛНАЯ бесплатная сессия
↓
[После сессии — Paywall экран]
"Понравилось? Продолжи своё путешествие"
→ "Начать 7 дней бесплатно" [CTA]
→ "Пропустить" [маленькая ссылка]
↓ (если пропустил)
2-я сессия → HARD paywall (нет пропуска)
Структура планов (финальная):
| План | Цена | Позиционирование |
|---|---|---|
| Annual | $59.99/год ($4.99/mo) | ⭐ "Best Value" — выделен первым |
| Monthly | $9.99/mo | Стандартный план |
| Unlimited | $19.99/mo | Для power users (больше сессий в день, приоритет) |
Триал: 7 дней бесплатно (без карты) для Monthly и Annual. Unlimited — без триала или 3 дня.
Почему именно эта модель
- 1 сессия бесплатно — пользователь видит ценность ДО оплаты (критично для trust в mental health)
- 7-day trial без карты — снижает барьер; Health & Fitness конвертирует 44.5% из начавших триал
- Annual как основной — Health & Fitness аудитория предпочитает годовые планы (долгосрочные цели)
- $59.99/year — точно попадает в самый распространённый ценовой tier (Education/Health data 2024)
- Soft → Hard — адаптируется к уровню доверия пользователя
Ожидаемые метрики (консервативный прогноз)
| Метрика | Значение |
|---|---|
| Download → Trial start | 20–35% |
| Trial → Paid | 30–40% |
| Download → Paid (итого) | ~5–10% |
| Annual vs Monthly split | 60% / 40% (цель) |
| MRR при 1000 активных подписчиках | ~$6,000–8,000 |
| RevenueCat fee при $6,000 MRR | $60/mo (1%) |
| Apple/Google комиссия (15%) | ~$900/mo |
| Чистый MRR при $6K gross | ~$5,040/mo |
Итоговые выводы
-
RevenueCat — единственный правильный выбор для Skip.tools проекта благодаря официальному пакету
skip-revenue. Бесплатно до $2,500 MRR (≈250 платящих пользователей). -
Skip.tools + RevenueCat работает нативно через единый Swift-код с минимальными платформенными различиями (только передача
activityдля Android-покупок). -
Apple Small Business Program (15% вместо 30%) доступен сразу для соло-разработчика из Кыргызстана. Подать заявку в первый же день запуска.
-
Google Play автоматически берёт 15% на подписки — программа не нужна.
-
7-day free trial + 1 бесплатная сессия — оптимальная комбинация для mental health приложения. Trial start rate 20–35%, конверсия trial→paid до 44.5% в категории Health & Fitness.
-
Annual план выделить первым — Health & Fitness аудитория предпочитает долгосрочные планы, конверсия выше.
-
Paywall после первой сессии — оптимальный момент. Эмоциональный пик после инсайта = максимальная готовность платить.
-
Время интеграции RevenueCat + Skip: 1–2 дня для базовой интеграции + 2–4 часа на App Store Connect настройку.
7. Российский рынок: подписки в условиях санкций (май 2026)
TL;DR: App Store платежи в РФ полностью отключены с 1 апреля 2026. RevenueCat не поддерживает RuStore. Для России нужен отдельный платёжный стек. Единого SDK нет — нужна абстракция.
7.1 Текущий статус платёжных каналов
| Канал | Статус | Комментарий |
|---|---|---|
| App Store (iOS) | 🔴 МЁРТВ с 01.04.2026 | Apple Ireland оштрафована за нарушение санкций → отключила все платежи в РФ. Работает только существующий баланс Apple Account |
| Google Play (Android) | 🟡 Ограничен | Visa/Mastercard недоступны. МИР — частично. SBP — нет. Часть пользователей платит через операторские счета, но это «расходящийся» канал |
| RuStore (Android) | 🟢 Основной канал | Предустановлен на всех Android-устройствах в РФ с сентября 2025. Полная поддержка МИР, СБП, SberPay, карты из VK ID |
| RuStore на iOS | 🟠 Не существует | Только RuStore Bridge (требует Android-устройства рядом). Pay SDK для iOS был анонсирован дек. 2025 на «начало 2026» — статус запуска неясен |
| Web-checkout iOS | 🟡 Технически возможен | Внешний сайт + ЮКасса/Tinkoff/CloudPayments → пользователь получает токен доступа → вводит в приложении |
7.2 RevenueCat: поддержка России
RevenueCat НЕ поддерживает RuStore. RevenueCat оборачивает только:
- StoreKit / StoreKit 2 (Apple)
- Google Play Billing (Google)
RuStore использует собственный Pay SDK (и мигрирует с устаревшего BillingClient → обязательно до 1 августа 2026). Никакой официальной или сторонней обёртки RevenueCat для RuStore не существует.
Следствие для skip-revenue: skip-revenue тоже не покрывает RuStore — это обёртка над RevenueCat.
Adapty — та же ситуация: поддерживает App Store + Google Play, RuStore нет.
7.3 RuStore Pay SDK: ключевые детали
| Параметр | Значение |
|---|---|
| Дедлайн миграции с BillingClient | 1 августа 2026 — старый SDK перестаёт принимать платежи |
| Платёжные методы | МИР, СБП, SberPay, карты (T-Pay и мобильный счёт — в роадмапе) |
| Авто-подгрузка карт | Из VK ID — без ручного ввода → +20% к конверсии |
| Поддержка подписок | Полная: trial / promo / main / grace / hold периоды |
| Sandbox | Есть (в BillingClient не было) |
| Комиссия | Не публикуется явно; конкурентная с Google Play |
| Фреймворки | Kotlin/Java, React Native, Flutter, Unity, Godot, Unreal Engine, Defold |
| Swift / iOS нативный SDK | ❌ Отсутствует |
7.4 Архитектура для покрытия России
Единого SDK нет. Нужна абстракция на уровне приложения:
┌─────────────────────────────────────────────────────┐
│ PaymentProvider (протокол) │
│ loadProducts() / purchase() / checkStatus() │
└──────────┬───────────────────────────┬──────────────┘
│ │
▼ ▼
RevenueCatProvider RuStoreProvider
(iOS App Store + (Android RuStore
Android Google Play) Pay SDK)
skip-revenue пакет Kotlin native
Глобальные рынки Только РФ Android
│ │
└──────────┬────────────────┘
▼
WebCheckoutProvider
(iOS РФ + fallback)
ЮКасса / Tinkoff /
CloudPayments
→ access token flow
Практически это значит:
- Android: 2 отдельных flavor —
googlePlay(RevenueCat) иruStore(Pay SDK). Или одна сборка с детектом магазина. - iOS глобальные: RevenueCat + skip-revenue (как и планировалось).
- iOS Россия: Веб-чекаут — пользователь нажимает «Оформить подписку» → открывается Safari/SFSafariViewController → платёж через ЮКасса → сервер выдаёт токен → приложение активирует доступ. Apple разрешает это через External Purchase Link Entitlement (в РФ де-факто выдают для Reader App категории и ряда других).
7.5 Веб-чекаут для iOS России: как работает
iOS пользователь
↓
[Кнопка "Подписаться"]
↓
SFSafariViewController → ваш сайт (yourapp.com/subscribe)
↓
Выбор плана + ввод данных карты
↓
ЮКасса / CloudPayments / Tinkoff
(МИР, СБП, SberPay, карты)
↓
Успешный платёж → сервер создаёт subscription record
↓
Redirect с токеном → ваше приложение deeplink
↓
Приложение активирует доступ (по токену или user ID)
Российские платёжные провайдеры для web-checkout:
| Провайдер | Комиссия | Методы | Подписки |
|---|---|---|---|
| ЮКасса (Сбербанк) | 2.8–3.5% | МИР, СБП, SberPay, карты, кошельки | Рекуррентные + 54-ФЗ авто |
| CloudPayments (Тинькофф) | 2–3.9% | МИР, СБП, T-Pay, карты | Лучшая поддержка подписок по API |
| Tinkoff Checkout | 2.5–3% | МИР, T-Pay, карты | Есть, через API |
CloudPayments — оптимален для подписочной модели: гибкий API, удобное управление рекуррентными платежами, owned by Тинькофф → надёжность.
7.6 Стратегия: стоит ли вообще заниматься РФ?
Аргументы за:
- 144 млн человек; mental health ниша практически пустая в RuStore
- RuStore — конкурентное преимущество (большинство международных разработчиков игнорируют)
- Пользователи платят в рублях, конкуренция ниже → выше средний чек в соотношении
Аргументы против:
- iOS Russia = мёртв до изменения политики. Веб-чекаут — сложная инфраструктура для соло-разработчика
- RuStore Pay SDK требует отдельную Android-интеграцию без RevenueCat
- VK/RuStore — политически неоднозначная зависимость
- Юридическая сторона: приём платежей из РФ как резидент Кыргызстана — требует консультации
Рекомендация для соло-разработчика на старте:
Фаза 1 (MVP): Запуск только на глобальных рынках через RevenueCat + App Store + Google Play. Россию пропустить.
Фаза 2 (после первой выручки): Добавить RuStore Android через Pay SDK как отдельный flavor. Это даёт 100% Android-охват РФ.
Фаза 3 (если есть спрос): Веб-чекаут для iOS-аудитории РФ через CloudPayments. Только если data показывает значимый трафик.
7.7 Если всё-таки делать RuStore: минимальный план
□ 1. Зарегистрировать юрлицо или ИП (RuStore требует юридическое лицо)
□ 2. Зарегистрироваться в RuStore Console (console.rustore.ru)
□ 3. Создать отдельный Android productFlavor: ruStore
□ 4. Подключить Pay SDK (не BillingClient — он умирает 01.08.2026)
□ 5. Создать продукты в RuStore Console (подписки)
□ 6. Реализовать RuStorePaymentProvider абстракцию
□ 7. Протестировать в Sandbox
□ 8. Публикация → отдельный APK для RuStore подписан тем же ключом
Важно: RuStore требует, чтобы подпись APK совпадала с подписью билда в Console. Нельзя использовать debug keystore.
Документ обновлён май 2026. Источники: CNews, MacDailyNews, The Verge, RuStore Developer Docs, ASO World Russia 2026, RevenueCat Blog (app-to-web), Adapty Blog (alternative payments), softwarelead.pro (Pay SDK migration).