1. Home
  2. Guides
  3. Choose a package name

Guide

How to choose an Android package name

The package name — Android calls it the application ID — is your app's permanent identity. Users rarely see it, but Android and Google Play use it for everything.

Updated 2026-10-183 min readBy the APK Maker team
Short answerUse a reverse-domain name you control, all lowercase, such as com.yourbrand.appname. It needs at least two parts separated by dots, each starting with a letter and containing only letters, digits and underscores. Choose carefully: on Google Play it can never be changed.

The rules

  • At least two segments separated by dots: com.example is the minimum.
  • Each segment starts with a letter.
  • Only letters, digits and underscores — no hyphens, spaces or accents.
  • Avoid Java keywords as segments (new, class, int, package…).
  • Use lowercase by convention.
  • It must be unique on Google Play; nobody else can use it once taken.

The reverse-domain convention

Take a domain you own, reverse it, and add the app: shop.example.com → com.example.shop. Without a domain, use your name: io.github.yourname.notes or com.yourname.notes. Do not use other companies' names or domains.

Good and bad examples

Package nameVerdict
com.mariasbakery.menu✅ Clear and owned
io.github.devsam.quizapp✅ Fine without a domain
com.my-shop.app❌ Hyphen not allowed — use com.my_shop.app or com.myshop.app
com.2048.game❌ Segment starts with a digit
myapp❌ Only one segment
com.example.app⚠️ Valid but rejected by Google Play (reserved)

Why it can't change

Android treats a different package name as a different app: no update path, separate data, separate reviews and ratings on Play. If you ever change it, users must install the "new" app from scratch.

The app name users see under the icon is separate and can change in any update.

Patterns that work

SituationPatternExample
Your business with a domainreversed domain + appcom.greenleafcafe.menu
Personal project, no domaincom + your name + appcom.aliyakhan.flashcards
Open-source on GitHubio.github + username + appio.github.aliyakhan.flashcards
App you build for a clientthe client's domaincom.clientbrand.app
Several apps from one brandsame prefix, different last partcom.brand.shop, com.brand.staff

Building apps for clients

Use the client's domain, not yours, so the app can move to their own Google Play account later without changing identity. Agree up front who keeps the signing key.

Check availability

Open https://play.google.com/store/apps/details?id=your.package.name. If a listing appears, the name is taken. If you get "not found", it is not published — though it may still be reserved by an unpublished app in someone's Play Console.

Make your APK now — free

No Android Studio, no code, no watermark. Pick what you are starting from:

Frequently asked questions

Is the package name the same as the app name?

No. The app name is the label under the icon and can change any time. The package name is a hidden, permanent identifier.

Can I use a hyphen in an Android package name?

No. Use an underscore or remove it: com.my_shop.app or com.myshop.app.

Can two apps have the same package name?

Not on the same phone or on Google Play. Installing one replaces the other only if both are signed with the same key.