How TM matching works in Smartcat



Learn how and when to use TM matching

Overview

Translation Memory (TM) matching in Smartcat compares new source segments against your existing TM entries to find reusable translations. Match percentages indicate how closely a new segment matches stored entries, ranging from fuzzy matches (75-99%) to exact matches (100%) to context-verified matches (101-103%).

When to use it

Use TM matching when you want to:

  • Leverage previous translations — Reuse work from past projects to save time and cost

  • Maintain consistency — Ensure the same source text gets the same translation across documents

  • Speed up translation — Automatically insert high-confidence matches without manual work

  • Reduce costs — TM matches are priced the same as new AI translation and is typically less expensive than human translation and review

Key concepts

Term

Definition

Fuzzy match (75-99%)

Source text is similar but not identical to a TM entry. Requires translator review.

100% match

Source text is identical to a TM entry, but surrounding context was not verified.

101% match

Source text matches AND one adjacent segment (before or after) also matches the TM context.

102% match

Source text matches AND both adjacent segments match the TM context.

103% match

Source text matches AND the segment's key/ID matches (software localization files only).

Context metadata

Information about surrounding segments stored with each TM entry to enable context matching.

How it works

Match percentage calculation

When you open a document, Smartcat compares each source segment against your enabled TMs:

Match Type

What it means

Confidence level

75-99%

Similar but not identical text. Differences may include word changes, additions, or deletions.

Low — requires review

100%

Exact text match. The source is identical, but context wasn't verified.

Medium — likely correct

101%

Exact match + one adjacent segment matches context stored in TM.

High — context verified

102%

Exact match + both adjacent segments match context stored in TM.

Very high — full context match

103%

Exact match + segment key/ID matches (software files only).

Highest — key verified

💡 Tip : Review 100% matches carefully during translation — they may need adjustment for the specific context, while 101%+ matches provide additional confidence through context verification.

How context matching works

When Smartcat stores a segment in the TM, it also stores the content of the previous and following source segments as context metadata (x-context-pre and x-context-post).

Example of what's stored in the TM:

  • Previous segment: "I live in a small village."

  • Source segment: "I have a small house." → Target: "J'ai une petite maison."

  • Following segment: "It is blue."

When the same segment appears in a new document:

  • If neither adjacent segment matches → 100% match

  • If one adjacent segment matches → 101% match

  • If both adjacent segments match → 102% match

Context matches provide higher confidence that the translation is correct for the specific location in the document.

💡 Tip : For maximum consistency, use TMs with context matches (101%+) as they provide the highest confidence that the translation is appropriate for the specific document location.

How key ID matching works (103%)

For many  files (JSON, XLIFF, RESX, etc.), segments often have unique identifiers or keys. Smartcat can use these keys as an additional context signal.

When a document uses ContextId matching (determined by file format):

  • A 103% match means the source text is identical AND the segment's key/ID matches the TM entry

  • This is the highest confidence match available

⚠️ Key ID matching (103%) is only available for file formats that contain segment identifiers. Standard document formats use previous/next context matching (max 102%).

TM matching priority over AI translation

Smartcat processes segments in this order:

  1. TM lookup first — Each segment is checked against your TMs for matches

  2. AI translation second — Segments without TM matches (or below your threshold) go through AI translation

By default, TM matches at 100% and above are confirmed automatically and do not require human review. This means:

  • Exact TM matches are trusted and applied without additional processing

  • AI translation only runs on segments that don't have sufficient TM coverage

You can configure this behavior in translation rules to require different thresholds for auto-confirmation.

Requirements and Limitations

Requirements

  • The TM must contain entries for the same language pair as your document

  • For automatic translation to insert matches automatically, you must configure translation rules

Limitations

  • The default minimum match threshold is 75% — matches below this are not shown. You can lower the threshold to 50% in the translation memory settings for the project.

  • 103% matches are only available for file formats with segment keys (software localization files)

  • Context matching requires the TM to have been populated with context metadata

Configuring translation rules

Step 1 — Open automatic translation settings

  1. In the left sidebar, click Translation rules

  2. Click Add RuleTranslation Memories

Step 2 — Configure settings for the translation rules

  1. Select which TM to use from your enabled TMs

  2. In the Minimum match percentage field, specify the threshold for inserting matches

  3. Optionally, set Minimum TM segment Quality to only use reviewed TM entries

  4. Optionally, set Minimum word count in a segment to avoid inserting matches for very short segments

Step 3 — Configure confirmation behavior

  1. In the Confirm segments field, specify whether to auto-confirm inserted translations

  2. For high-quality TMs with 100%+ matches, you can confirm at the translation stage

  3. For lower thresholds or uncertain TM quality, leave segments unconfirmed for translator review

💡 Tip : Set up separate rules for each TM if you have multiple — rules execute in order, so put your most reliable TM first.

Step 4 — Save and run

Click Save & Run to apply the rules to all documents in the project.

💡 Tip : Use the "Pretranslate" button after configuring rules to apply TM matches to existing documents in your project.

Troubleshooting

TM matches aren't being applied to my project

Check these common causes:

  1. Wrong language pair — Ensure the TM contains entries for your document's source and target languages

  2. No translation rules — TMs provide suggestions in the editor, but automatic insertion requires translation rules

  3. Threshold too high — If your minimum match percentage is set to 100%, fuzzy matches won't be inserted. If your minimum TM segment Quality is too high, it may also prevent matches.

  4. TM is empty — Check that the TM actually contains entries (view TM contents in the TM management area)

I see 100% matches but expected 101% or 102%

Context matches require:

  • The TM entries to have been created with context metadata (from a previous project with adjacent segments)

  • The adjacent segments in your new document to match those stored in the TM

  • If you imported TM entries from an external file, context metadata may not have been included

I don't see 103% matches for my software files

103% matches require:

  • A file format that contains segment keys/IDs (JSON, XLIFF, RESX, etc.)

  • The TM entries to have been created from the same or similar file with matching keys

  • Standard document formats (DOCX, PDF, etc.) use previous/next context matching and max out at 102%