Pikachu has a very minor role in Pokémon Red and Blue (Red and Green in Japan), yet became the mascot for Pokémon. Why did that Pokémon become the mascot and not one somebody else, like the starter Pokémon or Clefairy (the main Pokémon in the comics)?
Pikachu appealed to both boys and girls
In an interview with TIME Tokyo interview, Satoshi Tajiri, creator of Pokémon, talked about how Pikachu appealed to boys and girls.
TIME: Pikachu is sort of marginal in the game. But it's now the best-known character. How'd that happen?
Tajiri: When they did the anime, they wanted a specific character to focus on. Pikachu was relatively popular compared with the others and potentially both boys and girls would like it. They heard a lot of opinions about this. It wasn't my idea.
It was a cool Pokémon that was rare in the games, which added to its specialness
Developer Junichi Masuda pointed out in an MTV News interview that the fact that Pikachu was a cool Pokémon that was rare made it seem special.
One of the planners saw Pikachu and was like, 'This is a really cute Pokemon. Maybe it's not a good idea to have it be a really common Pokemon in the game.' It was a Pokemon he just wanted to catch, just for himself. [The fact that Pikachu] is a rare Pokemon that doesn't show up very often in the wild was another reason [he was popular]. When people actually encountered it, it was a really big impact. It was like, 'Wow, this is a cool Pokemon.' At the same time, in the animation, Ash had Pikachu as his Pokemon, so those two things combined helped the popularity of Pikachu rise."
Clefairy was originally going to be chosen as the mascot, but Pikachu was more appealing to young girls and their mothers
From the 2004 book Pikachu's Global Adventure: The Rise and Fall of Pokémon by Joseph Tobin:
Pippi (in English, Clefairy) was selected as the main Pokémon character to make the comic series more "engaging." However, in order to attract younger and female viewers as well as their mothers, Pikachu replaced Pippi as the central character when the Pokémon TV series was introduced in 1997. The pink Pippi was replaced by the yellow, cuddlier Pikachu, whom the producers believed would seem like a more familiar and intimate pet to child viewers.
Pikachu is more recognizable at a distance and uniquely colored
Again from Pikachu's Global Adventure: The Rise and Fall of Pokémon.
There were other reasons as well for the producers' choice of yellow. Because yellow is one of the three basic colors, it is easy for children to recognize Pikachu even from a distance. Furthermore, the only competing yellow character is Winnie the Pooh.
And of course, once the anime surged in popularity, Pikachu was prominently featured as Ash's companion, which gave it the traction it needed to continue as the Pokémon mascot.