BPM File Documentation
Summary
A BPM (Trados Studio AutoSuggest Dictionary) file is a bilingual phrase index that the Trados (formerly SDL Trados) computer-assisted-translation tool builds from a translation memory and uses to suggest text as you type. You do not read it directly; you add it inside Trados Studio under Project Settings > Language Pairs > AutoSuggest Dictionaries. Its MIME is application/octet-stream and it is built on an embedded SQLite database. If your .bpm did not come from Trados, it may be an unrelated format.
Technical details
| Feature | Value |
|---|---|
| Full name | Trados Studio AutoSuggest Dictionary |
| File extension | .bpm |
| MIME type | application/octet-stream |
| Format type | Binary AutoSuggest dictionary (SQLite-based bilingual phrase index) |
| Developer | RWS (formerly SDL) — Trados Studio |
| Introduced | SDL Trados Studio 2009 (AutoSuggest feature) |
| Underlying container | Embedded SQLite database (undocumented, version-dependent) |
| Header hint | 53 51 4C 69 74 65 20 66 6F 72 6D 61 74 20 33 00 (“SQLite format 3\0”) |
| Open standard | No — proprietary, app-specific |
| Built from | A translation memory (.sdltm or .tmx) |
| Contains | Source/target sub-segment phrase pairs, language-pair metadata |
| Opened by | Trados Studio (add under Language Pair Settings) |
| Convertible back to TM? | No — a derived index, not a translation memory |
| Related extensions | .sdltm, .tmx, .sdlproj, .sdlxliff |
| Also used by | Legacy Battle Planner module, business-process models, bitmap/tempo data |
| Specification | trados.com/products/trados-studio/ |
What is a BPM file?
In its dominant current meaning, a .bpm file is an AutoSuggest Dictionary for Trados Studio, the leading computer-assisted-translation (CAT) suite. Trados was developed by SDL until RWS acquired SDL in 2020, and the product is now branded simply “Trados”. AutoSuggest, introduced in SDL Trados Studio 2009, scans a translation memory and extracts recurring sub-segment phrases into a fast bilingual dictionary. As a translator types, Trados offers matching phrases from that dictionary, an autocomplete tuned for professional translation.
The dictionary is stored as a .bpm file. It has no human-readable surface and is only useful inside Trados: you do not open it as a document, you attach it to a project so suggestions appear while you work. Translators typically meet a .bpm when setting up a job — they generate one from their own translation memory, or receive one from a client or agency alongside the translation memory and termbase.
How AutoSuggest builds the dictionary
An AutoSuggest dictionary is a derived index, not a translation memory. Trados takes a translation memory as input — either an .sdltm database or a .tmx exchange file — and runs its AutoSuggest generation tool over it. That tool mines the memory for recurring source-language phrases and their corresponding target-language phrases, then writes those sub-segment pairs into the .bpm as a compact bilingual lookup structure. The generation is worthwhile only with a sizeable memory: a small translation memory yields few recurring phrases, so the resulting dictionary offers little to suggest.
At translation time, Trados watches what you type in the target segment and queries the dictionary for phrases whose source side matches the segment you are translating, presenting the target-language completions inline. The dictionary is bound to a specific language pair, so its stored metadata records which source and target languages it applies to.
The SQLite container
Community reports indicate the .bpm is built on an embedded SQLite database, which is why the underlying bytes typically start with the SQLite format 3\0 header. This is not officially documented, and the exact schema is version-dependent, so it is best treated as an observation rather than a specification. Functionally, the database holds a table of source/target phrase pairs plus the language-pair metadata; the SQLite engine gives Trados the fast indexed lookups it needs to suggest phrases as fast as a translator types.
Adding a dictionary to a project
To use a .bpm, open Trados Studio and add it under Project (or Language Pair) Settings > AutoSuggest Dictionaries > Add, pointing Trados at the file. Once it is attached to the active language pair and AutoSuggest is enabled in options, suggestions appear automatically while you translate. To create one, use the AutoSuggest dictionary generation tool and point it at a translation memory. If suggestions are not appearing, the usual causes are that the dictionary is not added to the active language pair, that AutoSuggest is turned off in options, that the dictionary’s languages do not match the project, or simply that it was built from too small a memory to contain useful phrases.
There is no meaningful conversion out of a .bpm. Because it is a stripped-down phrase index derived from a translation memory, you cannot reconstruct a full .tmx or .sdltm from it — the memory is the source, and the dictionary is the product. If you need a TMX, export it from the original translation memory in Trados, not from the AutoSuggest dictionary.
Other meanings of the .bpm extension
The extension is ambiguous, which is worth flagging because a .bpm from outside a translation workflow is probably not a Trados file at all. A now-defunct hobby tool called Battle Planner wrote .bpm modules for managing tabletop and card-game collections and army lists; this was the meaning some file databases originally recorded for the extension. Separately, some business-process modelling tools save process diagrams as .bpm, and a few legacy graphics and music utilities used the extension for raw bitmap data or beat-per-minute tempo information. The reliable way to tell which one you have is to identify the program that created the file rather than guessing from the extension.
References
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.