Skip to content

Word error rate (WER) calculator, with Arabic normalisation

Paste what was really said and the transcript you want to score. The tool counts the substitutions, deletions and insertions between them and gives the word error rate and the character error rate. For English and Arabic it normalises the text exactly as our own benchmark does.

Loading the tool…

Processed in your browser. Your file is never uploaded.

How the score is computed

Both texts are split into words after normalisation. The tool then finds the cheapest way to turn the transcript into the reference, where a substitution, a deletion (a reference word missing from the transcript) and an insertion (an extra word) each cost one. The word error rate is that total divided by the number of reference words. The character error rate does the same over characters, counting the spaces between words, which makes it kinder to languages and spellings where one wrong letter would otherwise make a whole word wrong.

Reference:   the cat sat on the mat
Transcript:  the cat sit on mat

the  cat  sat->sit  on  the (deleted)  mat
1 substitution + 1 deletion = 2 edits over 6 words = 33.3%

When several alignments cost the same, the tool prefers a match or substitution, then a deletion, then an insertion. The total number of edits never depends on that choice; only the split between substitutions, deletions and insertions can.

The normalisation options

  • English lowercases, turns hyphens into spaces and keeps only letters a to z, digits and the apostrophe. Anything else, including accented letters, becomes a space.
  • Arabic drops diacritics and the tatweel, unifies the alef, yeh and teh marbuta forms and removes punctuation. Digits and letters of any script are kept.
  • Other languages lowercases and removes punctuation and symbols in any script. This option is a convenience and is not part of our benchmark.
  • None splits on spaces only, so case and punctuation count as errors.

The English and Arabic options are ports of the normalise() function in the script that produced the numbers on our measurements page, and our tests run the two against each other on about a thousand strings and require identical results. The Arabic function is explained, with its Python code, in normalizing Arabic text for WER.

What WER does not tell you

It treats every word equally, so a missed “not” costs the same as a missed “the”. It says nothing about punctuation, speaker labels or timestamps after normalisation. It is only as good as the reference: a reference typed by hand from a noisy recording has errors of its own. And a score on one clean clip does not predict the score on your phone call. For the plain-language version, read what word error rate is.

Subtitle files

If either box holds an SRT or VTT file, its cue numbers and timing lines are ignored and only the words are scored. To see the plain text yourself first, use SRT to text or remove timestamps.

Questions

What is word error rate?

The number of word substitutions, deletions and insertions needed to turn the transcript into the reference, divided by the number of words in the reference. A WER of 10% means about one word in ten needed a fix. Lower is better, and the rate can go above 100% when the transcript has many extra words.

What does the Arabic normalisation do?

It removes diacritics (harakat) and the tatweel, turns the alef forms with hamza or madda into a bare alef, alef maqsura into yeh and teh marbuta into heh, and replaces punctuation with spaces. It is the same function our benchmark script uses, so a number from this page is comparable with the Arabic figure on our measurements page. It is one reasonable choice, not the only one: a different normalisation gives a different WER.

Why does normalisation change the score?

Without it, “Hello,” and “hello” count as an error, and so does an Arabic word written with and without diacritics. Researchers normalise before scoring so that the number reflects wrong words rather than spelling and punctuation conventions. Pick “None” to see the strict score.

Are my texts uploaded?

No. Both texts are compared by JavaScript running in this tab, and nothing you paste or choose is sent anywhere. The page only reports that the tool was used, with no text.

Want a transcript to score?

TryScriptorium transcribes an audio or video file you upload, with timestamps, and exports TXT, SRT, VTT, Markdown, JSON or CSV. You can try it free. Our own measured error rates, with the method, are on the measurements page.

More pages like this