Compare names with semantic precision
The Name Matcher compares two data sets, including the name, gender and age, and determines the degree of similarity or match between them.
The Name Matcher compares the data sets of two people and computes scores of similarity and differences on multiple levels, including names.
The software can be customized to meet specific needs and requirements, and incorporates features such as fuzzy matching, phonetic matching, synonym matching, and multilingual support to achieve higher levels of accuracy and efficiency.
Customized Matching Requirements
The Name Matcher computes a myriad of numbers to come to a result of telling whether two name pairs likely or possibly belong to the same person. Various functionalities and algorithms are used for this:
Fuzzy matching
Match two name sets that are similar but not identical (e.g. Robert Smith – Bob Smith).
Phonetic matching
Match names that sound the same but are spelled differently across cultures (e.g. Lee – Li).
Alias matching
Match names commonly used as nicknames or aliases (e.g. Nick – Nicholas or Dominic).
Synonym matching
Match names with the same meaning but different spelling (e.g. St. John – Saint John).
Multilingual support
Handle names from different languages and character sets, including non-Latin scripts.
Scalability
Handle large volumes of data and scale up as throughput requirements grow.
Simple string difference
Classical string-similarity algorithms (Levenshtein, Damerau–Levenshtein) as a baseline complement to the semantic logic.
Reasons two names can stand for the same person
Two sets of names standing for the same person can have different matching results for various reasons:
Incomplete names
One of the names is incomplete or the full name misses one part — e.g. Angela Merkel – Angela Dorothea Merkel.
Abbreviations, acronyms or initials
One of the parts is abbreviated — e.g. John F. Kennedy – John Fitzgerald Kennedy.
Hypocorisms
A nickname, diminutive or short form is used — e.g. John Doe – Johnny Doe.
Titles and qualifiers
A title or qualifier is added before or after the name — e.g. Robert John Downey – Robert Downey Jr.
Transcriptions
Transcriptions vary by target language and characters — e.g. Іван Багряний as Ivan Bahrianyi (EN), Iwan Bahrjanyj (DE), Ivan Bagriany (FR).
Misspellings and typos
One name contains a spelling mistake or data-entry error — e.g. Lev Tolstoy – Lev Toltsoy.
Collective and business names
A name can refer to one person, two people (William and Jessica Wright – Jess Wright), a family (Familie Hansen – Christian Hansen) or a business (Alexander Kolb – Kolb Architekten).
Cultural differences
Naming conventions vary across many languages, and a name can carry different gender across cultures.
Different versions of the same name
Names may have different versions or variations — e.g. John and Jon, or Katherine and Kathryn.
Different alphabets
The same name in Cyrillic vs Latin, or non-English extra characters missing.
Punctuation differences
Names may include different punctuation marks — hyphens, apostrophes or commas.
Order of names
Names may be listed in different orders — given name first vs. family name first.
Where the Name Matcher delivers
The Name Matcher has proven its practicality in a variety of scenarios and industries. The most common use cases:
Identity verification & input validation
Verify identities by comparing names against official records or databases, for credit checks, employment screening or KYC.
Prevent duplicates
Match customer names accurately and avoid duplicate records in CRM or master-data systems.
Banking and finance
Match account-holder names against user-entered input and authoritative sources.
Marketing and Sales
Match customer names with their purchasing history across channels.
Data integration
Match names across multiple data sources, enabling clean integration of disparate data sets.
Government and law enforcement
Match names across databases such as criminal records or watchlists to identify potential security threats.
Search relevance
Filter and sort a search list by relevance, so the strongest candidate appears first.
A simple, structured response
Send two people, get back a match type with a confidence score and per-dimension results you can act on.
{
"context": { "priority": "REALTIME", "properties": [] },
"inputPerson1": {
"type": "NaturalInputPerson",
"personName": { "nameFields": [
{ "string": "Robert", "fieldType": "GIVENNAME" },
{ "string": "Smith", "fieldType": "SURNAME" }
] }
},
"inputPerson2": {
"type": "NaturalInputPerson",
"personName": { "nameFields": [
{ "string": "Bob", "fieldType": "GIVENNAME" },
{ "string": "Smith", "fieldType": "SURNAME" }
] }
}
}{
"matchType": "MATCHING",
"personMatchComposition": "FULL",
"points": 0.85,
"confidence": 0.92,
"personNameMatcherResult": {
"matchType": "MATCHING"
},
"genderMatcherResult": {
"matchType": "EQUAL",
"confidence": 1.0,
"warnings": []
},
"ageMatcherResult": {
"matchType": "NOT_APPLICABLE"
}
}We're happy to support you in getting ready.
Schedule a 30-min call with us.