This guide will walk you through all the methods to evolve Eevee in Pokémon HeartGold and SoulSilver. Before starting, make sure you have the Diamond, Pearl, or Platinum version, and a 2DS, DSi, or 3DS console. You should also be in Celadon City, located in the Kanto region.
Steps
Obtain 7 Eevees

Talk to Bill to get one Eevee. When you speak to Bill in Ecruteak City, he will return to his home in Goldenrod City, and you will need to find him there again. He will offer you an Eevee that he is unable to care for. You can only obtain one Eevee this way.

Head to the Game Corner in Celadon City. The mysterious man next to the Game Corner (the area for games) will tell you that Eevee is one of the prizes available.

Buy six Eevees. If you don’t have enough coins to purchase all 6 Eevees, you will need to earn some more first. This might take a little time.
- You can also leave Eevee at the Pokémon Day Care on Route 34 with Ditto and wait for them to breed. A fast way to do this is to ride your bike back and forth from the Day Care to the city. It may get boring, so consider watching TV or listening to music. The man at the Day Care will call you when new eggs are ready, and they will eventually hatch.
Evolve Eevee into Flareon

Find a Fire Stone. You can receive a Fire Stone as a prize in the Bug-Catching Contest, get one from Bill’s grandfather, or trade with a friend. You can also purchase one at the Pokeathlon Dome on Sundays.

Save your game progress before using the Fire Stone. This is a very important step in case you don't like Flareon after evolving Eevee.

Use the Fire Stone on Eevee.
Evolve Eevee into Vaporeon

Find a Water Stone. You can obtain a Water Stone from Bill's grandfather or by trading with a friend. You can also purchase a Water Stone at the Pokeathlon Dome on Wednesdays.

Save your game progress before using the Water Stone. This is an important step in case you decide you don't like Vaporeon after evolving Eevee.

Use the Water Stone on Eevee.
Evolve Eevee into Jolteon

Find a Thunder Stone. You can receive a Thunder Stone as a prize in the Bug-Catching Contest, get one from Bill's grandfather, obtain one from a trainer on Route 38, or trade with a friend. You can also purchase a Thunder Stone at the Pokeathlon Dome on Wednesdays, Thursdays, or Saturdays.

Save your game progress before using the Thunder Stone. This is a crucial step in case you decide you don't want Jolteon after evolving Eevee.

Use the Thunder Stone on Eevee.
Evolve Eevee into Espeon

Increase friendship level with Eevee. Once the friendship meter is maxed out during the day, Eevee will evolve into Espeon.
- You can do this by battling with Eevee in your team (without fainting it), keeping Eevee in your team, feeding it berries and protein, grooming it, and taking it to the National Park.
- You can check Eevee's happiness by speaking to a woman in Goldenrod City. She is located north of the Bike Shop and east of the town. If she says, 'It looks really happy! It must love you a lot,' then Eevee is ready to level up and evolve.
- Only interact with Eevee between 4:00 AM and 8:00 PM, as outside of this time, Eevee will evolve into Umbreon.

Level up Eevee between 4:00 AM and 8:00 PM. After Eevee reaches high friendship, you should battle with it until it levels up at least once.
- After leveling up during the day (from 4:00 AM to 8:00 PM), Eevee will evolve into Espeon.
Evolve Eevee into Umbreon

Increase friendship level with Eevee. Once the friendship meter is maxed out during the night, Eevee will evolve into Umbreon.
- You can do this by battling with Eevee in your team (without fainting it), keeping Eevee in your team, feeding it berries and protein, grooming it, and taking it to the National Park.
- You can check Eevee's happiness by speaking to a woman in Goldenrod City. She is located north of the Bike Shop and east of the town. If she says, 'It looks really happy! It must love you a lot,' then Eevee is ready to level up and evolve.
- Only interact with Eevee between 8:00 PM and 4:00 AM, as outside of this time, Eevee will evolve into Espeon.

Level up Eevee between 8:00 PM and 4:00 AM. After Eevee reaches high friendship, you should battle with it until it levels up at least once.
- After leveling up during the night (from 8:00 PM to 4:00 AM), Eevee will evolve into Umbreon.
Evolve Eevee into Leafeon

Transfer Eevee into the Diamond, Pearl, or Platinum version.

Go to Eterna Forest in the Diamond, Pearl, or Platinum version. Somewhere in the forest, you will find a moss-covered rock. Make sure Eevee is released before proceeding.

Level up near the moss-covered rock. Once Eevee is ready for battle, walk around the rock near the grassy area until you encounter a Pokémon ready to fight.
- After Eevee levels up, it will evolve into Leafeon.

Transfer Leafeon back to the HeartGold/SoulSilver version.
Evolve Eevee into Glaceon

Transfer the final Eevee into Diamond, Pearl, or Platinum versions.

Head to the snowstorm on Route 217 in Diamond, Pearl, or Platinum versions. This location is right next to Snowpoint City.

Look for the frozen rock.

Level up Eevee near the rock. Once Eevee is released and ready for battle, walk around the rock in the grassy area until you encounter a wild Pokémon. After Eevee levels up, it will evolve into Glaceon.

Transfer Glaceon back to the HeartGold/SoulSilver versions.
Tips
- Level Eevee to 30 to make it easier to train.
- If you have a Pokémon with the "Magma Armor" or "Flame Body" ability in your team, eggs will hatch faster.