Translating Checkout, Forms and Error Messages
A checkout or form is where translation mistakes cost real money: a customer who does not understand a field, a shipping line or an error message simply leaves. Treat these steps as the highest-risk text on your site. Translate every state of the flow, not only the first screen, check what your platform lets a translation tool reach, and test the whole path in each language.
What counts as "the form"
A form is more than its labels. Make a list that covers every state the visitor can see:
- Field labels, hints and placeholder text.
- Buttons: submit, back, next, apply code.
- Validation and error messages ("can't be left blank", "enter a valid email").
- Success and failure messages after submitting.
- Confirmation pages and emails that follow.
- Consent text, terms links and privacy notices.
- Menus of countries, regions, shipping methods and payment methods.
- Tooltips, accessibility labels and the text read by screen readers.
Placeholders and accessibility labels are attributes, not visible text, so check that your tool handles them. LgTranslate's design translates some attribute text (alt, title, placeholder, aria-label and the label of a button) and leaves code blocks alone, but says plainly that text drawn into a canvas or an image, text in PDFs and text inside an iframe from another website cannot be reached.
Know what your platform lets you translate
Shopify. Shopify draws the checkout, customer accounts, order status pages and notifications itself, so an app that works in the browser through a loader does not run there. Shopify's help states that after you publish a language, your checkout and email notifications are displayed in the customer's language, that you can edit the text of each field on your checkout page from the admin, and that you should update your translations whenever you change your checkout's default language. Shopify also says that when you publish a language unique URLs are created for each translated page in your store. We have not confirmed language-count limits per Shopify plan from these pages; treat that as verify.
WordPress and other platforms. Forms usually come from a form plugin or a theme. Check whether the form plugin outputs text through the normal translatable channels, and whether a translation plugin can reach its error messages. Messages added by script after the page loads need a tool that watches for changes.
Payment providers. The hosted payment page is often outside your control. Check which languages it supports and test it. If it does not support a language, say so near the button and keep the surrounding steps clear.
Where machine translation needs a human
| Text | Risk | Recommendation |
|---|---|---|
| Prices, tax, shipping and returns wording | High | Human or full review |
| Consent and terms | High | Human, with legal review |
| Field labels and buttons | Medium | Review in context; short strings are ambiguous |
| Error messages | Medium | Review; keep them short and actionable |
| Marketing blurbs next to the form | Low | Machine with spot check |
Short UI strings have little context, so "Book" or "Order" can be translated as the wrong part of speech. Review them on the form itself.
Keep variables and tags intact
Error messages and confirmations often contain variables (a name, a number, a price) and markup (a link to the terms). A translation that drops or alters them breaks the page: a missing placeholder can erase a customer's name or total. Good tools keep placeholders and tags protected and flag a translation that loses one. LgTranslate's editor refuses to save a translation that loses a tag or placeholder, and rejects a machine translation that breaks them, leaving your original text on the page.
Details beyond words
- Names and addresses. Do not force one pattern. Allow long names, non-Latin scripts, and address formats that differ by country; avoid required fields that do not exist everywhere.
- Character encoding. The W3C advises serving pages in UTF-8 so form data comes back in the encoding the page used, and checking that the data received really is UTF-8.
- Autofill. MDN documents the
autocompleteattribute as the way to tell browsers what stored data may fill a field; keep it set correctly in every language. - Direction. In right-to-left languages the form layout, field order and icons may need work; see our RTL guide.
- Number, date and currency formats in the form and summary should follow the visitor's language; see dates, numbers, currencies and units.
- Language switching mid-flow. Make sure a visitor who changes language does not lose their basket or typed data, and does not land back on the home page.
Test every language end to end
- Add an item and go through the whole checkout in each language, to the last step you can safely reach.
- Trigger every error: empty required fields, an invalid email, a wrong code.
- Submit the form and read the confirmation page and email.
- Do it on a phone, where long translated labels wrap and buttons grow.
- Use the keyboard only and a screen reader if you can: labels must be announced in the right language.
- Have a native speaker read the text in the live flow, not a spreadsheet.
Next step
Start with the contact form, because it is quick to test: translate it, trigger its three or four error messages, read them aloud with someone who speaks the language, and fix anything that does not make sense. If you run a Shopify store, read our Shopify multilingual store guide, then try LgTranslate on a single language and see what it reaches in your theme. The Shopify platform page explains what the app covers and what Shopify keeps for itself.
Key takeaways
- Translate every state of a flow: labels, placeholders, errors, confirmations and emails.
- Learn what your platform draws itself; a browser loader cannot reach Shopify's checkout.
- Treat prices, consent and terms as high risk and review them.
- Protect placeholders and tags, serve UTF-8, and test each language end to end.
Sources
- Languages – Shopify Help Center – checkout and notifications shown in the customer's language after a language is published (checked 2026-11-06)
- Manage languages – Shopify Help Center – publishing a language creates unique URLs for translated pages (checked 2026-11-06)
- Checkout language – Shopify Help Center – editing checkout text and keeping translations current (checked 2026-11-06)
- Multilingual form encoding – W3C Internationalization – serve forms in UTF-8 and check received data (checked 2026-11-06)
- autocomplete attribute – MDN Web Docs – browsers' autofill permission on form fields (checked 2026-11-06)
Frequently asked questions
Can a translation app translate my Shopify checkout?
Shopify draws checkout, customer accounts and order pages itself, and a script-based loader does not run there. Shopify's help says that after you publish a language, checkout and email notifications are shown in the customer's language, and checkout wording can be edited in the admin. Check the result on your own store.
What is the most common form translation mistake?
Translating the labels but not the error messages, placeholders, confirmation emails and the text on buttons that appear after submission. A customer who hits an English error in the middle of a French form often gives up.
Should payment and legal wording be machine-translated?
Treat it as high risk. Prices, taxes, returns, consent and terms should be reviewed by a fluent person, ideally with legal review for terms.