Double Metaphone Encoder

Primary and alternate phonetic codes for ambiguous pronunciations

Ad placeholder (leaderboard)

What this tool does

Double Metaphone, designed by Lawrence Philips in 2000, is the successor to Metaphone. For each word it returns two phonetic keys — a primary and an alternate — so that names whose pronunciation depends on their language of origin still match. This is the standard choice for serious fuzzy name matching, and it runs entirely in your browser here.

How it works

The algorithm walks the uppercased word, consuming one or more letters at each step and appending symbols to both a primary and a secondary buffer. Most steps append the same symbol to both buffers, but ambiguous letter groups branch:

"W" in a Slavic-looking name  -> F on the alternate, dropped on the primary
"CH" mid-word                 -> X primary, K alternate (Greek/Italian origin)
"GN" after an initial vowel   -> KN primary, N alternate
"SCH"                         -> context-sensitive X / SK
"TH"                          -> 0 (the "th" sound), with name-origin exceptions

It also tracks a “Slavo-Germanic” flag (triggered by W, K, CZ or WITZ) that changes how Z, J, S and W are treated. Both codes are truncated to four characters. When a word has no ambiguity, the two buffers end up identical.

Matching strategy and examples

Two words are considered a phonetic match if any of their codes coincide. “Smith” yields SM0 and XMT, “Schmidt” yields XMT and XMT — they match on XMT, which is the intended behaviour. “Catherine” gives K0RN and KTRN, capturing both the soft-th and hard-t readings. Use Double Metaphone as the blocking key in record linkage and deduplication pipelines, then apply a finer comparison (edit distance, field-by-field scoring) to the candidate pairs it surfaces. Nothing you enter leaves your browser.

Ad placeholder (rectangle)