Check your subtitles
Cue by cue: how fast they run, how many lines they have, how long they stay, and above all whether they overlap or have their timings the wrong way round, which is the error that makes a platform reject the file. The thresholds are yours.
The thresholds (change them: they are conventions, not laws)
How the characters per second are counted
The number that matters, when you subtitle, is reading speed: how many characters the viewer has to read in each second the cue stays on screen. You divide the number of characters by the duration, and that is all there is to it. The part nobody ever declares, and the part that makes the number impossible to check, is which characters get counted.
Here the rule is written down and can be changed. Spaces count, because a space is time the eye spends too, but there is a tick box to leave them out, since the convention really does change from one client to the next. The line break counts as the space between the two words it separates, not as an extra character: the same cue written on one line or on two takes the same time to read, so it has to give the same number. And formatting tags, italics and the positioning commands in curly brackets are stripped before counting, because they never show on screen.
Where 17, 42 and one-to-seven seconds come from
They are trade conventions, not laws. Seventeen characters per second is the limit that goes round the guidelines of the streaming platforms for Latin languages; forty-two characters per line and two lines at most come from the same school; one and seven seconds are the shortest duration for the eye to catch the cue at all and the longest for it not to sit there while the picture has already moved on.
But the real numbers are set by whoever commissions the work: the British public broadcaster's guidelines think in words per minute rather than characters per second, European channels often allow thirty-seven characters per line, and some clients go down to fifteen characters per second for children's programmes. That is why the thresholds up above are fields to fill in and not printed numbers: if your client gave you other limits, type those and the check is redone to measure.
Overlaps and timings the wrong way round
The other thresholds say whether the file reads well; these two say whether the file is valid, and that is an important difference. A cue starting before the one before it has finished, or one that finishes before it even begins, are the error that gets an upload rejected with no explanation, or that makes the player show two lines on top of each other and then skip one. They are also the errors you cannot see by eye while scrolling the file: forty thousandths of a second of overlap go unnoticed by everybody.
That is why they are marked differently from the others here, and why the order of the cues is checked as well: two cues written in the file in an order that is not the order of time are legal for the format but break half the programs that read them. The minimum gap between one cue and the next is a milder thing, a convention for the comfort of the eye, and indeed it sits among the thresholds you change.
What it fixes, and what it never touches
Only what can be fixed without touching the words, and the list is a short one: the end of a cue running into the next one is pulled back, a cue that is too short or too fast is stretched into the gap ahead of it (never further, never creating a new overlap), the ones past the maximum duration are shortened, cues out of sequence are put back in order and long lines are broken in a different place. The text stays identical character by character: only the place where the line breaks changes. The one overlap that can survive is the one between two cues starting at the very same instant: separating them would mean moving one of them, that is, changing the sync, and that is not fixing, that is inventing.
Whatever is still too fast after being stretched as far as it will go does not get fixed, and that is not a shortcoming: to bring the characters per second down you have to write fewer words, that is, rewrite the cue, and rewriting is the translator's job, not a program's. Chinese, Japanese and Korean stay out of the judgement too: there reading speed is not measured in Latin characters per second and the per-line limits are different, so those cues are shown and counted but not judged.
There are, finally, two things this page deliberately does not do, because another page on the site already does them. If the subtitles are not wrong but merely out of sync, that is, they all arrive a little before or a little after the audio, what you need is Sync subtitles. And if all you want from the file is the speech, with no numbers and no timings, the road is Subtitles to plain text.