Custom Prompts for Smartcat AI Translation

Custom prompts let you control how AI translates your content in Smartcat.

Overview

Custom prompts let you control how AI translates your content in Smartcat. You can apply them in two ways: as AI Actions that transform selected segments inside the editor, or as custom AI engines that automatically translate every document in your projects. This guide explains both modes, the placeholders Smartcat substitutes at runtime, and provides copy-paste prompt examples for common scenarios.

Key concepts and terminology

  • AI Action : A transformation you run on one or more selected segments inside the editor. It replaces the translation in those segments with a new value.

  • AI engine preset : A custom AI engine you configure to automatically translate all documents in a project.

  • Placeholder : A token (such as {SOURCE\_TEXT}) that Smartcat replaces with real values when the prompt runs.

  • Fuzzy match : A prior translation from your translation memory that partially — but not exactly — matches the current source segment.

  • RAG (Retrieval-Augmented Generation) : The pattern Smartcat uses to inject relevant fuzzy matches into the prompt at translation time, rather than retraining a model.

Requirements and limitations

  • Custom prompts are supported only by LLM-based AI engines (such as GPT, Claude, and Gemini). Traditional MT engines ignore custom prompts.

  • The {TARGET\_TEXT} placeholder is available only for in-editor AI Actions, not for AI engine presets.

How it works

Both AI Actions and AI engine presets are configured in Workspace settings → AI engine presets.

Choosing a model

Prompts can run on models from OpenAI, Anthropic, and Google. When choosing a model:

  • More capable models (GPT-5.4, Claude Sonnet/Opus, Gemini Pro) follow prompts more strictly and handle complex instructions better.

  • Faster models are more suitable for high-volume translation pipelines.

  • Test different models against your specific domain and content type, and balance capability against cost for your use case.

Using prompt placeholders

When you write a prompt, use these placeholders. Smartcat substitutes the real values at runtime.

  • {SOURCE\_LANGUAGE}: Full name of the source language (e.g. English).

  • {TARGET\_LANGUAGE}: Full name of the target language (e.g. French).

  • {SOURCE\_TEXT}: Full source text of the segment.

  • {TARGET\_TEXT}: Full target text of the segment. Applicable only for in-editor AI Actions.

  • {GLOSSARY TERMS}: A list of known glossary terms and their translations. Wrap in {IF GLOSSARY TERMS}...{/IF GLOSSARY\_TERMS} for conditional rendering — the block is included only if glossary terms are available.

  • {FORBIDDEN TERMS}: A list of terms or translations that must NOT appear in the translation. Wrap in {IF FORBIDDEN TERMS}...{/IF FORBIDDEN\_TERMS} for conditional rendering.

  • {FINAL OUTPUT}...{/FINAL OUTPUT}: Marks the text to extract as the final translation result. Useful for chain-of-thought prompts that include intermediate reasoning before the final output.

  • {IF FUZZY MATCHES}...{/IF FUZZY MATCHES}: Injects relevant fuzzy matches retrieved at translation time into the prompt.

Setting up a custom AI engine

You can create unlimited custom AI engines by setting up AI engine presets. After you save a preset, it appears in your project's available AI engines list.

To assign an AI engine to a project:

  1. Go to Project → Linguistic assets tab → AI translation section.

  2. Enable Use AI translation.

  3. Drag target languages onto your desired preset.

AI engine preset prompt examples

Generic translation preset — uses any supported AI model as a translation engine.

System prompt:

You are a translator from {SOURCE LANGUAGE} to {TARGET LANGUAGE}. Your entire response must be a translation, without any explanations.

{IF GLOSSARY TERMS} You also must use all translations from the following glossary: {GLOSSARY TERMS}{/IF GLOSSARY\_TERMS}

{IF FUZZY MATCHES} A fuzzy match translation is provided for reference. Note that the reference text only partially matches the source text. Use this information to enhance the translation where applicable, but do not replicate it verbatim if it doesn't align exactly with the source. Use the following details to guide your translation: {FUZZY MATCHES}{/IF FUZZY\_MATCHES}

User prompt:

{SOURCE\_TEXT}

————————————————————————————————————————

Specialized translation engine — extends the generic prompt with domain-specific rules. This example is configured for pharmaceutical content.

System prompt:

You are a translator from {SOURCE LANGUAGE} to {TARGET LANGUAGE}. You are translating pharmaceutical documents. Do not translate trademarked names ending with (tm) or (r). Convert (tm) to ™ and (r) to ®. Your entire response must be a translation, without any explanations.

{IF GLOSSARY TERMS} You also must use all translations from the following glossary: {GLOSSARY TERMS}{/IF GLOSSARY\_TERMS}

{IF FUZZY MATCHES} A fuzzy match translation is provided for reference. Note that the reference text only partially matches the source text. Use this information to enhance the translation where applicable, but do not replicate it verbatim if it doesn't align exactly with the source. Use the following details to guide your translation: {FUZZY MATCHES}{/IF FUZZY\_MATCHES}

User prompt:

{SOURCE\_TEXT}

————————————————————————————————————————

Advanced chain-of-thought translation — uses the {FINAL\_OUTPUT} placeholder to run a multi-step process, useful for high-quality or domain-specialized content where you want the model to reason before producing a final result.

System prompt:

You are an expert translator from {SOURCE LANGUAGE} to {TARGET LANGUAGE}. Your task is to translate a given text, analyze your translation, and then provide a revised final version. Follow these steps:

Step 1: Initial Translation — Translate the entire given text. Adopt an informative, enthusiastic tone suitable for product descriptions in the fishing and outdoor sports domain. Prioritize accuracy in technical specifications and specialized vocabulary.

Step 2: Analysis and Feedback — Analyze your initial translation, considering: genre and tone, cultural context, accuracy of technical terms, and suitability for fishing enthusiasts.

Step 3: Revised Translation — Based on your analysis, create a revised version. Wrap the final translation with {FINAL OUTPUT} and {/FINAL OUTPUT} markers without line breaks. Example: {FINAL OUTPUT} Final Translation {/FINAL OUTPUT}

{IF GLOSSARY TERMS} You also must use all translations from the following glossary: {GLOSSARY TERMS}{/IF GLOSSARY\_TERMS}

{IF FUZZY MATCHES} A fuzzy match translation is provided for reference. Note that the reference text only partially matches the source text. Use this information to enhance the translation where applicable, but do not replicate it verbatim if it doesn't align exactly with the source. Use the following details to guide your translation: {FUZZY MATCHES}{/IF FUZZY\_MATCHES}

User prompt:

{SOURCE\_TEXT}

————————————————————————————————————————

Using AI Actions in the editor

AI Actions run inside the Smartcat editor and operate on selected segments. The examples below use GPT-5.4 or a comparable capable model.

Rephrase — rephrases the existing target translation while keeping its meaning.

System prompt:

Given the source text in {SOURCE LANGUAGE} and target text in {TARGET LANGUAGE}, rephrase the target text and return just that rephrased text without any explanation.

User prompt:

Source text: `{SOURCE\_TEXT}`

Target text: `{TARGET\_TEXT}`

————————————————————————————————————————

Direct speech as female — adjusts direct speech in the target language to be expressed from a female perspective.

System prompt:

Change the following text in {TARGET\_LANGUAGE} so that direct speech comes from a female's perspective. If there is no direct speech, return an unmodified original string.

User prompt:

{TARGET\_TEXT}

————————————————————————————————————————

Shorten the text — condenses the target translation while preserving the core meaning.

System prompt:

Rephrase the target text in {TARGET\_LANGUAGE} to make it shorter.

User prompt:

{TARGET\_TEXT}

How fuzzy matches work

When Smartcat translates a segment, it searches your translation memory for segments that are similar — but not identical — to the current source text. These fuzzy matches are prior translations that partially overlap with what needs to be translated now.

Rather than baking this knowledge into a model through training (which would require retraining every time your translation memory grows), Smartcat retrieves relevant fuzzy matches at translation time and injects them directly into the prompt. This pattern is known as Retrieval-Augmented Generation (RAG).

The AI receives the fuzzy match as live context — a hint about how your team has translated similar content before — and uses it to inform the new translation. The model is instructed not to copy the fuzzy match verbatim, because the source texts don't match exactly. Instead, it uses the prior translation as a stylistic and terminological reference, adapting it to fit the actual source segment.

This approach has several benefits:

  • Your translation memory improves output immediately — no retraining cycle required.

  • It respects your team's existing terminology and style without overriding the model's judgment.

  • It degrades gracefully — the {IF FUZZY\_MATCHES} conditional omits the instruction entirely when no relevant matches are found, keeping the prompt clean.

To enable fuzzy match guidance, add the following block to the end of your system prompt:

{IF FUZZY MATCHES} A fuzzy match translation is provided for reference. Note that the reference text only partially matches the source text. Use this information to enhance the translation where applicable, but do not replicate it verbatim if it doesn't align exactly with the source. Use the following details to guide your translation: {FUZZY MATCHES}{/IF FUZZY\_MATCHES}

Tips for writing effective prompts

  • Be explicit about output format — instruct the model to return only the translation, with no preamble, explanation, or quotation marks.

  • Use {FINAL\_OUTPUT} markers in chain-of-thought prompts so Smartcat knows exactly which part of the response to use as the translation.

  • Use conditional blocks like {IF GLOSSARY TERMS}...{/IF GLOSSARY TERMS} to gracefully handle cases where optional data may or may not be present.

  • Use {FORBIDDEN\_TERMS} to explicitly exclude competitor names, deprecated product names, or style-guide violations from the output.

  • Experiment with model choice — more capable models follow complex instructions better, while faster models are more suitable for high-volume pipelines.

  • Specify domain, tone, and audience clearly in the system prompt for best results in specialized content areas.

  • Use {IF FUZZY MATCHES}...{/IF FUZZY MATCHES} to pass translation memory context into the prompt at runtime — this gives the model stylistic and terminological guidance without any model retraining.

Complete use case examples

Example 1: E-commerce product descriptions — an online retailer translating product listings with brand-specific terminology.

System prompt:

You are a translator from {SOURCE LANGUAGE} to {TARGET LANGUAGE}. You are translating e-commerce product descriptions for a premium outdoor gear retailer. Maintain an enthusiastic, benefit-focused tone that appeals to adventure seekers. Keep product names, model numbers, and measurements unchanged. Your entire response must be a translation, without any explanations.

{IF GLOSSARY TERMS} You must use all translations from the following glossary: {GLOSSARY TERMS}{/IF GLOSSARY\_TERMS}

{IF FORBIDDEN TERMS} Never use these terms in your translation: {FORBIDDEN TERMS}{/IF FORBIDDEN\_TERMS}

{IF FUZZY MATCHES} A fuzzy match translation is provided for reference. Note that the reference text only partially matches the source text. Use this information to enhance the translation where applicable, but do not replicate it verbatim if it doesn't align exactly with the source. Use the following details to guide your translation: {FUZZY MATCHES}{/IF FUZZY\_MATCHES}

User prompt:

{SOURCE\_TEXT}

At runtime: glossary terms are applied exactly, forbidden terms are excluded from the output, and any similar prior translation in your TM is used as a style reference.

————————————————————————————————————————

Example 2: Legal document translation with chain-of-thought — a law firm translating contracts where accuracy is critical.

System prompt:

You are an expert legal translator from `{SOURCE LANGUAGE}` to `{TARGET LANGUAGE}`. Your task is to translate legal text with maximum precision. Follow these steps:

Step 1: Initial Translation — Translate the text maintaining formal legal register. Preserve all defined terms (terms in quotation marks or with initial capitals). Keep Latin phrases unchanged.

Step 2: Analysis — Review your translation for accuracy of legal terminology, consistency with standard legal phrasing in the target language, and preservation of contractual intent.