Definition: An algorithm to code surnames phonetically by reducing them to the first letter and up to three digits, where each digit is one of six consonant sounds. This reduces matching problems from different spellings.

Generalization (I am a kind of ...)
phonetic coding algorithm.

See also double metaphone, Jaro-Winkler, Caverphone, NYSIIS, Levenshtein distance.

Note: The algorithm was devised to code names recorded in US census records. The standard algorithm works best on European names. Variants have been devised for names from other cultures.

Author: PEB


(C). Apache codec implementations of soundex, Metaphone, and Double Metaphone (Java). (Visual Basic). (Cobol).

More information

Overview of Soundex.

Go to the Dictionary of Algorithms and Data Structures home page.

If you have suggestions, corrections, or comments, please get in touch with Paul Black.

Entry modified 25 February 2019.
HTML page formatted Wed Mar 13 12:42:46 2019.

Cite this as:
Paul E. Black, "soundex", in Dictionary of Algorithms and Data Structures [online], Paul E. Black, ed. 25 February 2019. (accessed TODAY) Available from: