Question: Why do stars twinkle?
Answer: Stars twinkle because of atmospheric turbulence. This twinkling is also known as scintillation.
The atmosphere contains pockets of air that are slightly warmer or cooler than the surrounding air. Light bends, or refracts, as it passes through these pockets. As the air pockets move around, the bending changes.
Stars are a long way away, so they appear like points of light in the sky. The light that reaches Earth from these stars is almost perfectly parallel and only a single beam reaches our eye. If an air pocket moves in front of this beam, the light is bent away from our eye and we briefly lose sight of the star. When the pocket moves, we regain sight of the star. This is why stars appear to twinkle.
Planets are closer than stars and appear as small discs. The light that reaches our eye is not perfectly parallel. Instead it is a thin cone of light. When an air pocket bends this cone of light, some light is bent away from our eye, but another beam of light can be bent towards our eye and so we do not lose sight of the planet. This is why planets do not twinkle as much as stars.
Whether an object produces its own light or reflects sunlight makes no difference to whether it twinkles. If a planet around another star was able to be seen in the sky, it would twinkle as well.
Twinkling is affected by how much air the light passes through, so scintillation is strongest near the horizon, where the light passes through the most air before reaching our eyes. Even planets will twinkle strongly when they are seen near the horizon. In fact the twinkling of stars near the horizon can be so strong that the colour of the star appears to change!