tauri-apps/tauri · error
You must change the bundle identifier in `{bundle_identifier
Error message
You must change the bundle identifier in `{bundle_identifier_source} identifier`. The default value `com.tauri.dev` is not allowed as it must be unique across applications. What it means
Before building or devving, the CLI validates `config.identifier` and rejects the scaffold default `com.tauri.dev`, because bundle identifiers must be unique across applications (it is used for app IDs, macOS bundle IDs, and Android application IDs). The message names the config file that actually supplies the identifier (`find_bundle_identifier_overwriter`, e.g. a platform-specific `tauri.conf.json` override).
Source
Thrown at crates/tauri-cli/src/build.rs:173
// TODO: Maybe optimize this to run in parallel in the future
// see https://github.com/tauri-apps/tauri/pull/13993#discussion_r2280697117
log::info!("Looking up installed tauri packages to check mismatched versions...");
if let Err(error) = check_mismatched_packages(dirs.frontend, dirs.tauri) {
if options.ignore_version_mismatches {
log::error!("{error}");
} else {
return Err(error);
}
}
set_current_dir(dirs.tauri).context("failed to set current directory")?;
let bundle_identifier_source = config
.find_bundle_identifier_overwriter()
.unwrap_or_else(|| "tauri.conf.json".into());
if config.identifier == "com.tauri.dev" {
crate::error::bail!(
"You must change the bundle identifier in `{bundle_identifier_source} identifier`. The default value `com.tauri.dev` is not allowed as it must be unique across applications.",
);
}
if config
.identifier
.chars()
.any(|ch| !(ch.is_alphanumeric() || ch == '-' || ch == '.'))
{
crate::error::bail!(
"The bundle identifier \"{}\" set in `{bundle_identifier_source:?} identifier`. The bundle identifier string must contain only alphanumeric characters (A-Z, a-z, and 0-9), hyphens (-), and periods (.).",
config.identifier,
);
}
if config.identifier.ends_with(".app") {
log::warn!(
"The bundle identifier \"{}\" set in `{bundle_identifier_source:?} identifier` ends with `.app`. This is not recommended because it conflicts with the application bundle extension on macOS.",View on GitHub (pinned to 52e4b6e71d)
Solutions
- Edit the file named in the error and set a unique reverse-DNS identifier, e.g. `"identifier": "com.mycompany.myapp"`
- If a platform-specific config (e.g. `tauri.windows.conf.json`) overwrites `identifier`, change it there — that is the file the error points to
- Use your domain reversed plus the app name; any alphanumeric/hyphen/period string that is not `com.tauri.dev` passes this check
Example fix
// before (tauri.conf.json)
{ "identifier": "com.tauri.dev" }
// after
{ "identifier": "com.mycompany.myapp" } Defensive patterns
Strategy: validation
Validate before calling
#!/usr/bin/env bash
# fail fast on the scaffold default before building
id=$(jq -r '.identifier' src-tauri/tauri.conf.json)
[ "$id" = "com.tauri.dev" ] && { echo 'identifier is still com.tauri.dev' >&2; exit 1; } Prevention
- Change the identifier immediately after scaffolding, before the first build
- Add a lint step (jq/yq check) in CI that rejects `com.tauri.dev`
- Remember platform-specific config files can override the identifier — set it in the file the build actually reads
When it happens
Trigger: Running `tauri build`/`tauri dev` on a freshly scaffolded project (or one copied from a template) whose `identifier` was never changed from `com.tauri.dev`.
Common situations: First build after `tauri init`; duplicating a template project and forgetting the identifier; the identifier being set only in a platform override file such as `tauri.macos.conf.json` while the base config still carries the default.
Related errors
- The bundle identifier "{}" set in `{bundle_identifier_source
- invalid permission {p}
- Couldn't recognize the {} folder as a Tauri project. It must
- Git options --tag, --rev and --branch can only be used with
- Unable to find your web assets, did you forget to build your
AI-assisted analysis of tauri-apps/tauri@52e4b6e71d (2026-08-20).
Data as JSON: /api/errors/c0d1696e6a3382da.
Report an issue: GitHub.