RevenueCat vs Adapty
iOS + Android subscription management SaaS'ları — RevenueCat (market leader) vs Adapty (paywall + A/B focus). Feature parity, pricing, integration.
Kademeli %30/%15 komisyon, 175 bölge, AB'de 1 Ekim 2026'dan yeni ticari şartlar
30 Haz 2026'dan beri EEA/UK/US'te gelir dilimi + kurulum yaşına göre %10-25 + %5
Tek kazanan yok; kararı gelir dağılımın veriyor. EEA/UK/US'te abonelikte Google, kurulum yaşı ayrımı yapmadan %10 + %5 alıyor; SBP dışı Apple geliştiricisi ilk yıl %30 ödüyor. Yıllık ilk 1 milyon dolarda iki mağaza da %15 bandında eşitleniyor. AB'de satıyorsan Apple'ın 1 Ekim 2026 tablosunu ayrıca hesapla.
| Kategori | App Store | Google Play |
|---|---|---|
| Performans | 7/10 | 7/10 |
| Öğrenme Kolaylığı | 6/10 | 7/10 |
| Ekosistem | 9/10 | 8/10 |
| Topluluk | 8/10 | 8/10 |
| İş Pazarı | 8/10 | 7/10 |
| Gelecek | 8/10 | 8/10 |
// StoreKit 2 — abonelik ürününü yükle ve komisyon-sonrası net fiyatı hesapla
import StoreKit
func loadSubscriptionAndEstimateNet(productID: String, isSmallBusinessProgram: Bool, firstYear: Bool) async throws {
let products = try await Product.products(for: [productID])
guard let product = products.first else { return }
// Apple resmi oranları: SBP=%15 sabit, standart=ilk yıl %30, 1 yıl sonrası %15
let commissionRate: Decimal
if isSmallBusinessProgram {
commissionRate = 0.15
} else {
commissionRate = firstYear ? 0.30 : 0.15
}
let price = product.price
let netToDeveloper = price * (1 - commissionRate)
print("Ürün: \(product.displayName)")
print("Liste fiyatı: \(product.displayPrice)")
print("Geliştiriciye net kalan (tahmini): \(netToDeveloper)")
// Satın alma akışı
let result = try await product.purchase()
switch result {
case .success(let verification):
if case .verified(let transaction) = verification {
await transaction.finish()
}
case .userCancelled, .pending:
break
@unknown default:
break
}
}// Play Billing Library 9.1.0 - abonelik sorgula, net geliri tahmin et (Kotlin)
import com.android.billingclient.api.BillingClient
import com.android.billingclient.api.BillingClient.ProductType
import com.android.billingclient.api.BillingClient.BillingResponseCode
import com.android.billingclient.api.QueryProductDetailsParams
fun queryAndEstimateNet(client: BillingClient, productId: String, region: String) {
val product = QueryProductDetailsParams.Product.newBuilder()
.setProductId(productId)
.setProductType(ProductType.SUBS)
.build()
val params = QueryProductDetailsParams.newBuilder()
.setProductList(listOf(product))
.build()
// PBL 8.0.0+: listener QueryProductDetailsResult aliyor
client.queryProductDetailsAsync(params) { billingResult, result ->
if (billingResult.responseCode != BillingResponseCode.OK) return@queryProductDetailsAsync
for (details in result.productDetailsList) {
val offer = details.subscriptionOfferDetails?.firstOrNull() ?: continue
val micros = offer.pricingPhases.pricingPhaseList.first().priceAmountMicros
// EEA/UK/US abonelik: yeni+mevcut kurulum ayni, %10 + %5 billing fee
// Remaining markets (TR dahil): sabit %15
val fee = if (region == "EEA_UK_US") 0.10 + 0.05 else 0.15
println("${details.title}: ${micros / 1_000_000.0 * (1 - fee)}")
}
// result.unfetchedProductList: sorgulanamayanlar
}
}
Tek kazanan yok; kararı gelir dağılımın veriyor. EEA/UK/US'te abonelikte Google, kurulum yaşı ayrımı yapmadan %10 + %5 alıyor; SBP dışı Apple geliştiricisi ilk yıl %30 ödüyor. Yıllık ilk 1 milyon dolarda iki mağaza da %15 bandında eşitleniyor. AB'de satıyorsan Apple'ın 1 Ekim 2026 tablosunu ayrıca hesapla.
Ücretsiz Danışmanlık AlApple: standart %30, Small Business Program'da %15, abonelikte ilk yıl %30 sonrası %15. Google Play: remaining markets'te ilk 1 milyon dolar %15, üzeri %30, abonelik sabit %15. EEA/UK/US'te ilk 1 milyon dolarda her işlem %10 + %5; üstünde abonelik yine %10 + %5, abonelik dışı işlem yeni kurulumda %20 + %5, mevcut kurulumda %25 + %5.