If you've ever submitted your first app, what follows will feel familiar. If you haven't, bookmark this — you're going to want to reference it around week two of the process.
The starting state: a fresh App Store Connect account
You've paid the $99. You've verified the DUNS number. You've waited three business days for Apple to enroll you.
Now you're staring at App Store Connect, trying to figure out how to actually submit the app you've built. The dashboard shows icons for iTunes Connect (deprecated, but still visible), Certificates, TestFlight, Users and Access, Contracts. None of them say "Submit an App." That option lives under "My Apps" — which is one of the icons, but isn't labeled as such.
You have spent fifteen minutes and made zero progress.
Screen-by-screen through the actual flow
Screen 1: Bundle ID registration. In the developer portal — a different site than App Store Connect. Get this wrong and you can't rename it later.
Screen 2: Certificate + provisioning profile. Two of each, development and distribution. Apple's UI walks you through it but assumes you already know what a certificate does.
Screen 3: Xcode signing configuration. Six dropdowns, three of which look identical. If any one is wrong, the build fails with "no provisioning profile matches," and you go Google the exact error string.
Screen 4: Archive + upload. Ten minutes of "processing," then usually success. Sometimes an email thirty minutes later: "Your build has one or more issues." No indication of which.
Screen 5: App Information. Category, subcategory, content rights, age rating. That last one is a twenty-question survey.
Screen 6: Pricing and Availability. Choose the countries. Pick the tier. Explain whether the app is free but has in-app purchases.
Screen 7: App Privacy. Answer questions about data collection. Every "yes" cascades into four to six follow-up questions. Miss one and your submission is rejected.
Screen 8: The version you're submitting. Description, keywords (100 characters), promotional text, support URL, marketing URL, screenshots (six iPhone sizes minimum), preview video.
Screen 9: Review information. Contact info, demo account credentials, review notes. Then, finally, the "Submit for Review" button.
And that's not counting the TestFlight side, which is another five screens.
The 3am "invalid binary" moment
Every indie dev has this moment. You've finished all nine screens. You upload the build. Twenty minutes later, an email arrives:
The uploaded build has invalid binary architecture.
Or:
The provisioning profile does not include the Push Notifications entitlement.
Google says: rebuild with different Xcode settings. You do. Same error. You Google more. It turns out you also had to add a capability in the developer portal. You do that. Build. Upload. Wait twenty minutes. Different error.
This is where most people give up on their first-month timeline.
Why this UX pattern persists
Apple has zero pressure to simplify submission. Every indie who quits has ten replacements. And Apple's real customer isn't the indie dev — it's the enterprise studio with a team dedicated to this workflow.
That isn't going to change from within Apple. But it means the leverage for indie tooling is enormous — whoever solves this UX gap earns loyalty from a badly underserved segment.
What a good submission tool looks like
A good submission tool would:
- Ask the App Privacy questions in plain English, once. Then fill in App Store Connect automatically.
- Cross-check your build against the top 20 rejection reasons before upload. Fail loudly if any are hit.
- Show real-time status. "In review, 47h in queue, median for your category is 26h" — not "Waiting for Review" for five days.
- Handle rejections as tickets. The rejection reason parsed into a diff you can apply, with a resubmit button.
- Never let you reach a 3am invalid-binary moment. Every failure mode should surface before upload, not twenty minutes after.
That's the product I want to use as an indie dev — and it's part of why we built RapidNative to handle the generate-to-submit path so the nine screens stop being your problem.
Takeaway
The App Store submission flow is a UX artifact of Apple's incentives, not a law of nature. Until it improves, treat it like the gauntlet it is: budget a full week, expect one rejection, and surface every failure mode you can before you hit upload.
Which App Store rejection got you at 3am — invalid binary, missing entitlement, or a privacy label you filled out wrong? Drop it in the comments.
Top comments (0)