Salesforce Stack Exchange is a question and answer site for Salesforce administrators, implementation experts, developers and anybody in-between. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a custom object on which I have few fields and I successfully uploaded managed package which includes the custom object. Now I want to have the field labels for this object's fields appear in different languages. Is there any way to do so?

share|improve this question
up vote 11 down vote accepted

Yes, you can do this natively by leveraging Salesforce's Translation Workbench. Translation Workbench allows you to provide translations of (almost) all of the public-facing text that users of your package will see, including

  • Field Labels
  • Validation Rule Error Messages
  • Record Type labels
  • Page Layout section titles
  • and more...

Through Translation Workbench, you can select the Language(s) that you want to provide Translations for, and then Translation Workbench provides a single location where you can define all of these Translations - you can even mass import/export translations for one or multiple languages. Pretty nice, honestly.

THEN, where Salesforce really helps out Managed Package developers, is that you can take all of these Translations and easily include them in your Managed Package! Just go to Setup > Create > Packages, select your package, "Add Components", and select "Language Translation". This will then let you choose the Languages whose Translations you'd like to include in your Package. enter image description here

To be clear, what you are doing here is including all translations you have done for a particular Language in your package --- as opposed to manually adding each of the individual component translations (which would be a tedious nightmare). (In addition, any translations you have provided of any of the Custom Labels included in your package will also be included when you select to add a translation).

So, jumping forward --- say that you've included Spanish Translations in your package, including a translation of the Label of one of your Custom Object's custom fields, say the field is Company_Number__c and the field label, in English, is "Company Number". Now, in one of your customer's orgs, one of the users changes their Language (from their User preferences) from English to Spanish.

enter image description here

Now, when they go to the Tab, Page Layout, or other locations where they might go to interact with your custom object, they'll see translated text for the field labels that you have included translations for in your package, such as the Company Number field. That is, they'll see something like "Número de Negocio".

share|improve this answer
Best explanation. – doga Feb 8 '13 at 3:39
@zachelrath Does the user who installs the managed package need to activate the language in translation workbench after installation? – Vignesh Mar 30 at 6:13
@Vignesh No, users do not need to activate languages, they will automatically apply. – zachelrath Mar 30 at 13:26
@zachelrath, can you please answer this?… – Vignesh Apr 4 at 9:19

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.