TreeTagger - a part-of-speech tagger for many languages

The TreeTagger is a tool for annotating text with part-of-speech and lemma information. It was developed by Helmut Schmid in the TC project at the Institute for Computational Linguistics of the University of Stuttgart. The TreeTagger has been successfully used to tag German, English, French, Italian, Danish, Swedish, Norwegian, Dutch, Spanish, Bulgarian, Russian, Portuguese, Belarusian, Ukrainian, Galician, Greek, Chinese, Swahili, Slovak, Slovenian, Latin, Estonian, Polish, Persian, Romanian, Czech, Albanian, Coptic and old French texts and is adaptable to other languages if a lexicon and a manually tagged training corpus are available.

Sample output:

word  pos  lemma 
The  DT  the 
TreeTagger  NP  TreeTagger 
is  VBZ  be 
easy  JJ  easy 
to  TO  to 
use  VB  use 

The TreeTagger can also be used as a chunker for English, German, French, and Spanish.

The tagger is described in the following two papers:


Executable code for PC-Linux, Windows, Mac-OS, and ARM and parameter files for various languages can be downloaded via the links below.

This software is freely available for research, education and evaluation. For commercial and other licenses, please contact the developer via the email address at the bottom of the page.

Please read the license terms, before you download the software! By downloading the software, you agree to the terms stated there.

The following steps are necessary to install the TreeTagger (see below for the Windows version). Download the files by right-clicking on the link. Then select "save file as". All files should be stored in the same directory.

  1. Download the tagger package for your system (PC-Linux, Mac OS-X (Intel), Mac OS-X (M1), ARM64, ARMHF, ARM-Android, PPC64le-Linux).
    If you have problems with your Linux kernel version, download this older Linux version and rename it to tree-tagger-linux-3.2.5.tar.gz.
  2. Download the tagging scripts into the same directory.
  3. Download the installation script
  4. Download the parameter files for the languages you want to process.
  5. Open a terminal window and run the installation script in the directory where you have downloaded the files:
  6. sh
  7. Make a test, e.g.
  8. echo 'Hello world!' | cmd/tree-tagger-english
    echo 'Das ist ein Test.' | cmd/tagger-chunker-german
  9. You also might want to have a look at my new part-of-speech tagger RNNTagger.
Make sure that the installation path contains no blanks and that the files are not automatically unzipped i.e. that the file ending .gz is still present. If you have difficulties with the installation, have a look at the installation hints (kindly provided by Joachim Wagner).

Parameter files

Chunker parameter files for PC (Linux, Windows, and Mac-Intel) Windows version

Download the Windows TreeTagger package. Unpack the zip file and follow the instructions in the INSTALL.txt file. The parameter files have to be downloaded separately. The tagger has to be invoked from a (Windows, cygwin, msys) shell. Therefore, you might want to install the graphical interface kindly provided by Ciarán Ó Duibhín.


The Russian parameter file was created on a corpus provided by Serge Sharoff. He has a webpage with various resources for Russian NLP.

The French and the Italian parameter files are provided by Achim Stein.

The parameter file for the French chunker was created by Michel Généreux.

The second Italian parameter files was provided by Marco Baroni.

The English parameter file was trained on the PENN treebank and uses the English morphological database created by Karp, Schabes, Zaidel and Egedi.

The Spanish parameter file was trained on the Spanish CRATER corpus and uses the Spanish lexicon of the CALLHOME corpus of the LDC.

The Spanish chunker was trained on the IULA Spanish treebank.

The Galician parameter file was trained on the Xiada corpus provided by the Centro Ramón Piñeiro para a Investigación en Humanidades

The Bulgarian parameter file was created by Julien Nioche on the Bulgarian Treebank. It uses UTF-8 encoding and the BulTreeBank tagset.

Michel Généreux created the parameter file for the French chunker.

The Estonian parameter file was trained on the Tartu Morphologically disambiguated corpus. Thanks to Mark Fishel for pointing me to this data!

Many thanks to Marco Baroni, Pablo Gamallo, Julien Nioche, Serge Sharoff, Michel Généreux, and Achim Stein for making their parameter files publicly available! Also thanks to Holger Wunsch and Cassio Binkowski for compiling the TreeTagger on MacOS and to Florian Bemmann for compiling it for Android systems!


Please send questions, comments, suggestions and bug reports to Helmut Schmid at