Goodness of Pronunciation (GOP)
Also known as: GOP score
Goodness of Pronunciation (GOP) is an algorithm that scores how well a speaker produced a specific expected phoneme, by comparing how likely an acoustic model thinks that phoneme is over the relevant stretch of audio against how likely the model thinks every other phoneme is. A high GOP score means the model heard the expected sound clearly and heard nothing else competing with it; a low score means the audio was a poor match for the sound that was supposed to be there.
How GOP works
GOP starts from a target: the word the speaker was asked to say, converted into a sequence of expected phonemes using a pronunciation dictionary. Forced alignment then determines which slice of audio corresponds to each expected phoneme.
For each of those slices, an acoustic model produces a probability for every phoneme it knows about. GOP compares the probability assigned to the phoneme that was supposed to be there against the probability of the best competing alternative. In its classic formulation this is a log-probability ratio — the log likelihood of the target phoneme minus the maximum log likelihood across the full phoneme set.
The intuition is simple. If a child says the /k/ in "cup" cleanly, the model is confident about /k/ over that span and unconfident about everything else, so the ratio is close to zero and the score is high. If the child produces /t/ instead, the model is confident about /t/ and unconfident about /k/, the ratio is strongly negative, and the score drops.
That raw ratio is not a number anyone wants to see, so it is mapped onto a friendlier scale — usually 0 to 100 — through a calibration curve fitted so that the resulting numbers line up with how human listeners rate the same productions.
Why GOP is the backbone of pronunciation scoring
GOP has been the dominant approach to computer-aided pronunciation training since it was introduced in the late 1990s, and essentially every commercial phoneme-scoring API is a GOP variant or a descendant of one.
Its great advantage is that it needs no examples of wrong productions. It only needs an acoustic model trained on ordinary speech plus the knowledge of what the speaker was meant to say. That makes it deployable for any word in the dictionary, including words no one has ever collected error data for.
The known limitations
GOP inherits the acoustic model's blind spots. If the model was trained mostly on adult speech, it will be less certain about child speech across the board — and GOP will read that uncertainty as poor pronunciation. This is the single largest source of false flags in children's applications and the reason ArticScore is fine-tuned on child audio.
GOP cannot see anything outside its phoneme set. A distorted production that is not cleanly any other phoneme — a lateral lisp, a partially rhotacised /r/ — has no competing symbol to lose against, so it can score as correct. Our own published evaluation states this plainly, and it applies to every closed-phone-set scorer.
GOP scores saturate. A large share of correctly produced phones cluster at the very top of the scale, which compresses the useful signal into a narrow band and makes ranking harder than thresholding. Score-map design matters as much as the model here: in our own work, changing the mapping from raw ratio to 0–100 moved phone-level correlation with human judges from 0.33 to 0.43 without touching the model at all.