Translation process

Suggestion voting

Everyone can add suggestions by default, to be accepted by signed in users. Suggestion voting can be used to make use of a string when more than one signed-in user agrees, by setting up the Component configuration with Suggestion voting to turn on voting, and Automatically accept suggestions to set a threshold for accepted suggestions (this includes a vote from the user making the suggestion if it is cast).


Once automatic acceptance is set up, normal users lose the privilege to directly save translations or accept suggestions. This can be overridden with the Edit string when suggestions are enforced permission.

You can combine these with access control into one of the following setups:

  • Users suggest and vote for suggestions and a limited group controls what is accepted. - Turn on voting. - Turn off automatic acceptance. - Don’t let users save translations.

  • Users suggest and vote for suggestions with automatic acceptance once the defined number of them agree. - Turn on voting. - Set the desired number of votes for automatic acceptance.

  • Optional voting for suggestions. (Can optionally be used by users when they are unsure about a translation by making multiple suggestions.) - Only turn on voting.

Additional info on source strings

Enhance the translation process by adding additional info to the strings including explanations, string priorities, check flags and visual context. Some of that info may be extracted from the translation files and some may be added by editing the additional string info:


Access this directly from the translation interface by clicking the “Edit” icon next to Screenshot context or Flags.


Strings prioritization

String priority can be changed to offer higher priority strings for translation earlier by using the priority flag.


This can be used to order the flow of translation in a logical manner.

See also

Quality checks

Translation flags

Customization of quality checks and other Weblate behavior, see Customizing behavior using flags.

The string flags are also inherited from the Translation flags at Component configuration and flags from the translation file (see Supported file formats).


Changed in version 4.1: In previous versions this has been called Extra context.

Changed in version 4.18: Support for syncing explanation with a file was introduced.

Use the explanation to clarify scope or usage of the translation. You can use Markdown to include links and other markup.

Some file formats support storing explanation within the file, see Explanation.


Weblate can also display description present in the translation file for some formats, see Source string description.

Visual context for strings

You can upload a screenshot showing a given source string in use within your program. This helps translators understand where it is used, and how it should be translated.

The uploaded screenshot is shown in the translation context sidebar:


In addition to Additional info on source strings, screenshots have a separate management interface under the Tools menu. Upload screenshots, assign them to source strings manually, or use optical character recognition (OCR) to do so by pressing the Automatically recognize button.

Once a screenshot is uploaded, this interface handles management and source string association:


You can add or update screenshots directly from your Version Control System (VCS) repository.

To enable this feature, you can either set a screenshot file mask when creating a component, which will be monitored for updates in the repository, or you can add or update screenshots when uploading them manually.

When the repository is updated, the system will automatically scan for changes. Existing screenshots in the repository will be updated, and new screenshots matching the specified screenshot file mask will be added to the component.