Talli

Docs / Events

Languages and translation

Offer each event in any languages your attendees read, and Talli translates its registration page, attendee types, questions, tickets and emails automatically. Your team reviews and edits the translations side by side, and a glossary keeps names and approved wording right in every language.

Add languages to an event

  1. Open the event and choose the Registration tab, then Languages.
  2. Choose + Add language.
  3. Type a language's name or code (for example Haitian Creole or ht) and pick it from the list. Any language works: if it is not in the list, type its code (for example pt-BR or sw) and choose Add.
  4. Choose Save languages.

Talli starts translating right away, usually within a minute. The Languages tab shows each language filling up to 100% and refreshes itself for a few minutes while it works. If translating could not start, Talli says so when you save: choose Translate again a minute later. The language your event is written in stays the original; you can change it on the event's edit page.

To stop offering a language, remove it in the same dialog. It disappears from the public page at once; its translations are kept, so adding it back later brings your edits back too.

Ask your assistant
Offer the Spring Safety Seminar in Spanish, Simplified Chinese and Haitian Creole as well as English.

Select the prompt and copy it into Claude or ChatGPT connected to Talli. Uses set_event_languages, get_language_coverage. Connect an assistant

What gets translated

  • The event's title and description.
  • Attendee type names.
  • Registration questions (including reworded built-in questions) and their choices.
  • The agenda's session titles and descriptions, and its speakers' titles and bios (see Agenda).
  • The words of the registration page, the ticket page and the confirmation emails ("Register", "You're registered", and so on).
  • The subject and text of the event's emails: invitations, reminders, follow-ups, announcements, and confirmation and waitlist emails you reworded (see Emails and contact lists). They appear on the Languages tab under Emails, and each person gets them in their language.
  • The title, questions and choices of the event's surveys.
  • Live booth pages of the event's exhibitors: heading, text and offer, translated when you approve them.
  • The published event website: its headings, text, buttons and questions and answers, translated when you publish it.
  • Comments attendees write in a survey in their own language, into the event's own language for your team. These are for the team only: they do not appear on the Languages tab, and the results show the original next to each translation.

Dates and times are written in the attendee's language from the event's data, never translated by AI. Venue names and addresses are shown as you wrote them.

Check the Languages tab

The four figures at the top show:

  • Languages offered: how many languages the event is translated into, plus the one it is written in.
  • Registered in another language: the share of registrations that chose a language other than the original.
  • Reviewed by a person: how many languages have every translation checked or written by your team.
  • Up to date: how much of the event's text is translated into every language right now, or how many texts could not be translated.

The table lists each language with how much is translated, its review state, the initials of the people who reviewed or wrote its translations, and how many people registered in it:

Review stateMeaning
OriginalThe language the event is written in.
TranslatingSome text is still being translated.
N could not be translatedAutomatic translation failed for these texts; attendees see them in the original language.
AI onlyEverything is translated automatically and nobody has checked it yet.
N of M reviewedYour team has checked or written N of the M texts.
ReviewedYour team has checked or written every text.
N need reviewYour team edited these texts, then the original changed: check that the edit still fits.
An event's Languages tab: four languages offered plus English, the share registered in another language, each language's translation and review progress, and the glossary.
An event's Languages tab. Shown with sample data.

Review translations side by side

  1. On the Languages tab, choose Review next to a language.
  2. Talli opens the first text that needs a look, with the original on the left and the translation on the right.
  3. If the translation reads right, choose Looks right: it becomes Reviewed and the next text that needs a look opens.
  4. To change it, edit the text and choose Save edit: it becomes Edited, and the public page shows your wording at once.
  5. Use Previous and Next to move through every text.

Each text shows its status:

  • AI only: translated automatically, not checked yet.
  • Reviewed: checked by someone on your team.
  • Edited: written by someone on your team.
  • Needs review: edited by your team before the original text changed.
  • Not translated: not translated yet, or automatic translation failed on it; you can write the translation yourself.

If you change your text in the original language, Talli translates it again automatically. Edited translations are never overwritten: they stay as your team wrote them and are marked Needs review. If you change the original back, the edit no longer needs review.

Side-by-side review of Spanish translations next to the English originals, with status labels and buttons to edit or mark them reviewed.
Reviewing translations side by side. Shown with sample data.
Ask your assistant
Show me the Spanish texts of the Spring Safety Seminar that still need review, next to the English originals.

Select the prompt and copy it into Claude or ChatGPT connected to Talli. Uses find_translations. Connect an assistant

When text could not be translated

Now and then automatic translation fails on a text, for example when the translation service declines it or is unavailable for a while. Talli translates everything else and keeps what it translated. The language shows N could not be translated, and the Translation panel says Some text could not be translated. Attendees see those texts in the original language until they are translated.

To fix it, choose Translate again, or open Review and write the translation yourself. Changing the original text also tries again.

Translate again

  1. In the Translation panel, choose Translate again, for example after changing the glossary or when some text could not be translated.
  2. Talli asks you to confirm, naming the event and its languages.
  3. Choose Translate again in the dialog.

The event's own text (its title, description, attendee types, questions and choices) is translated again into every language. Translations that were AI only or Reviewed are replaced by new automatic translations, so reviewed ones go back to AI only. Your team's edits are never replaced. The registration page and email words your events share are not translated again, so their reviews stay.

Set your organization's languages and glossary

  1. Go to Settings, then Languages.
  2. Under Languages new events start in, choose the languages every new event starts with and choose Save languages. The first is the language your events are written in. Existing events keep their own languages.
  3. Under Add a term, write a term as it appears in your events and choose its rule:
    • Never translate: names of programs, brands, places and people stay exactly as written (for example "Beat the Heat").
    • Use approved wording: give your team's wording in each language (for example "Crédito de equipo" in Spanish).
  4. Choose Add term.

Use Edit or Remove next to a term to change it. Every new automatic translation follows the glossary. Translations made before a glossary change keep their wording until they are translated again: choose Translate again on the event's Languages tab.

Organization language settings with the default languages for new events and a glossary of terms to keep or translate.
Organization languages and glossary. Shown with sample data.
Ask your assistant
Add a glossary term so our organization's name is never translated.

Select the prompt and copy it into Claude or ChatGPT connected to Talli. Uses list_glossary, upsert_glossary_term. Connect an assistant

What attendees see

Attendees pick their language from the menu at the top of the registration page or the links at the bottom, or open a link with ?lang= and the language code (for example ?lang=ht). A language the event does not offer opens the page in the event's original language. Languages written right to left, such as Arabic, Hebrew, Persian and Urdu, are laid out right to left. When some of the text on the page is an automatic translation nobody has reviewed, the page shows a small "Translated automatically" note with a link to the original. The ticket page and the confirmation email use the language the attendee registered in.

The registration page for Beat the Heat - Syracuse shown in Spanish, with the form labels, choices and seats left all translated.
The registration page in Spanish. Shown with sample data.

Who can use it

Owners and admins add and remove languages, review and edit translations, translate again, and manage the default languages and the glossary. Staff can see the Languages tabs, the coverage and every translation, but cannot change them.

Limits and edge cases

  • An event can be translated into up to 30 languages; your organization can start new events in up to 30.
  • The glossary holds up to 500 terms of up to 100 characters each, and each term is unique regardless of capitals.
  • A translation is up to 10,000 characters.
  • While a text is being translated again after a change, the public page shows the original text in its place, never an outdated translation. Edited translations stay on the public page even when they need review.
  • Talli's own page words (buttons, messages, email text) are translated once per language for your whole organization: a review or edit of them on one event applies to all your events. Translate again on an event never changes them.
  • The Languages tab stops refreshing itself after a few minutes; reload the page to see later progress.
  • Copying an event copies its translations with their status; the copy's title is translated anew because it names the new venue.
  • Removing a question, a choice or an attendee type removes its translations.

Coming soon

  • Choosing which parts of an event are translated automatically.
  • Translating venue directions and accessibility notes.

From an AI assistant

  • get_language_coverage with { eventId }: for each language, total, translated, machine (AI only), reviewed, edited, stale (needs review), failed (could not be translated), reviewers ({ id, name } of the people who reviewed or wrote its translations) and registrations.
  • set_event_languages with { eventId, targetLanguages, sourceLanguage? } (owners and admins): targetLanguages is the full list of BCP 47 tags to translate into, for example ["es", "zh-Hans", "ht"]; translation starts in the background, and queued says whether it started.
  • find_translations with { eventId, language, status? }: every text in that language next to its original, with entityType, entityId, field, status (missing, machine, reviewed, edited), stale and failed; status filters by missing, machine, reviewed, edited, stale or failed.
  • update_translation with { eventId, language, entityType, entityId, field, text } (owners and admins): saves your wording as edited.
  • mark_translations_reviewed with { eventId, language, items? } (owners and admins): items is a list of { entityType, entityId, field }; without it, every translated text in the language is marked reviewed.
  • regenerate_translations with { eventId, language? } (owners and admins): translates the event's own text again and retries text that could not be translated, never touching edited text or the shared page words; assistants ask you before running it, because reviewed translations go back to AI only.
  • list_glossary with {}: the terms and the languages your organization translates into.
  • upsert_glossary_term with { term, rule, translations?, id? } (owners and admins): rule is keep or translate; translations maps a BCP 47 tag to the approved wording.
  • delete_glossary_term with { id } (owners and admins).
  • set_default_languages with { languages } (owners and admins): the languages new events start with.

Back to all guides