You can now add translations directly at the email layout level. This means that when you configure a default or reusable email layout in your organization environment, you can also provide localized versions of that layout.
Previously, translations were only available on a per-email-step basis within workflows. Now, layouts themselves can be localized once, and the translations will automatically apply to any email workflow that uses that layout.
How It Works
Go to Workspace → Layouts and create or edit a layout.
Add translations for your chosen locales (JSON format).
Any workflow email step using that layout will render the correct translation automatically, based on the subscriber’s locale.
Layout and step content are translated independently, then combined during rendering to deliver fully localized emails.
Deliver notifications in your subscribers' preferred languages with automated selection based on subscriber locale. Create content in your default language, export it for translation, then re-upload translated files. Novu handles delivering the right version to each subscriber.
Set your default language and add target languages you want to support. As your international reach grows, you can add more languages anytime, with multi-select fields that make managing dozens of locales straightforward.
Per-Workflow Translation Control
Navigate to Workflows > Select workflow > Enable Translations to enable translations on specific workflows. This gives you granular control over which notification flows support multiple languages while keeping others in your default language.
Translation Key Integration
Use {{t.key}} syntax in Email and In-App editors to create translatable content. The editor suggests existing keys as you type and lets you add new keys with "Add to Translations."
Support for nested keys like {{t.product.details.description}} provides flexible content organization.
JSON-Based Translation Files
Export structured JSON files containing your default content, translate externally, then re-upload.
Files follow a clear channel-based format:
{ "in-app": { "title": "Welcome to Novu!", "message": "Hi {{subscriber.firstName}}, let's get started!" }, "email": { "subject": "Get Started", "body": "Thank you for joining us, {{subscriber.fullName}}" }}
Smart Status Tracking
When you update the default locale content, other languages automatically mark it as "Outdated, needs update."
Translation groups organize all language variants per workflow, with clear status visibility and search capabilities.
Real-Time Preview
Test different subscriber locales using Preview Context to see how content renders in each language.
Update translations directly from the preview interface.
Available in beta for Team and Enterprise plans. Configure languages from the translations page, then enable translations on workflows where multilingual support matters. Get started with the translation documentation.