How to Publish a Flutter App on the Google Play Store: A Complete Step-by-Step Guide (2026)





Publishing your Flutter app on the Google Play Store is an exciting milestone. While Flutter makes it easy to build apps for multiple platforms, there are several important steps to prepare your Android app for production and successfully publish it.

This guide covers everything from generating a signed app bundle to submitting your app for review on the Google Play Console.


Prerequisites

Before you begin, ensure you have:

  • Flutter SDK installed

  • Android Studio (latest stable version)

  • A Google Play Developer account (one-time registration fee)

  • An app icon and screenshots

  • A privacy policy (if your app collects user data)

Verify your Flutter installation:

flutter doctor

Resolve any Android-related issues before proceeding.


Step 1: Prepare Your Flutter Project

Start by cleaning and fetching the latest dependencies:

flutter clean
flutter pub get

Run your application to ensure everything works correctly:

flutter run

Step 2: Update the App Version

Open your pubspec.yaml file and update the version:

version: 1.0.0+1
  • 1.0.0 → Version Name displayed to users.

  • 1 → Version Code used internally by Google Play.

Increase the build number every time you upload a new release.


Step 3: Change the Application ID

Open:

android/app/build.gradle

(or android/app/build.gradle.kts in newer Flutter projects)

Locate:

applicationId "com.example.myapp"

Replace it with a unique package name, for example:

applicationId "com.company.flutterapp"

This package name cannot be changed after publishing.


Step 4: Generate a Keystore

Generate a signing key using the Java keytool command:

keytool -genkeypair -v \
-keystore ~/upload-keystore.jks \
-keyalg RSA \
-keysize 2048 \
-validity 10000 \
-alias upload

You'll be prompted to enter:

  • Password

  • Name

  • Organization

  • Country

Store the keystore securely—you'll need it for future updates.


Step 5: Create key.properties

Inside the android folder, create a file named:

key.properties

Add the following:

storePassword=YOUR_STORE_PASSWORD
keyPassword=YOUR_KEY_PASSWORD
keyAlias=upload
storeFile=/Users/yourname/upload-keystore.jks

Tip: Never commit this file or your keystore to a public repository.


Step 6: Configure Signing

Open android/app/build.gradle (or build.gradle.kts) and configure release signing as described in the official Flutter documentation.

This allows Flutter to generate signed release builds.


Step 7: Configure App Icons

The easiest way to generate launcher icons is with the flutter_launcher_icons package.

Add it to pubspec.yaml:

dev_dependencies:
  flutter_launcher_icons: ^0.14.0

flutter_launcher_icons:
  android: true
  ios: true
  image_path: assets/icon/icon.png

Generate icons:

dart run flutter_launcher_icons

Step 8: Configure the App Name

Update the app label in:

android/app/src/main/AndroidManifest.xml

Example:

android:label="My Flutter App"

Step 9: Request Required Permissions

If your app uses features like:

  • Camera

  • Location

  • Storage

  • Bluetooth

  • Notifications

Declare only the permissions your app actually needs in the Android manifest and request runtime permissions where required.


Step 10: Build the Release App Bundle

Google Play recommends uploading an Android App Bundle (.aab).

Build it using:

flutter build appbundle

After the build completes, you'll find the file at:

build/app/outputs/bundle/release/app-release.aab

Step 11: Test the Release Build

Install the release version on a physical device:

flutter install

Verify:

  • Login

  • Navigation

  • Push notifications

  • Payments

  • Camera

  • Location

  • Offline functionality

Testing the release build helps catch issues that may not appear in debug mode.


Step 12: Create a Google Play Developer Account

Sign in to the Google Play Console and complete the one-time developer registration.

After registration, you'll have access to the Play Console dashboard.


Step 13: Create a New App

In the Play Console:

  1. Click Create App

  2. Enter the app name.

  3. Choose the default language.

  4. Select whether the app is an app or a game.

  5. Indicate whether it's free or paid.


Step 14: Complete Store Listing

Provide:

  • App title

  • Short description

  • Full description

  • App icon (512 × 512 px)

  • Feature graphic (1024 × 500 px)

  • Screenshots for phones (and tablets if supported)

A well-written store listing can improve downloads.


Step 15: Complete App Content

Google Play requires you to complete several policy declarations, which may include:

  • Privacy policy

  • Data safety

  • Ads declaration

  • Content rating questionnaire

  • Target audience

  • Government apps (if applicable)

  • News apps (if applicable)

Ensure the information accurately reflects your app.


Step 16: Upload the App Bundle

Go to:

Release → Production

Create a new release and upload your .aab file.

Google Play will process the upload and perform validation checks.


Step 17: Review and Publish

Review all sections for completeness.

Once everything is complete:

  • Submit the release.

  • Wait for Google's review.

  • After approval, your app will become available on the Play Store according to your chosen rollout settings.


Common Publishing Errors

Here are some common issues developers encounter:

  • Version code already exists

  • Invalid app signing configuration

  • Missing privacy policy

  • Missing Data Safety form

  • Unsupported target SDK version

  • Incorrect package name

  • App crashes on launch

  • Missing required permissions or declarations

Review Play Console warnings carefully before publishing.


Useful Flutter Commands

flutter doctor
flutter clean
flutter pub get
flutter run
flutter build apk
flutter build appbundle
flutter install

Best Practices

  • Always upload an Android App Bundle (.aab) instead of an APK.

  • Keep your Flutter SDK and dependencies up to date.

  • Increase the version code for every release.

  • Test thoroughly on multiple Android devices.

  • Securely back up your signing keystore.

  • Complete all required Play Console forms before submitting.


Conclusion

Publishing a Flutter app to the Google Play Store is a straightforward process once your project is properly configured. By preparing your app, generating a signed release, testing it thoroughly, and completing the Play Console requirements, you can confidently launch your app to millions of Android users.

Good luck with your release, and happy Flutter development!

Comments