{"id":87,"date":"2026-04-18T14:44:47","date_gmt":"2026-04-18T14:44:47","guid":{"rendered":"https:\/\/appscreenkit.com\/learn\/app-store-submission-steps-indie-developer-guide\/"},"modified":"2026-04-18T14:44:54","modified_gmt":"2026-04-18T14:44:54","slug":"app-store-submission-steps-indie-developer-guide","status":"publish","type":"post","link":"https:\/\/appscreenkit.com\/learn\/app-store-submission-steps-indie-developer-guide\/","title":{"rendered":"App Store Submission Steps: A Complete Indie Dev Guide"},"content":{"rendered":"<\/p>\n<hr>\n<blockquote>\n<p><strong>TL;DR:<\/strong><\/p>\n<ul>\n<li>Most app submission issues are predictable and preventable with proper preparation.<\/li>\n<li>Finalize visuals, assets, and compliance details early to streamline the review process.<\/li>\n<li>Using tools like AppScreenKit simplifies asset creation, resizing, and adherence to platform requirements.<\/li>\n<\/ul>\n<\/blockquote>\n<hr>\n<p>Submitting your app to the App Store or Google Play feels straightforward until it isn\u2019t. Rejections, missing assets, and confusing policy declarations can stall a launch for days or even weeks. For indie developers and small teams without a dedicated release manager, these delays hit harder because every day in review is a day your app isn\u2019t earning downloads. The good news is that most submission problems are predictable and preventable. This guide walks you through exactly what to prepare, how to submit to both Apple and Google, how to troubleshoot common rejections, and how to build a repeatable process that gets faster every time.<\/p>\n<h2 id=\"table-of-contents\">Table of Contents<\/h2>\n<ul>\n<li><a href=\"#what-you-need-before-you-start\">What you need before you start<\/a><\/li>\n<li><a href=\"#step-by-step%3A-submitting-to-the-apple-app-store\">Step-by-step: Submitting to the Apple App Store<\/a><\/li>\n<li><a href=\"#step-by-step%3A-submitting-to-google-play\">Step-by-step: Submitting to Google Play<\/a><\/li>\n<li><a href=\"#troubleshooting%2C-review-timelines%2C-and-common-mistakes\">Troubleshooting, review timelines, and common mistakes<\/a><\/li>\n<li><a href=\"#what-most-guides-miss%3A-thrifty-strategies-for-indie-teams\">What most guides miss: Thrifty strategies for indie teams<\/a><\/li>\n<li><a href=\"#make-your-next-submission-faster-(and-stand-out)-with-appscreenkit\">Make your next submission faster (and stand out) with AppScreenKit<\/a><\/li>\n<li><a href=\"#frequently-asked-questions\">Frequently asked questions<\/a><\/li>\n<\/ul>\n<h2 id=\"key-takeaways\">Key Takeaways<\/h2>\n<table>\n<thead>\n<tr>\n<th>Point<\/th>\n<th>Details<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Prepare assets early<\/td>\n<td>Gather all accounts, compliance docs, and visual assets before starting your submission.<\/td>\n<\/tr>\n<tr>\n<td>Follow platform steps<\/td>\n<td>Work through each store\u2019s workflow precisely to avoid common holdups and rejections.<\/td>\n<\/tr>\n<tr>\n<td>Double-check visuals<\/td>\n<td>Ensure icons, screenshots, and feature graphics meet the right sizes and quality guidelines.<\/td>\n<\/tr>\n<tr>\n<td>Avoid policy pitfalls<\/td>\n<td>Always include required privacy information, demo accounts, and permission declarations to speed up review.<\/td>\n<\/tr>\n<tr>\n<td>Automate for efficiency<\/td>\n<td>Tools like AppScreenKit can cut asset prep time and help indie teams submit like pros.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"what-you-need-before-you-start\">What you need before you start<\/h2>\n<p>Before you upload a single build, get your accounts and assets in order. Scrambling for a privacy policy URL or realizing your screenshots are the wrong size after you\u2019ve already filled out metadata is a frustrating, avoidable waste of time.<\/p>\n<p><strong>Accounts you need:<\/strong><\/p>\n<ul>\n<li><strong>Apple Developer Program<\/strong> membership ($99\/year) and access to App Store Connect<\/li>\n<li><strong>Google Play Console<\/strong> account ($25 one-time registration fee)<\/li>\n<li>A privacy policy hosted at a public URL (required by both platforms)<\/li>\n<li>Demo login credentials if your app has any gated or account-locked features<\/li>\n<\/ul>\n<p>The <a href=\"https:\/\/developer.apple.com\/help\/app-store-connect\/manage-submissions-to-app-review\/overview-of-submitting-for-review\/\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">app store submission process<\/a> for Apple requires creating an app record in App Store Connect, uploading a build via Xcode, and completing all metadata including screenshots for every supported device size. Google\u2019s process is similar but has its own quirks. The <a href=\"https:\/\/support.google.com\/googleplay\/android-developer\/answer\/9859348?hl=en-GB\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">Google Play launch checklist<\/a> covers app creation in Play Console, completing app content declarations, setting up your store listing, and uploading an Android App Bundle (AAB).<\/p>\n<p>Here\u2019s a quick comparison of what each platform requires at the visual level:<\/p>\n<table>\n<thead>\n<tr>\n<th>Asset<\/th>\n<th>Apple App Store<\/th>\n<th>Google Play<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>App icon<\/td>\n<td>1024&#215;1024 px PNG<\/td>\n<td>512&#215;512 px PNG<\/td>\n<\/tr>\n<tr>\n<td>Screenshots<\/td>\n<td>Device-specific sizes (6.9&quot;, 6.5&quot;, 5.5&quot; etc.)<\/td>\n<td>Up to 8 screenshots per device type<\/td>\n<\/tr>\n<tr>\n<td>Feature graphic<\/td>\n<td>Not required<\/td>\n<td>1024&#215;500 px JPG or PNG<\/td>\n<\/tr>\n<tr>\n<td>Preview video<\/td>\n<td>Optional (up to 30 sec)<\/td>\n<td>Optional<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Beyond visuals, gather your compliance documents early. You\u2019ll need a privacy policy URL, a clear description of what permissions your app requests and why, and any age rating information. Skipping these or filling them in carelessly is one of the top reasons for rejection. Review the <a href=\"https:\/\/appscreenkit.com\/learn\/app-store-compliance-essential-steps-approval-quality\">app store compliance steps<\/a> before you begin so nothing catches you off guard. Also confirm your screenshots meet every platform\u2019s <a href=\"https:\/\/appscreenkit.com\/learn\/app-store-requirements-submission-rules-visuals-convert\">app store requirements<\/a> before upload.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/csuxjmfbwmkxiegfpljm.supabase.co\/storage\/v1\/object\/public\/blog-images\/organization-24157\/1776523484231_Infographic-showing-app-submission-required-assets.jpeg\" alt=\"Infographic showing app submission required assets\"><\/p>\n<p>Pro Tip: Start with your screenshots and icon before you write a single line of metadata. Visual assets take the longest to get right, and having them ready prevents the most common last-minute panic.<\/p>\n<h2 id=\"step-by-step-submitting-to-the-apple-app-store\">Step-by-step: Submitting to the Apple App Store<\/h2>\n<p>Once your assets are ready, Apple\u2019s submission process follows a clear sequence. Stick to the order below and you\u2019ll avoid the most common sequencing mistakes.<\/p>\n<ol>\n<li><strong>Create your app record in App Store Connect.<\/strong> Log in, go to My Apps, and click the plus icon to create a new app. Choose your platform, enter your bundle ID (must match your Xcode project), and set your primary language.<\/li>\n<li><strong>Upload your build via Xcode.<\/strong> Archive your app in Xcode, then use the Organizer to distribute it to App Store Connect. Wait for the build to process (usually 15-30 minutes) before it appears in the TestFlight or submission area.<\/li>\n<li><strong>Fill in your metadata.<\/strong> This includes your app name, subtitle, description, keywords, support URL, and marketing URL. Keywords are limited to 100 characters, so choose them carefully.<\/li>\n<li><strong>Upload screenshots for every required device size.<\/strong> Apple requires screenshots for at least one device in each size class you support. The <a href=\"https:\/\/appscreenkit.com\/learn\/app-store-listing-checklist-optimize-visuals-cvr\">app store listing checklist<\/a> covers exactly which sizes to prioritize.<\/li>\n<li><strong>Set pricing, availability, and age rating.<\/strong> Complete the App Privacy section, which asks about data collection practices in detail.<\/li>\n<li><strong>Add demo login credentials<\/strong> if your app requires an account to access features. Reviewers cannot test gated content without them, and missing credentials is one of the most common rejection triggers.<\/li>\n<li><strong>Submit for review.<\/strong> Click \u201cAdd for Review\u201d and then \u201cSubmit to App Review.\u201d<\/li>\n<\/ol>\n<blockquote>\n<p>Apple\u2019s submission overview notes that review typically takes 24-48 hours, though complex apps or first-time submissions can take longer. The most common rejection reasons are crashes, incomplete metadata, missing privacy policy details, and screenshots that don\u2019t accurately represent the app.<\/p>\n<\/blockquote>\n<p>For screenshots specifically, think of them as your most important marketing real estate. Use clear, benefit-focused captions on each image. Show the most compelling feature first. The <a href=\"https:\/\/appscreenkit.com\/learn\/app-preview-images-boost-store-conversions\">app preview images<\/a> guide explains how to structure visuals that actually convert browsers into downloads.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/csuxjmfbwmkxiegfpljm.supabase.co\/storage\/v1\/object\/public\/blog-images\/organization-24157\/1776523311866_Designer-reviewing-app-screenshots-in-cafe-setting.jpeg\" alt=\"Designer reviewing app screenshots in caf\u00e9 setting\"><\/p>\n<p>Pro Tip: Generate screenshots at the largest required size first (6.9&quot; for iPhone), then scale down. Many tools, including AppScreenKit, let you export all sizes in one click, which cuts hours off your prep time.<\/p>\n<h2 id=\"step-by-step-submitting-to-google-play\">Step-by-step: Submitting to Google Play<\/h2>\n<p>Google Play has its own rhythm, and if you\u2019re a first-time publisher, there\u2019s one requirement that surprises almost everyone: the mandatory closed testing period.<\/p>\n<ol>\n<li><strong>Create your app in Play Console.<\/strong> Go to All Apps, click Create App, and fill in the basic details including app name, default language, and whether it\u2019s an app or game.<\/li>\n<li><strong>Complete the app content declarations.<\/strong> This section covers target audience, content rating, data safety, and any sensitive permissions your app uses. Google reviews these carefully.<\/li>\n<li><strong>Set up your store listing.<\/strong> Add your short description (80 characters max), full description (4,000 characters max), screenshots, feature graphic, and app icon.<\/li>\n<li><strong>Upload your AAB (Android App Bundle).<\/strong> Go to Production or a testing track, create a new release, and upload your signed AAB file.<\/li>\n<li><strong>Complete a closed test with real users.<\/strong> New Google Play accounts must run a closed testing period of at least 14 days with a minimum of 20 testers who have opted in. This is non-negotiable for first-time publishers.<\/li>\n<li><strong>Roll out to production.<\/strong> After your closed test is complete, you can submit for production review.<\/li>\n<\/ol>\n<p>Here are the exact graphic asset dimensions Google requires:<\/p>\n<table>\n<thead>\n<tr>\n<th>Asset<\/th>\n<th>Dimensions<\/th>\n<th>Format<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>App icon<\/td>\n<td>512&#215;512 px<\/td>\n<td>32-bit PNG<\/td>\n<\/tr>\n<tr>\n<td>Feature graphic<\/td>\n<td>1024&#215;500 px<\/td>\n<td>JPG or 24-bit PNG<\/td>\n<\/tr>\n<tr>\n<td>Phone screenshots<\/td>\n<td>320-3840 px (any side)<\/td>\n<td>JPG or PNG<\/td>\n<\/tr>\n<tr>\n<td>Tablet screenshots<\/td>\n<td>Same range, tablet ratio<\/td>\n<td>JPG or PNG<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Your privacy policy URL is mandatory. Without it, you cannot publish. For design guidance on making your Play listing visually competitive, the <a href=\"https:\/\/appscreenkit.com\/learn\/design-google-play-visuals-maximize-app-conversions\">Google Play visual design<\/a> guide walks through what works in 2026.<\/p>\n<p>Pro Tip: Build your closed tester list before you submit your app. Collect 20+ opt-in email addresses from colleagues, beta users, or community members in advance so the 14-day clock starts immediately after upload.<\/p>\n<h2 id=\"troubleshooting-review-timelines-and-common-mistakes\">Troubleshooting, review timelines, and common mistakes<\/h2>\n<p>Submission sent. Now what? Understanding what reviewers look for, and where most apps stumble, saves you from frustrating back-and-forth cycles.<\/p>\n<p><strong>Most common rejection reasons:<\/strong><\/p>\n<ul>\n<li>Incomplete or inaccurate metadata (descriptions that don\u2019t match the app\u2019s actual behavior)<\/li>\n<li>App crashes during review (always test on a clean device before submitting)<\/li>\n<li>Missing or incorrect privacy policy<\/li>\n<li>Screenshots that are misleading or don\u2019t represent the current version<\/li>\n<li>Undeclared permissions or missing demo login credentials<\/li>\n<li><a href=\"https:\/\/developers.apple.com\/app-store\/review\/guidelines\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">Policy violations<\/a> around content, data collection, or in-app purchases<\/li>\n<\/ul>\n<blockquote>\n<p><strong>Critical warning:<\/strong> Always provide working demo credentials for any account-gated features. Reviewers will not create their own accounts to test your app. Missing credentials almost guarantees rejection on the Apple side.<\/p>\n<\/blockquote>\n<p>Here\u2019s how Apple and Google compare on the review process:<\/p>\n<table>\n<thead>\n<tr>\n<th>Factor<\/th>\n<th>Apple App Store<\/th>\n<th>Google Play<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Typical review time<\/td>\n<td>24-48 hours<\/td>\n<td>1-7 days<\/td>\n<\/tr>\n<tr>\n<td>First upload requirement<\/td>\n<td>None extra<\/td>\n<td>14-day closed test<\/td>\n<\/tr>\n<tr>\n<td>Primary focus<\/td>\n<td>Guideline compliance and safety<\/td>\n<td>Testing tracks and declarations<\/td>\n<\/tr>\n<tr>\n<td>Rejection appeal process<\/td>\n<td>Resolution Center in App Store Connect<\/td>\n<td>Policy appeal form in Play Console<\/td>\n<\/tr>\n<tr>\n<td>Common pain points<\/td>\n<td>Metadata accuracy, demo credentials<\/td>\n<td>Content declarations, closed test setup<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Both platforms <a href=\"https:\/\/support.google.com\/googleplay\/android-developer\/answer\/13393723?hl=en-GB\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">reject misleading metadata<\/a> and inaccurate screenshots. Apple leans harder on guideline compliance and safety checks. Google focuses more on the policy declaration process and testing track completion. Knowing this helps you prioritize where to double-check your work.<\/p>\n<p>If you get rejected, read the rejection message carefully. Most include specific guideline references. Fix only what\u2019s flagged, resubmit, and don\u2019t change unrelated metadata at the same time (it can trigger a longer re-review). For ongoing improvement, the guides on <a href=\"https:\/\/appscreenkit.com\/learn\/app-store-listing-quality-boost-discoverability-downloads\">improving app listing quality<\/a> and <a href=\"https:\/\/appscreenkit.com\/learn\/effective-app-store-branding-steps-higher-conversions\">app store branding tips<\/a> are worth bookmarking.<\/p>\n<h2 id=\"what-most-guides-miss-thrifty-strategies-for-indie-teams\">What most guides miss: Thrifty strategies for indie teams<\/h2>\n<p>Most submission guides treat the process as a one-time checklist. That\u2019s the wrong mental model. The teams that breeze through submissions treat it as a repeatable system they refine over time.<\/p>\n<p>Here\u2019s the counterintuitive part: solo developers and small teams often get stuck not because they don\u2019t understand the guidelines, but because they try to do everything in parallel. They\u2019re tweaking code while also writing metadata and manually resizing screenshots at 2 a.m. the night before launch. That\u2019s where mistakes happen.<\/p>\n<p>The smarter approach is to finalize your store visuals early, before your last development sprint. Screenshots and feature graphics should be locked in while you\u2019re still polishing the app. This forces you to think about your value proposition clearly, which often improves the app itself.<\/p>\n<p>Using <a href=\"https:\/\/appscreenkit.com\/learn\/pre-built-screenshot-templates-save-time-boost-quality\">screenshot template time-savers<\/a> means you\u2019re not starting from scratch every launch. Pre-built templates with correct dimensions eliminate an entire category of rejection risk. Pair that with a policy checklist you reuse for every submission, and you\u2019ve built a real process instead of a panic.<\/p>\n<h2 id=\"make-your-next-submission-faster-and-stand-out-with-appscreenkit\">Make your next submission faster (and stand out) with AppScreenKit<\/h2>\n<p>If there\u2019s one place where indie teams consistently lose hours, it\u2019s creating and resizing screenshots for every required device size. Getting dimensions wrong is one of the easiest ways to trigger a rejection or delay.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/csuxjmfbwmkxiegfpljm.supabase.co\/storage\/v1\/object\/public\/blog-images\/organization-24157\/1774735187544_appscreenkit.jpg\" alt=\"https:\/\/appscreenkit.com\"><\/p>\n<p><a href=\"https:\/\/appscreenkit.com\">AppScreenKit<\/a> is built specifically for this bottleneck. Upload your app screens, customize them with 3D device mockups, add branded text and gradient backgrounds, and export every required size in one click. No Figma skills needed. You can also stay current with <a href=\"https:\/\/appscreenkit.com\/learn\/app-store-visual-trends-boost-engagement-2026\">2026 app store visual trends<\/a> and review the full visual submission requirements to make sure every asset is store-ready before you even open App Store Connect or Play Console.<\/p>\n<h2 id=\"frequently-asked-questions\">Frequently asked questions<\/h2>\n<h3 id=\"how-long-does-app-store-review-take-for-apple-and-google\">How long does app store review take for Apple and Google?<\/h3>\n<p>Apple review typically takes 24-48 hours, while Google Play can take 1-7 days. First-time Google Play publishers also need to complete a 14-day closed test before production rollout.<\/p>\n<h3 id=\"what-are-the-common-reasons-for-app-rejection\">What are the common reasons for app rejection?<\/h3>\n<p>The most frequent causes are incomplete metadata, app crashes during review, policy violations, missing privacy policies, and misleading screenshots. Rejections from incomplete metadata are especially common and easy to prevent with a pre-submission checklist.<\/p>\n<h3 id=\"what-visuals-are-required-for-app-store-submission\">What visuals are required for app store submission?<\/h3>\n<p>Apple and Google each require specific screenshot dimensions and a correctly sized app icon. Google Play additionally requires a 1024&#215;500 feature graphic and accepts up to 8 screenshots per device type.<\/p>\n<h3 id=\"how-can-i-speed-up-submission-for-a-first-time-app\">How can I speed up submission for a first-time app?<\/h3>\n<p>Prepare all assets before you open the submission form, follow guidelines precisely, and use a screenshot generator to avoid formatting errors. Both platforms emphasize guideline compliance and accurate assets as the fastest path to approval.<\/p>\n<h2 id=\"recommended\">Recommended<\/h2>\n<ul>\n<li><a href=\"https:\/\/appscreenkit.com\/learn\/app-store-compliance-essential-steps-approval-quality\">App store compliance: Essential steps for approval and quality \u2013 AppScreenKit<\/a><\/li>\n<li><a href=\"https:\/\/appscreenkit.com\/learn\/app-store-requirements-submission-rules-visuals-convert\">App store requirements: submission rules and visuals that convert \u2013 AppScreenKit<\/a><\/li>\n<li><a href=\"https:\/\/appscreenkit.com\/learn\/app-store-listing-quality-boost-discoverability-downloads\">App store listing quality: boost discoverability and downloads \u2013 AppScreenKit<\/a><\/li>\n<li><a href=\"https:\/\/appscreenkit.com\/learn\/effective-app-store-branding-steps-higher-conversions\">Effective app store branding steps for higher conversions \u2013 AppScreenKit<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A complete app store submission guide for indie developers covering Apple and Google Play steps, required assets, common rejections, and time-saving visual tools.<\/p>\n","protected":false},"author":1,"featured_media":90,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-87","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/posts\/87","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/comments?post=87"}],"version-history":[{"count":1,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/posts\/87\/revisions"}],"predecessor-version":[{"id":88,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/posts\/87\/revisions\/88"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/media\/90"}],"wp:attachment":[{"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/media?parent=87"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/categories?post=87"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/appscreenkit.com\/learn\/wp-json\/wp\/v2\/tags?post=87"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}