Skip to content

Smart Key Rename Detection

Lingo.dev automatically identifies renamed translation keys, preserving existing translations and eliminating unnecessary retranslation costs.

What Are Key Renames?

Key renames occur when you change a translation identifier while keeping the same content:

json
// Before
{
  "welcome_message": "Welcome to our application!"
}

// After
{
  "homepage_welcome": "Welcome to our application!"
}

How Key Rename Detection Works

Lingo.dev's intelligent detection process:

  1. Analyzes your source files and translation keys
  2. Identifies keys that have been renamed but maintain identical content
  3. Preserves existing translations and applies them to the new key names

Key Benefits

  1. Cost Savings: Eliminate unnecessary retranslation expenses
  2. Time Efficiency: Skip waiting for translations you already have
  3. Consistency: Maintain uniform translations across key changes

Detection Rules

Lingo.dev WILL detect a key rename when:

  • The key name changes
  • The source content remains exactly the same
  • The key appears in the same file or location

Lingo.dev WILL NOT detect a key rename when:

  • Both the key name AND source content change (treated as new content)

CI/CD Integration

Key rename detection works automatically with all Lingo.dev integrations:

bash
# Standard usage with automatic key rename detection
npx lingo.dev@latest i18n

Advanced Usage

To override key rename detection and force retranslation of renamed keys:

bash
npx lingo.dev@latest i18n --force

This feature works seamlessly with Lingo.dev's caching system, creating the most efficient localization workflow possible for your development process.