Category: Blog, Android, Business, Development

How to Submit an App on Google Play? Guide & Checklist for Non-Developers

5 aspects you have to know before publishing your app on the Google Play Store. Learn technical prerequisites, the metadata you have to prepare, store settings, content policy, targeting, and more. It’s a complete guide for App and Product Owners who want to submit their applications to Google Play successfully.

How to Publish an App on Google Play


The number of available apps in the Google Play Store is placed at more than 3.4 million apps (January 2021). Google Play is certainly one of the largest platforms for distributing, promoting, and selling Android applications.

Publishing your Android app on Google Play is not only exciting but also a crucial element of your application development process that influences its final success. Will your app be submitted, will it be popular, and will people download and install it? All this and more depends on how fruitful your release will be.

In our previous article, Publishing on app stores, we described the process of app publishing in general – both on App Store and Google Play. In this post, we focus only on Android apps and go deeper into Google Play’s requirements. Read on to learn how to publish an app on Google Play.

Download for free –> App Publishing Checklist for Google Play (Printable PDF)

Read also our Guide on How to Submit an App to the Apple’s App Store.

1. Before you begin

Before you publish your Android app on Google Play, you need to check whether it is ready from both a technical and legal point of view.

Technical prerequisites

Target API Level

New applications have to meet the target API level requirements. It cannot be too low. The target API level (also known as the target SDK version) is a number indicating the newest Android version an app is designed to.

If the Android version on the user’s device is newer than the target level of the app, then some backward compatibility behavior may be applied. In changes in subsequent Android versions, you may often expect increased security by adding new permissions and restrictions. For example, if some action wasn’t permission-protected so far, but starts to be protected from a particular API level onwards, the developers writing the code a few years before had no way of knowing that.

App versions that are already published should not break after such changes. However, new apps, as well as new versions of published ones, should meet the current standards. Nowadays (January 2021), the minimum target API level for new apps is 29 (Android P). This will be increased to 30 (Android R) at the beginning of August 2021. As history suggests, the analogous version increment (to 31) is likely to happen in August 2022. Read on to learn how to publish an app on Google Play.

Keep in mind that increasing the target API level is not just bumping a number in the configuration file. It may be a very time-consuming process when you have an existing codebase. Moreover, not only the application source code itself but also 3rd party libraries may be affected. That’s why it is important to maintain the app on a regular basis and reduce the technical debt.

App bundles

Starting from August 2021, all new apps have to use the App Bundle (AAB). This format is useful only for uploading to the Google Play Store. Its backend generates an installable app variant dedicated to the actual user’s device and system. For example, assets for non-matching screen density will not be shipped, which will result in a smaller app size and faster installation.

APK file uploads won’t be accepted. What’s more, the APK expansion files (OBB) won’t be supported. They are superseded by Play Asset Delivery or Play Feature Delivery.

In most apps (not necessarily games) the AAB format can just be used instead of the APK. The only noticeable exception occurs when the app size exceeds 150 MB and the aforementioned APK expansion files are used.

Legal prerequisites

Your app has to comply with Google Play Store’s terms of service and the United States’ laws in order to be distributed legally via the former. We’ve prepared a dedicated article about all those rules and we will publish it soon, so here we’ll only list some general advice.

Information about key topics like restricted content, intellectual property, and what is considered a forbidden malware or spam are placed in the Developer Policy Center. You can find videos and even interactive tutorials there. The formal distribution agreement is also available.

Another important fact is that the app has to meet US export laws. Google Play Store servers are located in the USA so, in order to deliver the app to users located in other countries, the app needs to be exported. This is required even if your app is not available to customers in the USA itself. You should take special care of this if your app uses cryptography.

For example, the PGP project could not be used for some time outside the USA. You can read more about export compliance in Play Store docs and the official website of the US Bureau of Industry and Security.

Keep in mind that your app also needs to be compliant with local laws in the customers’ countries. The most widely known are the GDPR laws found in EU/EEA countries. These are known to be enforced as, for example, Italian authorities fined Facebook £8.9m for misleading users of its app.

Read also: 5 legal issues you should consider before your app development.

2. The metadata

If you have reached this point, we can assume that your app is technically and legally eligible to be published on the Play Store. Let’s start with the proper publication!

App details

The main store listing for any app consists of 3 text fields:

  • App name – up to 50 characters
  • Short description – up to 80 characters
  • Full description – up to 4,000 characters

All of them are mandatory and can be localized to one of the supported locales (the combination of a language and optional region). You can also use customized listings to provide the same set of texts (and also graphics described later in this article) to more than one locale.

App Details new

Look at the screenshots below to see where the app descriptions are displayed. Note the differences between mobile and web versions.


App description on Google Play – mobile and web view

Apart from marketing-related factors, you also have to follow the metadata requirements.

Particularly, you should avoid creating a visual distraction and using copyrighted words (eg. other brands’ names). Keep in mind that if you have permission to use some restricted content (eg. 3rd party intellectual property or something reserved for governments) you can submit a notice in advance to ease the review process.

Don’t forget about SEO (Search Engine Optimisation). If the app name is very similar to some unrelated word, the users may have trouble finding it using search engines. For example, if you have an app with soup recipes and you name it Souper then, most likely, the search results will begin with dozens of apps with names starting with Super. Of course, this may change if you use some paid promotion and/or other SEO-related actions.


You have to choose if your app is free or paid at the very beginning. That setting can be changed anytime from paid to free, but not the other way around!

Once set as free on the market, an app can not subsequently be given a price.

Note that a free app can still use in-app purchases. Keep in mind that receiving payments from users is not available in some countries. These are mainly ones which have some economic sanctions applied by the USA, such as Iran or Cuba. The up-to-date list can be found in the Play Store docs.

Take care when choosing the exact price amount. There are value limits separate for each supported currency. If an amount is close to the upper or lower limit, it may not be possible to achieve equal absolute values in all currencies. In January 2021, the minimum price is 0.50 EUR and 0.99 CHF (Swiss Francs) respectively. The latter is approximately 0.91 EUR (using the exchange rate current at the time of writing) so the lower limit is almost 2 times higher in CHF. You can find up-to-date limits in the official table.

Read also: How much does it cost to make a mobile app?

Graphic assets

You have to provide the app icon and screenshots for store listing purposes (for TV and daydream-enabled apps, the additional content is needed). Optionally, you can also add a link to a video on YouTube. These assets are used to highlight and promote your app.

By default, the app may be promoted even outside Google. However, you can opt-out of such external marketing by changing the setting in the Play Store console. Keep in mind that it may take up to 60 days for this change to take effect.

All the assets have to be compliant with the Developer Program Policies. They must also not violate any intellectual property or use forbidden elements like badges imitating those provided by Google Play Store, like Editors’ Choice.

App icon

The app icon on the Play Store usually looks like the launcher icon, which you should already have. The difference is that, for store listings, a higher resolution is needed – 512×512 px.

Hint: the Android Asset Studio (built-in to Android Studio IDE) can be used to generate all the icons – including the standard needed for the launcher and a hi-res one for the store.

Feature graphic

It is a 1024×500 opaque picture shown in various places on the Play Store mobile app and website. It should present the key point of your app or game. More guidelines can be found in the documentation.


You have to provide at least 2 screenshots of your app. However, you can add up to 8 of them for each device type supported by the app: phone, 7-inch tablet, 10-inch tablet, TV, and wearable. See the official docs for more guidelines. Hint: enable demo mode before making screenshots.

Promotional video

The video is optional but recommended, especially for games. If present, a video is displayed on the listing before the screenshots. Don’t forget to avoid using copyrighted content and turn off monetization to prevent displaying someone else’s advertisement. Of course, the video must not be private. Read more in the docs. Here is an example of the video from the Glovo app:


For Android TV-enabled apps, you also need a TV banner. Similarly, for Daydream-enabled apps, a 360-degree stereoscopic image is required.

Store settings

To help users encounter your app when browsing the store, you need to pick an appropriate category (like Shopping or Finance) and up to 5 optional tags (like Comics or Loan). Read more about tags and categories in the docs.

App category 1

You have also to add your contact details in order to provide support for users. E-mail is required here and it may be different from the owner’s Google account address. Optionally, you can also add a phone number and a website link.

3. Content policy

Google needs to know several pieces of information about the content in your app. This is needed, for example, to correctly resolve the age restrictions. Let’s check those settings!

Privacy policy

This covers information about how you treat sensitive data. It is required when your target audience includes children below 13 years old. Usually, the privacy policy text is prepared by lawyers. However, guidelines are also available. Despite the fact that the form validation rules on Google Play allow you to proceed without specifying privacy policy, it may be still required by local laws (GDPR especially) even if you target only adults.

Stay tuned to read a detailed article about that, we’re working on it.


You have to declare whether your app contains advertisements. Note that not only banners or interstitials are considered ads. For example, sponsored articles also qualify as ads.

App access

If any part of your app is restricted eg. by geolocation or signing-in requirement, you have to provide the instructions for reviewers.

Content rating

Your app or game needs to have IARC ratings assigned. After filling a questionnaire, you will receive the ratings according to authorities like PEGI, ESRB, or USK. They are mainly used by parents to check whether an app is appropriate for their children.


Target audience

You have to indicate the target age group(s). In general, the lower the age groups you choose, the more requirements there are and the more questions you need to answer. Targeting children younger than 13 years old requires a privacy policy. If the app is designed for both children and adults, you may be interested in the families’ policy.

News policy

The last section is about news. This is only needed to indicate if your app is a news app. If so, you have to comply with additional rules. If an app claims to have a relationship with the publisher, that fact will be reviewed.

4. Targeting

Country restrictions

You may need to limit your app availability depending on geolocations because of licensing, copyright or other legal agreements. Within a particular country, you can adjust restrictions even finer by selecting particular mobile operators. Such restrictions can be configured separately for each track: production, open (beta), closed (alpha), or internal testing. Read more about this in the official docs.

Note that the term “country” here means one associated with the Google Play user account. It may not necessarily be the same as the actual user’s location. However, it may be only set to the value of the current country at the time of setting, not more frequently than once a year.

Device restrictions

Sometimes, it turns out that an app doesn’t work well on some particular device models despite the fact that they theoretically meet the requirements (like the minimum Android version or the presence of hardware features like NFC). You can exclude such problematic devices using the device catalog.

Advanced settings

You can also configure Actions on Google and add websites for App Indexing purposes.

Payment settings

If you want to sell your apps or use in-app payments, you have to set up a payment profile. In this case, you also need to specify a physical postal address.

Developer page

Optionally, you can set up the developer page. This is common for all apps published from the same developer account. If you want to publish the page, you have to specify your name, promotional text, developer icon, and header image. None of those fields can be blank.

Moreover, if you monetize your apps, then the aforementioned postal address will be displayed on the developer page. Optionally, you may also add a website address and choose a featured app.

See how this looks in the case of Glovo.

5. Technical settings

Apart from mostly business-related settings, there are also several technical ones that are important if you want to know how to publish an app on Google Play.

Application ID

All the apps must have a unique identifier. For example, for the CCC app, it is The App ID may be visible to users, such as in the links. Once an app is uploaded to the store, the ID is reserved and no one else can use it. Moreover, the ID cannot be changed (you can, however, publish the new app with a different ID). So choose the ID wisely.

Including a brand name in the app or your ID may not be a good idea. For example, if you decide to acquire some other company or you will be acquired, then rebranding can happen. Since the App ID cannot be changed, it will contain the old brand forever. The technical requirements for the app ID can be found in the docs.


Every app has to be signed in order to be installable. In general, signing is a broad topic and a separate article would be needed to describe it fully. Here, we will focus only on the key points. The simplest way, nowadays, is to use app signing by Google Play.

There are a few options available: you may let the store generate the signing key for you, use the same key as another app on the same developer account, or provide your own key, which you have to generate beforehand.

Usually, just using a key generated by the store is sufficient. The same key for multiple apps may be needed in some advanced scenarios like custom permissions using signature protection. Such things are not widely used nowadays. Using your own self-generated key may be required for existing legacy apps.

The finishing touches

You have almost everything you should regarding how to publish an app on Google Play.

Before you release the app to the public you may want to test it within some restricted user group(s). You can set up open, closed, or internal test tracks for that purpose. You may also be interested in enabling API access to upload app builds automatically from the CI/CD pipelines.

Google automatically checks all the app versions you upload. The robot crawls your app by simulating basic actions like taps and gestures for a few minutes. Then, it prepares a pre-launch report. It is extremely helpful in discovering potential issues. Among others, it checks accessibility, performance, security, and Android compatibility.

Pre launch 2

How to publish an app on Google Play – wrap-up

App release is not rocket science but it does require precision. Remember to prepare the app from both the legal and technical points of view. Don’t forget about agreements and privacy policy if targeting children. If you are ready with these, most of the work consists of preparing graphic assets and promotional texts. Keep SEO in mind when choosing the wording. Note that most of the updates made through the developer console are not published automatically. They may need to be reviewed, which could take anything from a few hours to a few days.

I hope this article will help you to publish your application successfully on Google Play.

Download for free –> App Publishing Checklist for Google Play (Printable PDF)

At Droids On Roids, we have extensive experience in publishing applications on both Google Play and the App Store. It is an integral part of our app development process. If you have any questions, please leave a comment or drop us a line.

About the author

Karol Wrótniak

Karol Wrótniak

Mobile Developer

Flutter & Android Developer with 12 years of experience. A warhorse with impressive experience and skills in native and Flutter app development. Karol is probably the most active contributor to open source libraries you've ever met. He develops Gradle plugins and Bitrise steps, and he is engaged in many projects, in particular those related to testing.

Karol has been engaged as a speaker in many events and meetups like DevFest, 4Developers Wrocław, JDD Conference, Linux Academy, and more. He is an active member of Google Developers Group Wrocław, Flutter Wrocław, and Bitrise User Group.