SFCC Resource Bundle Locale Diff — .properties Comparator
Skip to main content

SFCC Resource Bundle Locale Diff

Paste two or more .properties bundles. The tool surfaces missing keys, extra keys, and value drift across locales.

Total keys

5

Locales

2

Value mismatches

3

Missing keys

  • en: none
  • fr: 2

    checkout.button.checkout, checkout.message.thanks

Extra keys

  • en: none
  • fr: none
Keyenfr
checkout.button.checkoutCheckout
checkout.button.continueContinueContinuer
checkout.cart.emptyYour cart is emptyVotre panier est vide
checkout.cart.titleYour CartVotre panier
checkout.message.thanksThank you!

About SFCC Resource Bundle Diff

Compare SFCC .properties resource bundles across locales to find missing translations, extra keys, and value drift before they ship as silent untranslated strings on your storefront. Paste two or more locale files and get a key-by-key matrix with per-locale missing/extra counts.

Pipeline

  • Text Diff — compare two individual locale files line by line.

Frequently asked

What is a resource bundle in SFCC?
Resource bundles are Java .properties files that store translatable strings for SFRA and SiteGenesis storefronts. Each cartridge has a /cartridge/templates/resources/ directory containing one .properties file per locale (e.g. account.properties, account_fr.properties, account_de_DE.properties). The storefront loads the file matching the active locale and falls back to the default.
What does "missing key" mean?
A key present in the reference locale (usually en) but absent in another locale. At runtime, SFCC falls back to the default locale for missing keys — so the page renders, but in the wrong language. These are silent bugs that only surface during QA or after a customer complaint.
What does "extra key" mean?
A key present in a non-reference locale but not in the reference. This usually means a key was deleted from the reference but not cleaned up in translations, or a translator added a locale-specific key by mistake.
What is a value mismatch?
Two locales have the same key but different values. This is expected for translations, but the tool counts it so you can spot cases where a value was accidentally left identical across locales (untranslated) or where a placeholder like {0} is present in one locale but missing in another.
Does this tool handle continuation lines and Unicode escapes?
Yes. The parser implements the full Java .properties spec: backslash line continuation, key/value separators (=, :, whitespace), and \uXXXX Unicode escapes. It also detects duplicate keys within a single file.