Guide

How to Publish Your First Android App on the Play Store in 2026

Publishing your first Android app is one of those things that feels harder than it should be. The official documentation skips the parts that actually trip people up, and there are just enough moving pieces to make first-timers stall for days. I went through this entire process with PayTrack, and this guide covers everything I wish I'd known — from the $25 registration fee to the moment your app goes live.

"The hard part isn't building the app. It's getting it past Google's policy review without triggering a rejection you don't understand."

1 Set up your Google Play Developer account

Before you can publish anything, you need a Google Play Developer account. This is a one-time setup tied to your Google account and costs a one-time fee of $25 USD. There's no annual renewal — you pay once and you're in for life.

How to register

Go to play.google.com/console and sign in with your Google account. You'll be asked to accept the Developer Distribution Agreement, fill in your developer name (this is what users will see on the Play Store under your app), and pay the $25 fee via Google Pay or card.

lightbulb

Choose your developer name carefully — it appears on every app you publish. Use your real name or a consistent brand name. You can change it later but it requires re-verification.

Account approval is usually instant, but Google sometimes takes up to 48 hours to verify new accounts. Once approved you'll have access to the Play Console dashboard.

2 Prepare your app for release

Before generating a build, make sure your app is actually ready for production. This sounds obvious but there are a few specific things Google checks that developers often miss.

Checklist before building

  • check_circle Set your versionCode and versionName in your build.gradle. The versionCode must be an integer that increases with every upload — start at 1.
  • check_circle Set your application ID (applicationId) — this is permanent. Once published, you can never change it. Use reverse domain notation: com.yourname.appname.
  • check_circle Remove all debug logs, hardcoded test API keys, and debuggable true flags from your release build config.
  • check_circle Make sure your app has a proper app icon at all required densities (Android Studio's Image Asset Studio generates these automatically).
  • check_circle Verify your minSdk and targetSdk. In 2026, Google requires targetSdk to be at least API level 35 for new apps.
  • check_circle Declare only the permissions your app actually needs. Unnecessary permissions are a common rejection reason.
  • check_circle If your app targets children or collects any user data, you'll need a privacy policy URL. Create one before submitting.
warning

Your applicationId is permanent. If you publish com.urim.myapp and later want to rename it to com.urim.betterapp, you'll need to publish it as an entirely new app and lose all your existing users and reviews.

3 Generate a signed release build

Google requires all apps to be signed with a private key before they can be published. This signing process proves the app came from you. You'll generate a keystore file — guard this with your life, because losing it means you can never update your app.

Generate your keystore in Android Studio

Go to Build → Generate Signed Bundle / APK. Select Android App Bundle (AAB) — Google now requires AAB format for new apps, not APK. Click Create new keystore and fill in the details:

Key store path: /your/path/my-release-key.jks
Password:       (choose a strong password)
Key alias:      my-key-alias
Key password:   (can be same as store password)
Validity:       25 years
First and last name: Urim Mustafa
Organization:   (optional)
Country code:   MT
error

Back up your .jks keystore file and its passwords in at least two separate locations — cloud storage, a password manager, an external drive. If you lose this file, you cannot push updates to your existing app. Ever. Google cannot help you recover it.

Automate signing with gradle (recommended)

Rather than entering your keystore details manually every time, add a signing config to your build.gradle so release builds are signed automatically:

android {
    signingConfigs {
        release {
            storeFile file("../my-release-key.jks")
            storePassword System.getenv("KEYSTORE_PASSWORD")
            keyAlias "my-key-alias"
            keyPassword System.getenv("KEY_PASSWORD")
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

Using environment variables for passwords keeps them out of your source code. Run the build with ./gradlew bundleRelease and your signed AAB will be in app/build/outputs/bundle/release/.

4 Create your Play Store listing

In Play Console, click Create app. You'll set your app name, default language, and whether it's an app or game. Once created, head to Store presence → Main store listing. This is what users see on the Play Store, so take it seriously.

What you need to prepare

  • check_circleShort description — up to 80 characters. This shows up in search results. Pack in your main value proposition.
  • check_circleFull description — up to 4,000 characters. Use natural language, include keywords people would search for, and break it up with line breaks. Don't keyword-stuff.
  • check_circleApp icon — 512×512px PNG, no alpha/transparency allowed.
  • check_circleFeature graphic — 1024×500px. This appears at the top of your listing. Make it clean and legible at small sizes.
  • check_circleScreenshots — minimum 2, maximum 8 per device type. Phone screenshots must be at least 320px on the short side. Show the actual app, not just marketing graphics.
lightbulb

Screenshots are the single most important conversion factor on your store listing. Users decide in 3 seconds whether to install. Use real in-app screenshots with short captions that explain the feature, not vague marketing phrases.

5 Upload your AAB and set up a release

Go to Testing → Internal testing first. Even if you plan to go straight to production, starting with internal testing lets you verify the build uploads correctly and passes Google's automated checks before you commit to a full review cycle.

Upload your AAB

Click Create new release, then drag your .aab file into the upload box. Google will process it — this takes a minute or two. Once processed, you'll see your version code, version name, and a list of supported devices. Check this number: if it's below a few hundred million devices, something in your manifest is likely too restrictive.

Release notes

Write release notes even for your first version. Users see these when they're deciding whether to update. For a first release, something like "Initial release of PayTrack — track your shifts and take-home pay." is perfectly fine.

warning

If Google flags your build with a warning about a target SDK that's too low, you cannot publish to production until you fix it. In 2026, targetSdk 35 is the minimum for new app submissions.

6 Complete the policy declarations

This is the step that surprises most first-time publishers. Before Google will review your app, you must complete a series of policy declarations in the Policy section of Play Console. Skipping any of them blocks your submission.

Data safety form

This is the most important one. You must declare exactly what data your app collects, how it's used, whether it's shared with third parties, and whether users can request deletion. Be thorough and accurate — Google cross-checks this against your actual app behavior, and discrepancies are a common rejection reason.

Common data types to declare:

  • Personal info (name, email) — if you use Firebase Auth
  • Files and docs — if your app reads/writes storage
  • App activity — crash logs, usage statistics
  • Device identifiers — if you use advertising IDs

App content declarations

You'll also need to complete:

  • check_circleTarget audience — if your app could be used by anyone under 13, you're subject to additional COPPA requirements.
  • check_circleNews app declaration — only relevant if you aggregate news content.
  • check_circleCOVID-19 contact tracing — declare if your app is not related to this (most apps aren't).
  • check_circleFinancial features — declare if your app handles real money transactions or investments. Note: a salary tracker like PayTrack does not handle real transactions, so this doesn't apply.

7 Submit for review and go live

Once all policy sections show a green tick, go to Production, create a new release, upload your AAB (or promote from internal testing), and click Review release. If everything is in order, you'll see a Start rollout to production button.

Review timeline

Google's review process for new apps typically takes 3 to 7 days in 2026. It used to be faster, but increased policy enforcement has extended review times. Don't panic if it sits at "In review" for several days — this is normal.

lightbulb

You can choose a staged rollout — publish to 10% of users first, monitor crash rates and reviews, then expand to 100%. For a first app this is optional, but it's a good habit to build.

Common rejection reasons

  • cancelMisleading metadata — your description promises features the app doesn't have, or your screenshots don't match the actual app.
  • cancelPrivacy policy missing or incomplete — required if you collect any personal data or use certain permissions like camera, microphone, or location.
  • cancelData safety mismatch — your declaration says you don't collect data, but your app clearly does (e.g. Firebase Analytics).
  • cancelPermissions not justified — requesting permissions (especially sensitive ones) without a clear in-app purpose.
  • cancelTarget SDK too low — must be API 35+ for new submissions in 2026.

What happens after you publish

Once your app is live, it typically appears in search results within a few hours, though full indexing can take up to 24 hours. Your app page will be sparse at first — no ratings, no reviews, minimal download count. This is completely normal and won't last long if your app solves a real problem.

Things to do immediately after going live

  • check_circleShare the Play Store link everywhere — your portfolio, LinkedIn, WhatsApp, social media. Early organic installs help with Play Store ranking signals.
  • check_circleSet up Android Vitals in Play Console — this shows crash rates, ANR rates, and battery usage. Fix any regressions fast.
  • check_circleReply to your first reviews, even if they're just "Great app!" — engagement signals matter for the algorithm.
  • check_circleStart planning your first update. Apps that receive regular updates rank better and retain users more effectively than apps that go dark after launch.
"Shipping is a skill. The first time takes weeks. By the third or fourth app, you'll do it in an afternoon."

The process is genuinely not as complicated as it looks from the outside — it's just unfamiliar. Once you've done it once with PayTrack or any other app, the second time takes a fraction of the effort. The key is not to let the policy declarations and signing setup intimidate you into never pressing submit.

See a published app in action

PayTrack went through this exact process — from first commit to live listing in under four weeks, built around a full-time job.

smartphone View PayTrack