En stemmer är ett program eller en algoritm som avgör den morfologiska roten till ett ord, som kan vara en böjningsform eller avledning.

Det stemmern utför kallas trunkering. Därför kan en stemmer även kallas trunkerare eller trunkeringsalgoritm.

Engelska stemmeralgoritmer är tämligen enkla (med några undantag, såsom ordet "dries" som är tredje person singularis ordform av verbet "dry" och "axes" som är pluralformen av "ax" precis som "axis") men stemmeralgoritmer blir svårare att skapa när morfologin, ortografin och teckenkodningen av språket ifråga blir mer komplext. Exempelvis är en italiensk stemmer mer komplex än en engelsk (beroende på fler möjliga verbböjningar), en rysk stemmer är också mer komplex (beroende på fler kasusböjningar av substantiv), en hebreisk stemmer är ännu mer komplex (beroende på ett vildvuxet skriftspråk) och så vidare.

En vanlig tillämpning av en stemmer är i frågebaserade system, eftersom en användare som söker på ordet "krokodiler" också vill ha dokument som innehåller ordet "krokodil" (utan suffixet er).

Ett mer komplext förhållningssätt till problemet att avgöra den morfologiska roten till ett ord är lemmatisering.

Den första publicerade stemmern någonsin skrevs av Julie Beth Lovins, "Development of a stemming algorithm", Mechanical Translation and Computational Linguistics, 11: 22–31 (1968). Denna artikel var anmärkningsvärd för sin tidiga publicering och hade stort inflytande på senare arbeten med att skapa stemmeralgoritmer.

En senare stemmer skrevs av Martin Porter och publicerades i Program, Vol 14 no. 3 pp 130–137, July 1980. Denna stemmer blev vida använd och de-factostandard för engelska. Porter erhöll the Tony Kent Strix Award år 2000 för sitt arbete om trunkering och informationssökning.