There are some Pokémon that have regularly been a strong choice in-game (Abra and Gyarados in every non-BW title bar colo and XD IIRC) or been usable in quite a few times (Mareep is obtained very early in GSHGSS Colo and XD Ralts is a strong tier in RSEDPP and XD).
But what about Pokémon that have viable stats and movepool but have never (or almost never, such as obscure cases where only the third game or Colo/XD) been viable for in-game use due to other things outclassing them or late arrival? For example, Spoink is outclassed by TWO psychic families with much earlier join dates and level up moves, plus joins just before the 4th gym with no advantage over it). Also valid is if a species WAS obtainable, but only became viable latter (By gaining new evolutions, useful new moves like Electrike's new fire type stuff, or being boosted by the special physical alterations of gen 4)
I want to list such species.
For the record, viable join time indicates around the 3rd gym without deliberate sequence breaking (Yes, it is possible to reach the Safari Zone with only 2 badges, 0/1 with glitch abuse, but the stuff there doesn't count), with XD and Colo being harder to judge. Post-Credits/national dex only stuff very much counts.
Obviously legendary pokes, are powerful and arriving late game (The legendary beasts being the only exception if you are lucky or playing Colo), but are generally useful enough to overcome that, plus aren't really in the spirit of this question. Pesudo-lengends are also invalid for this list.
Outclassed/Joins too late
Exeggcute (Kanto Safari Zone unless your Blue, who can find one between the S.S. Anne and Pokémon Tower.)
Weavile (Just before the 7th and 8th gym, can't evolve outside of DPP)
Misdreavus (Easily the most triumphant example of joining stupidly late with nothing to show for it, final dungeon ho!)
Not viable at time
Misdreavus (in colo)