Translations (i18n)
Localize your waitlist signup form into multiple languages.
Translations let you localize the UI text on your signup form, embed widget, and hosted pages. Set a locale on your waitlist and all built-in user-facing strings are automatically translated.
Supported Languages
| Code | Language |
|---|---|
en |
English (default) |
es |
Spanish |
fr |
French |
de |
German |
pt |
Portuguese |
ja |
Japanese |
zh |
Chinese |
ko |
Korean |
Setting the Language
Set the locale on your waitlist via the API:
API: PATCH /waitlists/{waitlist_id}
{
"settings": {
"locale": "es"
}
}
The change takes effect immediately. All signup forms, embed widgets, and hosted pages for this waitlist will display translated strings.
To revert to English:
{
"settings": {
"locale": "en"
}
}
How It Works
- You set a
localeon your waitlist (e.g.,"es"for Spanish) - The public config endpoint (
GET /public/waitlists/{id}/config) returns atranslationsobject containing all translated strings for the selected locale - The hosted signup page, embed widget, and hosted pages render the translated strings automatically
Your custom content (headline, subheadline, custom question labels, consent text) is not auto-translated. Those fields always display exactly what you entered. Translations only apply to the built-in UI text like form labels, button text, status messages, and error messages.
locale for built-in UI strings and write your headline, subheadline, custom questions, and consent text in the target language.
Translatable Strings
The following built-in strings are translated when a locale is set:
Form Labels
- Email address
- First name
- Last name
- Phone number
- Invitation code
Buttons
- Join the Waitlist (submit button)
- Copy Link
- Copied!
Success Messages
- You’re on the list!
- Your position
- Your referral link
- Share to move up
Status Messages
- This waitlist is currently closed
- Welcome back!
- Not you? Sign up
- Powered by MakeEmWait
Social Proof
- Others are already signing up
- Dozens have already joined
- Hundreds are already in line
- {count} people on the waitlist (501–1,000)
- {count} people on the waitlist (1,000+, formatted with toLocaleString)
Error Messages
- Please enter a valid email address
- This field is required
- Something went wrong. Please try again.
Social Sharing
- Share on X
- Share on LinkedIn
- Share on Facebook
- Share on WhatsApp
Validation
The locale field only accepts the supported language codes listed above. Setting an unsupported code returns a validation error:
{
"error": "locale must be one of: en, es, fr, de, pt, ja, zh, ko",
"error_code": "VALIDATION_ERROR"
}
Related
- Embed Widget — the widget automatically renders translated strings
- Signup Form — how the hosted signup form works
- Creating Waitlists — configure all waitlist settings