I do not like this kind of games.
They start with very slow typing, go to comfortable speed, then there can be a level of not so comfortable speed, and then it quickly become impossible.
I think it would be more beneficial to equip game with the following "leveling" logic:
- find user's "comfortable" speed (i.e. max speed where accuracy does not drop rapidly)
- find user's "non-comfortable" speed (i.e. the speed that would be attainable if user's accuracy was 100%)
Start at user comfortable speed, and SLOWLY crank requirements to non comfortable speed, if it is attained, crank it up a little more, but do it even SLOWER.
This should keep user on his/her toes, reaching for higher and higher speed. Speed determination mechanism should be self correcting, adapting exercise speed to user (rolling) average speed. Of course outliers should be removed from consideration.