Safe App Identifier Generator
App identifiers (also called package names or bundle IDs) are reverse-DNS-style strings that uniquely identify an app — com.company.appname. Android, iOS, Capacitor, Flutter, and React Native all use this format with slightly different rules: lowercase only, dot-separated, must start with a letter, no reserved words (com.android.*), no hyphens. The ZTools Safe App Identifier Generator turns a free-form app name into a valid identifier, validates against each platform's rules, and warns on collisions with reserved prefixes.
Use cases
Pick an app ID for a new project
Capacitor / Cordova ask for the bundle ID at init. Generator suggests com.yourcompany.appname and validates the parts.
Fix an invalid identifier
Old project uses uppercase letters in the bundle ID — Android Studio rejects. Generator suggests the corrected version.
Reserve a namespace
Picking a unique prefix matters — once published, you can't change it without losing user data on update.
Validate before submission
Pre-flight check before App Store / Play Store upload — catch invalid identifiers locally rather than getting rejected at submission.
How it works
- Type app name and company — Free-form text. Spaces, capitalisation, special chars — generator normalises.
- Pick TLD prefix — com (most common), io (tech-startup), app (Apple-friendly), org (open-source), or custom.
- Generate — Output: lowercased, dots-separated, validated against per-platform rules.
- Validate — Checks against Android (no spaces, no hyphens, lowercase, starts with letter), iOS (same plus no reserved namespaces), Capacitor (matches both).
Examples
Input: company "Acme Corp", app "My Cool App"
Output: com.acmecorp.mycoolapp — lowercased, no spaces.
Input: company "Z-Tools", app "Privacy Tool 2"
Output: com.ztools.privacytool2 — hyphens stripped (Z-Tools), digits in name allowed mid-token.
Input: Reserved-prefix collision: company starting "com.android.*"
Output: Warning: this prefix is reserved by Android. Suggested alternative: com.companyname.android.appname.
Frequently asked questions
Can I change the identifier after publishing?
No — once an app ships with bundle ID com.x.y, changing it on update treats the new version as a different app. Users lose data, ratings, paid status. Pick carefully.
Hyphens?
Not allowed in Java package names — Android rejects. iOS accepts but discouraged. Replace with underscore or remove.
How to reserve a namespace?
You don't reserve formally — first to publish under a name "owns" it on the Play Store / App Store. Use a domain you own as prefix to avoid collisions.
Privacy?
All in browser.
Tips
- Use a domain you own as prefix — guarantees no collision.
- Keep the identifier short — long IDs hurt URL schemes (com.x.y://) and look unprofessional in
Info.plist. - Avoid digits at the start of any token — some toolchains reject
com.123.app. - Pick once, never change — the cost of a wrong choice is enormous post-launch.
Try it now
The full Safe App Identifier Generator runs in your browser at https://ztools.zaions.com/safe-app-identifier-generator — no signup, no upload, no data leaves your device.
Last updated: 2026-05-06 · Author: Ahsan Mahmood · Edit this page on GitHub