Universally automatically translates form elements on your pages so visitors can interact with forms in their language. No additional configuration is needed.
What Gets Translated
Labels and Text
All visible text associated with forms is translated as part of the normal page content:
<label>text- Heading and paragraph text near forms
- Button text (i.e.
<button>,<input type="submit">,<input type="reset">,<input type="button">) - Help text, descriptions, and error messages rendered in HTML
Placeholders
The placeholder attribute on <input> and <textarea> elements is automatically detected and translated.
<!-- Original -->
<input type="text" placeholder="Enter your name">
<!-- Translated (French) -->
<input type="text" placeholder="Entrez votre nom">
Accessibility Attributes
aria-labelon inputs, textareas, and buttonsaria-labelledbyandaria-describedbyreferences (the referenced element’s text is translated)
Select Options
Text inside <option> elements within <select> dropdowns is translated as regular page content.
<!-- Original -->
<select>
<option>Choose a country</option>
<option>United States</option>
<option>France</option>
</select>
<!-- Translated (French) -->
<select>
<option>Choisissez un pays</option>
<option>États-Unis</option>
<option>France</option>
</select>
What Is NOT Translated
Input Values
User-entered data and pre-filled value attributes on text inputs are not translated. This includes:
<input type="text" value="John">— the value “John” stays as-is<input type="hidden">— hidden fields are never touched<textarea>Default text</textarea>— pre-filled content in textareas is not translated
This is intentional — form values are data, not UI. Translating them would corrupt form submissions.
Field Names and IDs
HTML attributes like name, id, class, and data-* are never modified. Your form processing logic works exactly the same regardless of the display language.
Validation Messages
Browser-native validation messages (e.g., “Please fill out this field”) are handled by the browser in the user’s system language, not by Universally. Custom validation messages rendered in HTML are translated normally.
Form Submissions
Form submissions work identically in any language. When a visitor fills out a translated form:
- The
actionURL is not modified (forms submit to the same endpoint) - Field
nameattributes are unchanged - The submitted data is whatever the user typed — in their language
- Hidden fields pass through untouched
Your backend receives the same form structure regardless of which language the visitor used.
Tips
Use glossary rules for form-specific terms. If a form contains domain-specific terms that should not be translated (e.g., plan names, product codes), add them as Keep glossary rules. See Glossary Rules.
Use placeholder for hints. Placeholders are translated automatically and help visitors understand what to enter.
Keep labels in HTML. Labels rendered as text in the DOM are translated. Labels injected via JavaScript after page load may not be.
Test form flows. After enabling translation, submit a test form in a translated language to verify the submission works correctly.