These two fucking things are the worst. Chikorita is by far the worst Starter Pokemon ever, being weak to three Johto gyms and resisted by five* (both of which include the first two gyms.) Even Pikachu at least hits Misty super effectively. Charmander isn't far off, though, as it's also weak to the first two gyms in its respective region, but it at least has an advantage against one Kanto gym.
I think what makes Charmander worse, though, is how much people fucking love Charizard. See, Chikorita is a poor starter choice objectively and I dislike its design subjectively (especially of its final evolution), but I have yet to see someone who likes Chikorita argue that it's a good starter choice. However, people masturbate to and give blowjobs to Charizard so much that it's blinded them to the fact that Charmander is objectively a terrible starter in RGBYFRLG. Charizard fangasms are so prevalent that the subjective criteria of "OMIGAW BADASS AWESOME DRAGGIN THAT TURNS BLACK WHEN ITZ SHINEE" shields them from the objective criteria of early gym matchups. Look, if you like Charizard, fine, but at least acknowledge that Charmander is a terrible starter choice when looking at objective criteria.
Other terrible 'mons:
Pikachu - worse starter than Charmander, but on the plus side, Raichu has fairly consistently been a pretty good in-game 'mon (I used Raichu on my most recent Y run and it put in
work.) Pikachu's popularity has caused Raichu to become the biggest case of wasted potential in this entire franchise.
Flareon - I will go on with calling this thing Shitvee. We all know Shitvee is absolute trash competitively, but even on in-game runs, you don't want to use it because
literally every Eeveelution is better. Even Umbreon, with its highest offensive stat an incredible base 65 Attack, is a better choice because at least it royally fucks over the abundance of Psychic-types in-game (and has bulk to actually take hits) whereas with Shitvee, you're getting a mediocre Fire-type that's slow and not even particularly bulky. If you really want to use Shitvee on your next FRLG run, well, here's your steps:
Step 1. Go to Celadon City, grab Eevee
Step 2. Purchase Fire Stone
Step 3. Go to Route 7, catch Growlithe (FR) or Vulpix (LG)
Step 4. Use your Fire Stone on Growlithe (FR) or Vulpix (LG) instead
Step 5. Purchase Thunder Stone
Step 6. Use Thunder Stone on Eevee and just use Jolteon instead of Shitvee
*-note: I included Morty in the count for gyms that resist Chikorita, as all of Morty's Pokemon resist Grass.