What is fuzzy matching?
Fuzzy matching is an algorithmic technique used in sanctions screening to identify approximate matches between names, accounting for spelling variations, transliterations, typographical errors, and aliases. Unlike exact matching, which requires character-for-character identity, fuzzy matching evaluates the degree of similarity between two strings and returns a confidence score.
Core algorithms
Most fuzzy matching combines three established techniques.
String similarity
Levenshtein distance calculates the minimum number of single-character edits required to transform one name into another. Jaro-Winkler gives additional weight to matching prefixes, reflecting the observation that name beginnings tend to be more stable than endings.
Phonetic encoding
Soundex encodes names by their English phonetic sound. Double Metaphone handles a broader range of linguistic origins. These algorithms catch names that sound alike but are spelled differently.
Token-based approaches
Names are broken into tokens (individual words) and compared independently, handling name-order transpositions - critical for matching across cultural naming conventions where family and given name order may vary.
Why fuzzy matching matters for compliance
Research in Language Resources and Evaluation shows that a single Arabic name can produce over 30 valid transliteration variants. Without fuzzy matching, any of these variants would evade an exact-match screening system - creating a compliance gap that regulators consider unacceptable.
For a detailed analysis, see our article on how fuzzy name matching works.
Related terms
- Sanctions List - the lists against which names are matched
- SDN List - OFAC's primary sanctions list
- CDD - the process that includes sanctions screening