Skip to content

Glossaries

A glossary is the approved way to translate specific source terms. It is how you stop the same concept from being rendered three different ways in three different languages — “account” becoming cuenta in one screen and perfil in the next.

Glossaries are term-level. For segment-level reuse (full phrases), see Translation Memory.

Build a glossary as soon as you see:

  • The same product-specific concept translated inconsistently across screens
  • Brand names being translated when they should be kept as-is
  • Compliance or legal requirements around specific wording
  • Domain terminology (medical, legal, financial) where the “natural” translation is wrong in your context

If you have a handful of UI strings and no specialist vocabulary, skip glossaries until you hit one of the above.

A glossary contains concepts. A concept has:

  • Source term — the term in your source language
  • Definition — plain-language description of what it means in your product (translators rely on this)
  • Target terms — one or more per target language, each with a type
  • Part of speech, subject, case sensitivity, non-translatable flag — metadata that controls matching and QA
TypeMeaning
PreferredUse this translation
AdmittedAcceptable alternative
DeprecatedWas used, do not use anymore
ForbiddenNever use this translation

The editor surfaces the preferred term first and flags violations of the other types.

When a translator opens a key, Comvi scans the source text for glossary hits and:

  • Highlights matched source terms inline
  • Shows preferred translations in the glossary panel
  • Runs QA checks with configurable severity (see below)

This is passive — the translator decides what to type. Glossary hits don’t auto-apply to the target value.

Per project you can tune severity:

CheckDefaultFires when
Forbidden term usedErrorA forbidden target term appears
Deprecated term usedWarningA deprecated term appears instead of the preferred one
Missing glossary termWarningA required glossary term is absent from the translation
Non-translatable term changedWarningA non-translatable source term (e.g. brand name) was rewritten
Case mismatchInfoCasing differs from the glossary definition

Errors can block save if strict mode is enabled in project QA settings; warnings and info do not block.

Glossary behaviour depends on provider type — this is the most important thing to know.

Provider typeHow the glossary is applied
LLM providers (OpenAI, Anthropic)Glossary terms are injected into the prompt with preferred translations. The model is instructed to honour them. Reliable but not guaranteed — review critical terminology.
Classical providers (Google, DeepL, Amazon, Azure)Terms are not sent to the provider. They appear as hints to the human reviewer in the editor.

This is a deliberate product choice: classical glossary APIs differ per provider, add cost, and often silently fail on morphology. The consistent, predictable story is “hints for humans, prompt injection for LLMs”.

See Machine Translation for the broader provider picture.

  1. Open glossaries

    Either Organization Settings → Glossaries (for shared terminology) or Project Settings → Glossaries (for project-specific terms).

  2. Create

    Name the glossary, set its source language (must match the project that will use it), optional description. Save.

  3. Add concepts

    For each term, fill in the source term, definition, and at least the preferred translation for each target language. Set metadata (subject, non-translatable, case-sensitive) as needed.

A project can have several glossaries assigned, each with a priority. Typical layered setup:

  • Organization glossary — brand names, company-wide conventions, compliance terms
  • Project glossary — terminology specific to this product surface
  • Domain glossary — e.g. legal, medical, financial vocabulary shared by relevant projects

When terms collide across assigned glossaries, higher-priority glossary wins for the editor’s preferred-translation display and for LLM prompt injection.

Glossaries exchange via CSV. Export produces one CSV with concepts, terms, and metadata. Import asks you to map your CSV columns (source term, definitions, per-language targets, term type) to Comvi’s fields and previews the result before committing.

Use this to seed a glossary from a spreadsheet your terminology team already maintains, or to hand terminology back to a stakeholder for review.

  • Definitions matter more than you think. A translator seeing “dashboard” needs to know if that’s the product’s main home screen, a widget panel, or a BI report — same English term, different correct translation.
  • Start with brand and product-specific nouns. Verbs and adjectives are harder to get consistent at the term level; rely on tone instructions for MT and reviewer judgement for those.
  • Use non-translatable liberally for brand. It prevents well-meaning MT from translating product names.
  • Mirror glossary scope to team scope. Organization-level for stuff every project must agree on; project-level for stuff one team owns.
  • Glossary with classical MT providers is hints-only — not enforced by the provider.
  • Case-sensitive matching is opt-in per concept.
  • CSV is the only exchange format today (no TBX).

The glossary isn’t enforcing during bulk MT

Section titled “The glossary isn’t enforcing during bulk MT”

You are probably on a classical provider. Switch the batch to an LLM provider, or review MT output manually — the hints surface in the editor.

Check the source language of the glossary matches the project’s source language. Check the concept’s case-sensitive flag if the source text uses different casing. Morphology (plurals, verb forms) is exact-match only — “dashboard” matches but “dashboards” doesn’t unless both are concepts.

Two glossaries have conflicting preferred terms

Section titled “Two glossaries have conflicting preferred terms”

Priority decides the winner. Check Project Settings → Glossaries for the priority order.