Google Play (Android)Unity

How to Publish a Unity App on Google Play

Publishing a Unity game to Google Play involves configuring Unity's Android build pipeline, generating a signed Android App Bundle, and meeting Google Play's content and technical policies. Unity handles the Android build directly (no Android Studio needed), but you need to understand keystore management, target API requirements, and how to optimize for Android's diverse device ecosystem.

Prerequisites

  • Unity 2022.3 LTS or later with Android Build Support module
  • Android SDK and NDK installed via Unity Hub (Unity manages these)
  • A Google Play Developer account ($25 one-time fee)
  • JDK included with Unity (no separate installation needed)
  • Your game tested on multiple Android devices

Step-by-Step Build Process

1

Configure Player Settings for Android

Go to Edit > Project Settings > Player > Android tab. Set the Package Name (e.g., com.studio.gamename), Version, and Bundle Version Code. Set Minimum API Level to 24+ and Target API Level to 34+. Choose IL2CPP scripting backend for AAB support.

2

Configure build settings

Check 'Build App Bundle (Google Play)' in Build Settings to generate AAB format. Set compression method to LZ4HC for release builds. Enable 'Split Application Binary' if your game exceeds 150MB to use Play Asset Delivery.

3

Create and configure the keystore

In Player Settings > Publishing Settings, create a new keystore (Project Settings > Create New Keystore). Set the keystore password, alias, and alias password. Save the keystore file securely — losing it means you cannot update the game.

4

Build the AAB

Click Build in Build Settings. Unity compiles scripts with IL2CPP, processes assets, and generates the .aab file. The build can take 15-45 minutes for large projects. Watch the console for errors, especially regarding NDK compatibility.

Code Signing & Certificates

Unity keystore management

Unity stores keystore configuration in Player Settings. For team environments, share the keystore file (not via Git) and reference it in each developer's Unity installation. Use environment variables in CI/CD pipelines.

Play App Signing enrollment

Enroll in Play App Signing during first upload. Unity games benefit from this because Google can optimize the AAB into device-specific APKs, reducing download sizes across the diverse Android device landscape.

Store Submission Steps

1

Create the game in Play Console

Click 'Create app', select 'Game' as the app type. Choose the appropriate game category and sub-category. This affects how your game appears in Play Store search and recommendations.

2

Complete the store listing

Add game descriptions, screenshots showing gameplay (not menus), a feature graphic, and optional promotional video. For games, gameplay videos significantly improve conversion rates.

3

Configure Play Asset Delivery (if needed)

If your game exceeds 150MB, use Unity's Play Asset Delivery integration to split assets into install-time, fast-follow, and on-demand packs. Configure this in Unity's Addressables or custom asset delivery settings.

4

Upload and release

Upload the AAB to the production track (use internal testing first). Complete the content rating questionnaire — be accurate about violence, gambling, and user-generated content. Roll out when all sections are green.

Common Rejection Reasons & Fixes

Misleading ads policy

If using ad networks (AdMob, Unity Ads, IronSource), ensure ads don't mimic game elements or system notifications. Interstitial ads must have clear close buttons and not appear during loading screens or at app launch.

Real-money gambling simulation

If your game has casino-style mechanics (slots, poker), it may be flagged as simulated gambling. Ensure virtual currency can't be cashed out. Some countries restrict gambling-themed games entirely.

Excessive permissions

Unity plugins often add unnecessary permissions to AndroidManifest.xml. Review the merged manifest (in the built project under src/main/) and remove permissions your game doesn't need using `tools:node="remove"` entries.

64-bit requirement not met

Google Play requires 64-bit native libraries. In Unity, set Target Architectures to 'ARM64' in Player Settings. If using native plugins, ensure they include arm64-v8a libraries.

Pro Tips

  • Use Unity's Frame Debugger and Profiler to optimize rendering before release
  • Enable 'Minify' for Release builds to reduce code size and improve obfuscation
  • Implement Play Asset Delivery for games with large asset files — it improves install conversion
  • Test on Mali and Adreno GPUs separately — shader compatibility varies between GPU vendors
  • Use Google Play Console's Android Vitals to monitor crash rates and ANR rates post-launch

Skip the hassle. Let us handle it.

Publishing a Unity app on the Google Play (Android) involves dozens of steps, certificates, and potential rejection pitfalls. Our team handles the entire process for you — from build configuration to store approval.

Related Guides