Name Matching Icon

Name Matching

Fuzzy name matching addresses the challenges of identifying name variants within and across languages. The winner of the MITRE Multicultural Name Matching Challenge, NetOwl offers highly accurate, fast, and scalable name matching using an advanced machine learning-based approach.

Illustration of person at the intersection of two pieces of data
Network diagram with purple nodes connected by black lines and curves.

Revolutionary Machine Learning-based Approach

Traditional name matching approaches, such as Soundex, edit distance, and rule-based methods, suffer from both precision (false positives) and recall (false negative) problems in addressing the variety of fuzzy name matching challenges discussed above.

NetOwl applies an empirically driven, machine learning-based probabilistic approach to name matching challenges. It derives intelligent, probabilistic name matching rules automatically from large-scale, real-world, multi-ethnicity name variant data.

NetOwl utilizes different matching models optimized for each of the entity types (e.g., person, organization, place) In addition, NetOwl performs automatic name ethnicity detection to apply the most appropriate models to names based on their name ethnicity values in order to achieve state-of-the-art accuracy.

Key Product Features

Accurate

Achieves state-of-the-art name matching accuracy as evidenced by winning the MITRE Multicultural Name Matching Challenge.

A purple user profile icon with a circular border and a location pin symbol below it.

Many Entity Types for Matching

Supports fuzzy name matching for multiple entity types: person, place, organization, address, vessel, vehicle, ID, etc.

Globe icon

Multilingual & Cross-lingual

Handles fuzzy name matching in and across many languages and scripts.

Computer settings icon

Customizable

Allows parameter tuning as well as addition of custom rules and dictionaries to tailor results to your matching specifications.

Scalable icon

Fast & Scalable

Performs fuzzy name matching against tens of millions or more names with sub-second response times.  Highly scalable name matching software with Docker and Kubernetes support.

Computer API icon

Easy Integration

Easy-to-integrate fuzzy name matching product with a REST API.

illustration of person jumping over hurdle

Multi-ethnicity Name Matching Challenges

NetOwl supports a wide variety of fuzzy name matching challenges including:

  • Multiple transliteration variants of foreign names (Abdel Fattah el-Sisi – Abdul Fatah al-Sisi)
  • Nicknames (William – Bill – Billy, Mikhail – Misha)
  • Initials (John Fitzgerald Kennedy – J. F. Kennedy)
  • Misspellings (Barack Obama – Barak Obama)
  • Orthographic variations (Joaquín Guzmán – Joaquin Guzman)
  • Tokenization variations (Moon Jae-in – Moon Jae In – Moon Jaein)
  • Transliteration standard differences (Xi Jinping – Hsi Chin-p’ing)
  • Optional name tokens (Joaquín Archivaldo Guzmán Loera – Joaquín Guzmán)
  • Name order variations (Park Sol Mi – Sol Mi Park)
  • Ethnicity-specific variations (Abd al-Aziz – Abdul Aziz)
  • Acronyms (Bank of America – BofA)
  • Alternate names (Mumbai – Bombay)
  • Names in different languages (Xi Jinping – 习近平 – Си Цзиньпин – شي جين بينغ )

Multilingual and Cross-lingual Matching

NetOwl supports multiple languages and also handles matching of a name in one language against names in other languages. NetOwl currently supports the following languages, and additional languages are on the way.

  • Languages written in Latin-based alphabets
  • Arabic
  • Chinese (traditional and simplified)
  • Languages written in Cyrillic-based alphabets
  • Greek
  • Hebrew
  • Japanese (kanji, hiragana, katakana)
  • Korean (Hangul)
  • Persian (Farsi and Dari)
Illustration representing name translation
Illustration of computer screen with alert symbol on it

Name Matching Applications

The NetOwl name matching tool is used for many mission-critical applications in a variety of domains where failure to match may result in not only lawsuits, fines, or financial theft, but also, in the worst case, human casualties. Example of applications include:

For applications that require matching names plus additional record fields such as date of birth, address, etc., NetOwl EntityMatcher is used instead.

Light blue diagonal stripe spanning the full width of the canvas.

Name Search Use Case

The most common use case of NetOwl Name Matcher is to provide a fast and accurate search for specific names, including names of people, organizations, places, and addresses, against a set of known name records of interest, such as watchlists, sanction lists, customer databases, and so on. Some of our customers have large data sets to search against, which can be in the tens or even hundreds of millions of records.

Whether the use case is trying to search against a set of “good guy” names like customers or “bad guy” names like those on sanctions lists, NetOwl builds a proprietary index of the name records for efficient and intelligent search. Through its search API, NetOwl is able to match names that differ in any combination of the name variations outlined above. A matching score is calculated for each search result, and user-specified thresholds can be set to filter out results.For applications that require matching names plus additional record fields such as date of birth, address, etc., NetOwl EntityMatcher is used instead.

Illustration of name search icon inside hexagon
Illustration of name matching icon inside circle

Name Comparison Use Case

In addition to the more common search use case, another core use case for NetOwl NameMatcher  is to compare two names to determine instantly if they represent the same name.

Consider a payment transfer that sends money from one person to another.  Typically, the sender supplies the name of the individual they are sending the money to along with the payee’s bank information.  For payment verification purposes, the transfer agent needs to validate that the payee’s name on the account matches the name specified by the sender.

Surprisingly, the two names are often not an exact match for a variety of reasons as described in the name matching challenge section above. NetOwl offers a compare API to determine if the two names are good matches for each other with a matching score within a few milliseconds to validate or reject the transfer.

Light blue diagonal stripe spanning the full width and height of the canvas.

Name Matching Solutions

Different denominations of money from multiple countries

Remove tag on Small

AML, KYC, PEP

Financial firms must comply with regulations against financial crimes, but accurately matching names on sanction lists remains a major challenge.

Woman handing a passport to another person at border security checkpoint

Border Security

Inaccurate watch list matching has caused deadly border security lapses by allowing known bad actors to cross undetected.

A person typing on a laptop with a screen that is revealing an issue and a lock icon.

Fraud Detection

Fraud is rampant. The tactics are evolving. How do we detect ever increasing and morphing fraud incidents effectively?

Trusted by leading global organizations

LexisNexis Logo
Dun & Bradstreet logo
Delta Dental logo
RBC logo
Deluxe logo
Light gray diagonal shape spanning the full width of the canvas.

Featured Blog Posts

Name Matching

What is Name Matching?

There are many applications where failing to recognize name variations of an entity can have disastrous consequences. What is Name…

View Post

Cross-language name matching

What is Cross-Language Name Matching?

Name Matching is an even more complex problem when it involves multiple writing systems

View Post

How to Choose a Fuzzy Name Matching Product

How to Choose a Fuzzy Name Matching Product

Before selecting a name matching product, here are 9 questions you may want to consider.

View Post

The complexities of building your own name matching system

The Complexities of Building Your Own Name Matching System

Here are some pitfalls to consider if you are weighing whether to build your own Name Matching system

View Post

Frequently Asked Questions

  • What matching score threshold should I choose to find only good matches for my name queries?

    NetOwl NameMatcher assigns a matching score to each record it returns. The scores will range from 0.0 to 1.0 with only an exact match returning a perfect 1.0 score. The right threshold would depend on customer use cases, but in general, a threshold of somewhere around 0.80 is a good starting point. Typically, if you only want to see very strong matches (focusing on precision), you might consider specifying a threshold higher than 0.8. On the other hand, if you want to allow for names with larger variations to be returned (focusing on recall), you might consider a lower threshold.

  • Can NetOwl determine whether two names are strong matches for verification of payee (VOP) in real-time?

    Yes, NetOwl supports this use case. In addition to its more commonly used “search” API function, which allows NetOwl to match a name against lists of known names of interest, NetOwl also has a “compare” API function that will return a matching score for a pair of names in a few milliseconds. The “compare” API is perfect for a high-volume, real-time VOP process.

  • Does NetOwl handle the case where the queries and the records to match against are written in different scripts?

    Yes, NetOwl can handle cross-language name matching with high accuracy and speed. Currently NetOwl supports Latin alphabets as well as Arabic, Chinese (traditional and simplified), Cyrillic, Greek, Hebrew, Japanese (kana and kanji), Korean (Hangul), and Persian.