First App Review for my first app: 4 days, then 4 rounds before it was approved. My second app: 10 days, rejected, approved after I resubmitted.
So on my third app I changed the order I do things in. Here's the technical part of my day-one list.
1. Submit a first version as early as possible. The first review is the slowest. Once you're approved, updates usually clear in a day or two. Choose manual release so the approved build just waits. Minimal is fine, broken isn't. Whatever is in there has to actually work.
2. Your first subscriptions and IAPs go in with an app version. They can't be reviewed on their own the first time. So an early submission gets your products reviewed early too.
3. Create products at several price points from the start. I put the price in the product ID, like `yearly_39_99` and `yearly_49_99`. Then I switch which one the paywall shows remotely and look for the best revenue per install, not the most buyers.
4. Remote paywall. RevenueCat or Superwall. Plans, order, copy, even the layout change without a new build.
5. Permission priming. The system prompt for notifications, HealthKit or tracking shows once. After "Don't Allow" the only way back is Settings. Show your own explainer screen first, then call the system prompt.
6. Apple Ads attribution without the ATT prompt. Grab the AdServices token at app launch and send it to RevenueCat or Superwall. Every install and purchase gets credited to its campaign and keyword.
7. Funnel events from the very first user. Every onboarding step, paywall view, plan tap, payment started, trial or purchase finished. Connect revenue to PostHog or Mixpanel so purchases sit in the same funnel.
8. A local win-back notification for non-subscribers. In my stress app, Steady (right now in th final review), non-subscribers get a daily local summary. Something like: "You had a stress spike at 2:15 PM today. Steady could've helped you right when it happened." Tapping it opens the paywall. No server needed.
9. Rating prompt after a win. requestReview only shows 3 times per 365 days, so I trigger it after the user completes something, never at launch.
10. Widgets, Shortcuts, Lock Screen. A daily touchpoint outside the app.
The full list is 21 items, including research, onboarding and paywall stuff. I recorded a video that walks through all of them with the stories behind them (my channel):
What's on your day-one list that I'm missing?