Speech Rate: Praat script that detects syllable nuclei

PRAAT is software for the analysis of speech (www.praat.org). Below you will find a script that automatically detects syllable nuclei in order to measure speech rate without the need of a transcription. Peaks in intensity (dB) that are preceded and followed by dips in intensity are considered as potential syllable nuclei. The script subsequently discards peaks that are not voiced. On this page you find an example of how the script works.

Here you find the original praat-script written by Nivja de Jong and Ton Wempe to detect syllable nuclei. You can copy and paste the script into a PRAAT script editor. Note that the current script runs under PRAAT in Windows only. Under tutorial, you can find a step-by-step explanation of how to use the script. If you use the script, please acknowledge this by citing the 2009 paper in Behavior Research Methods.

Here you find a new version (updated september 2010), that uses a slightly different method to calculate the threshold (in line with the "To TextGrid (silences)" function that exists in PRAAT. Additionally, this version also uses pausing information. With the correct thresholds, this means the script will not only count syllables, but count and measure silent pauses as well. Along with the pausing information, this script will automatically calculate measures such as speech rate (number of syllables / total time) as well as articulation rate (number of syllables / speaking time). It is no longer necessary to use the tutorial to calculate these measures, as this information is printed in an info-screen.

This script was written for the purpose of measuring speech rate in a large-scale study carried out at the University of Amsterdam: "What is Speaking Proficiency".

In Behavior Research Methods, an explanation of how the script works and a validation can be found:

De Jong, N.H. & Wempe, T. (2009). Praat script to detect syllable nuclei and measure speech rate automatically. Behavior research methods, 41 (2), 385 - 390. (see pdf below)


Note that the new and slightly better version of this script (v3) can be found here: https://sites.google.com/view/uhm-o-meter. This version includes an option to count filled pauses (uhm's). The algorithm and validation can be found here:

De Jong, N.H., Pacilly, J., & Heeren, W. (2021). PRAAT scripts to measure speed fluency and breakdown fluency in speech automatically, Assessment in Education: Principles, Policy & Practice, 28:4, 456-476, DOI: 10.1080/0969594X.2021.1951162