If you want to publish flutter app to play store but feel unsure where to start, this guide is for you. Flutter makes building an app easy, but the publishing part can feel confusing the first time. Don't worry: once you understand the steps, the process is very manageable.
In this guide we walk through everything in plain language, from preparing your project to building a signed Android App Bundle (AAB) and submitting it in Google Play Console. Whether you built the app yourself or bought a ready-made Flutter app, the steps are the same.
What You Need Before You Start
Before you publish flutter app to play store, gather a few essentials. Having these ready saves time and avoids frustrating rejections later.
- A Google Play Console developer account (Google charges a one-time registration fee).
- Flutter SDK and Android Studio installed, with your app running correctly on a device or emulator.
- A unique package name (application ID), such as com.yourbusiness.appname.
- App icon, screenshots and a feature graphic for the store listing.
- A privacy policy URL hosted on a public website.
That last point catches many beginners. Google requires a privacy policy link, so you need somewhere to host it. A simple website on your own domain works perfectly. You can search and register a domain and pair it with an affordable hosting plan.
Step 1: Prepare Your Flutter Project
Set the application ID and app name
Open android/app/build.gradle (or build.gradle.kts) and check the applicationId. It must be unique across Google Play and cannot be changed after publishing, so choose carefully.
Next, set a friendly app name in android/app/src/main/AndroidManifest.xml using the android:label attribute.
Update the version number
In pubspec.yaml you will see a line like version: 1.0.0+1. The part before the plus sign is the version name users see. The number after the plus is the version code, and it must increase every time you upload a new build.
Add your app icon
Replace the default Flutter icon. Many developers use the flutter_launcher_icons package to generate all required icon sizes automatically from one image.
Check permissions
Review the permissions in your AndroidManifest file. Remove anything your app does not really need. Unnecessary sensitive permissions can slow down review or lead to rejection.
Step 2: Create an Upload Keystore and Sign Your App
Google Play only accepts signed apps. Signing proves that updates truly come from you.
Create an upload keystore with the keytool command that comes with Java. On macOS or Linux it looks like this:
keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload
You will be asked for passwords and some basic details. Then create a file called android/key.properties containing:
- storePassword – your keystore password
- keyPassword – your key password
- keyAlias – for example, upload
- storeFile – the path to your .jks file
Finally, update your Gradle file so the release build type uses this signing configuration. The official Flutter documentation shows the exact code for both Groovy and Kotlin Gradle files.
Important: back up your keystore and passwords somewhere safe, and never upload them to a public Git repository. Losing them makes updating your app much harder.
Step 3: Build the Android App Bundle (AAB)
Google Play requires new apps to be uploaded as an AAB instead of an APK. The good news is that Flutter makes this a one-line job. In your project folder, run:
flutter build appbundle
When it finishes, your file will be at build/app/outputs/bundle/release/app-release.aab.
Before uploading, test a release build on a real device with flutter run --release. Release mode can behave differently from debug mode, especially with ads, network calls or code shrinking, so it is worth checking.
Step 4: Set Up Your App in Google Play Console
Create the app
Log in to Play Console and click Create app. Enter the app name, default language, whether it is an app or a game, and whether it is free or paid. Accept the declarations to continue.
Complete the app content section
Google asks several questions before you can publish. Work through each one honestly:
- Privacy policy – paste your hosted policy URL.
- App access – give login details if parts of your app are restricted.
- Ads – declare whether your app shows ads.
- Content rating – fill in the questionnaire.
- Target audience – choose the age groups.
- Data safety – explain what data you collect and why.
Write a strong store listing
Your listing is your shop window. Add a clear short description, a helpful full description, your icon, a feature graphic and phone screenshots. Use natural keywords that people actually search for, but write for humans first.
Step 5: Upload, Test and Release
Go to the Testing or Production section and create a new release. Upload your app-release.aab file. Google Play App Signing will manage the final app signing key for you, while you keep your upload key.
Many beginners skip testing, but it is smart to use internal testing first. You can invite a few testers and confirm everything works from a real Play Store install. Note that some newer personal developer accounts must also run a closed test with testers before production access is granted, so check the requirements shown in your Play Console.
When you are ready, add release notes and send the release for review. Review time varies from a few hours to several days. Once approved, your app goes live.
Common Mistakes to Avoid
When you publish flutter app to play store for the first time, these errors come up again and again:
- Forgetting to increase the version code – Play Console will reject the upload.
- Using the debug signing key – release builds must use your upload key.
- Missing or broken privacy policy link – make sure the page loads publicly.
- Inaccurate data safety answers – these must match what your app and its packages really do.
- Low-quality screenshots – they hurt downloads even after approval.
Also remember that your app's backend, if it has one, needs reliable hosting. A slow or offline server can lead to bad reviews fast. Our web hosting plans are a good home for Laravel or PHP admin panels that power Flutter apps.
Want a Ready-Made App or Expert Help?
Building from scratch is not the only path. You can start with a ready-made Flutter app and rebrand it. Browse our scripts and apps to find options such as radio, games, classifieds and more.
If you would rather not deal with keystores, Gradle files and Play Console forms, our team can handle it for you. We build cross-platform apps and help businesses publish flutter app to play store smoothly, with a proper listing and correct settings from day one.
Ready to launch? Check out our Flutter App Development service and let us help you get your app live on Google Play.
Frequently asked questions
What file format does Google Play need for a Flutter app?
Google Play requires new apps to be uploaded as an Android App Bundle (.aab). You can create it with the command flutter build appbundle.
Do I need a Google Play Developer account?
Yes. You must register a Google Play Console developer account and pay Google's one-time registration fee before you can publish any app.
Why must I keep my upload keystore safe?
The keystore proves that updates come from you. If you lose it or its passwords, updating your app becomes much harder, so back it up securely and never commit it to a public repository.
How long does Google Play review take?
Review times vary. Some apps are approved within hours, while new developer accounts or apps with sensitive permissions can take several days.
Can someone publish my Flutter app for me?
Yes. A development team can prepare the build, signing, store listing and submission for you, which is helpful if you are new to the Play Console.


