Blog
The maker's notes
Indie iOS analytics, written from running four live apps — no filler, no press releases.
Running four subscription apps alone: the weekly numbers I check
One of my four iOS apps earns all the revenue with 72.9% of the users. The seven numbers I read every week, in order, with five weeks of real LuminaClean data and sample sizes.
How many of my iOS app users were pirated copies
About 16% of new LuminaClean users and 41% of BookBinge's were pirated copies, and none of them ever paid. How to find them with Apple's AdServices test payload, and what they do to your metrics.
Weekly vs monthly subscriptions in a small app: how often each renews
In one small app, 75.0% of 40 monthly periods renewed and 47.8% of 23 weekly ones did, and most weekly cancellations came within a day of paying. The renewal chance to plan with.
Forecasting a small subscription app's month from its renewal schedule
A month forecast you can build on RevenueCat webhooks, renewal by renewal. Backtested on a real app: 9.0% median miss, 6 of 7 inside the 80% range, about 70% low in the first month.
What App Store Connect's 2026 analytics tells a small app, and what it still can't
Cohorts, proceeds per download and peer benchmarks from Apple's March 2026 update, why small apps still see "Not enough data", and how to judge whether a release changed revenue.
How to match website visits to iOS app installs, and where the fingerprinting line is
What campaign links, custom product pages, SKAdNetwork, deep link vendors and IP matching each see, and a short-window network match with exact and probable tiers.
App Store Small Business Program: who qualifies, how to enroll, and how the 15% rate works in 2026
The $1 million threshold and associated accounts, when the 15% starts, crossing the line, the year-two subscription rate, and the EU rates from October 1, 2026.
Apple Ads attribution without an MMP: AdServices and RevenueCat
What the AdServices API returns in 2026 (including view-through claims), when RevenueCat's keyword charts are enough, and what still needs attribution joined to in-app behavior.
Do you need an MMP as an indie iOS developer in 2026?
What AdServices, AdAttributionKit, SKAdNetwork and RevenueCat already answer, the one situation where an MMP pays off, and what no tool can tell you without ATT.
RevenueCat + PostHog, Mixpanel, Firebase or Amplitude: why the numbers don't match
What each RevenueCat analytics integration sends, where it lands, which ID it matches on, and the one-ID pattern that makes the join hold.
RevenueCat webhook events vs entitlements: keeping status in sync
An event reference, the CANCELLATION and refund traps, signature checks, the five-retry limit, and the fetch-state pattern that keeps subscription status matching RevenueCat's.
Apple payout vs App Store proceeds vs RevenueCat revenue: which number to use
Commission (including the new EU rates), VAT inside prices, Apple's fiscal months and 45-day payments, currency and withholding, and a monthly reconciliation routine.
The onboarding steps that drive paid conversion in an iOS subscription app
Five events, two cuts that matter, and sample-size rules for small apps: measuring onboarding against money instead of completion rates.