Salesforce Flows are a powerful automation tool that allows you to automate processes, send notifications, call external systems, and more. Screen Flows are a great way to provide a set of steps with different screens representing different stages, e.g. an onboarding process.
That sounds great, but what if you want these flows to display in multiple languages? This is a common requirement for orgs where users use Salesforce in multiple languages. In this article, we’ll take a deep dive into how to build Screen Flows that are multilingual by default.
Meet Translation Workbench
Translation Workbench is the native tool used for translating the system from one language to another. Using this tool, you can enable different languages, define translators, and start to translate your metadata (e.g. fields) into different languages via import and export functionalities.
Each org has a default language which users will get as standard. Once you’ve defined translations, users can see the system in their local language. If translations are not defined, the system will fall back to the default language.

Components Available for Translation
If you were to explore the Translation Workbench, you’d see different Flow elements that you can translate. Some of these have nuances, so let’s explore each type to learn more.
Definition Name and Version Name
You can translate the Definition Name and Version Name to appear in the user’s language.
Screen Info
Within the Translation Workbench, there are different elements that fall under the Screen Info section. If you include Help Text (1), this will show up here as a sub-item.
If you’ve chosen to override the Paused Message, Next or Finish Button (4), Back Button (3), or Pause Button (2), you’ll find those in different sections to translate. If you’ve not adjusted those labels, then you won’t be able to provide custom translations for those elements.

Screen Component
If you’ve provided Field Labels (1), you’ll find them here, along with their respective Help Text (2). If the Flow you are translating includes Display Text (3), you’ll see that appear as Description. If you have defined any validations in your Flow, the Error Text (4) will be under Error Message.

Choice
You can provide translations for Field Labels (1) and Input Labels (2) so these reflect in the running user’s language. Against a choice, you can define an Error Message, which you can also target via the Translation Workbench.

Custom Error Message and Stage
Within Record Triggered Flows, you can define Custom Errors to fire when conditions are met. Curiously, these also appear under Screen Flows as a translatable item, even though the same functionality doesn’t exist in this type of Flow.
Stages are used in Screen Flows to power the native Progress Bar so users know where they are in the process. Select the Stage Dropdown in the Translation Workbench to translate these.

Other Components
Other components are translatable, too, including Data Tables. Data Table column names are overridable directly in the Flow Builder – use Custom Labels to make these multilingual.

Translation Considerations
Like with most things in Salesforce, there are considerations to bear in mind when using Translations with Flows. If you have a field within a rich text component (e.g. display text), a translation will only be able to reference this field if it’s within the first 1,000 characters.
When translating Definition Name or Version Name, you can use up to 255 characters. Other items support up to 1,000 characters.
Salesforce does not support translation of Text Templates, merge field values, or in right-to-left languages. If a translation is not defined, the system will use the default label as a fallback.
If you create a new version or Flow from an existing Flow with translations, Salesforce will copy the translations. If you remove a label, translations aren’t copied, and if a Flow is deleted, so are its translations. If you change a unique name of a label, Salesforce treats this as a new label.
Translation Methods
Translating using the Translation Workbench can be cumbersome when you are trying to translate rich text. While you can export and import translations, where the structure is in HTML, this would be troublesome to target only the text without breaking the formatting.
Flow Component | Aspect | Example Export |
---|---|---|
Definition Name | What is SFB? | |
Version Name | What is Salesforce Ben? | |
Screen Info | Help Text | <p>Header Help Text</p> |
Screen Info | Pause Button | Freeze |
Screen Info | Back Button | Back |
Screen Info | Next or Finish Button | Proceed |
Screen Info | Paused Message | <p>We've put a temporary hold on proceedings</p> |
Screen Component | Field Label | Article Category |
Screen Component | Help Text | <p>Please provide an Article Category</p> |
Screen Component | Description | <p><span style="background-color: rgb(255, 255, 255); color: rgb(68, 68, 68);">Salesforce Ben is the largest independent Salesforce blog, providing news, insights, and educational content for the Salesforce community. Founded in 2014, it covers a wide range of topics, including Salesforce releases, certifications, career advice, and best practices. The platform features expert-authored articles, guides, and analysis to help professionals stay up to date with the latest developments in the ecosystem. It also serves as a hub for aspiring and experienced Salesforce users, offering career tips, learning resources, and industry trends. With a strong community focus, Salesforce Ben is a go-to resource for Salesforce admins, developers, consultants, and architects.</span></p> |
Screen Component | Error Message | <p>Please provide the Email Address in valid format</p> |
Choice | Field Label | Admins |
Choice | Error Message | <p>This isn't valid</p> |
Choice | Input Label | Admins |
Custom Error | Example of a Custom Error Message | |
Stage | Confirmation |
Custom labels are supported in many Screen Flow components and are my go-to method for building solutions that can later be translated. You can translate these using the Translation Workbench, with the advantage of this approach being that HTML tags are handled directly in the Flow, so they won’t mess up your translations.
In fact, wherever custom labels are supported, I’ll use these, including on Lightning Record Pages Tabs, to provide a one-stop-shop way to translate those values.
Summary
Flows are a powerful tool, and with translations, you provide the ability to display them in the context of the running user’s language when dealing with Screen Flows.
Feel free to share your own experiences and tips about handling translations in Screen Flows to help the community understand what has and hasn’t worked for you.
Other Resources
- Flow Translation Best Practices
- Use Multilingual Labels in Data Table Column Headers
- Considerations for Translating Flows