Snowflakes begin life as a tiny droplet of supercooled water that eventually freeze and form ice crystals in the sky. If the conditions are right they'll grow in size as water molecules in the air are deposited onto the ice crystal. Eventually, gravity takes charge and they fall to the ground as a snowflake.
But have you ever looked at a snowflake that falls on your coat or car and noticed its fluffy delicate structure?
A snowflake is built up molecule by molecule. Each time a growing snowflake moves past water droplets, several molecules of water are added to it. Due to the structure of water - one oxygen atom and two hydrogen atoms - ice crystals join to one another in a hexagonal structure, like the image above. It's these hexagonal structures which when repeated successively give a snowflake it six-sided shape.
There are many different types of snowflake but their shape is largely determined by humidity (how much moisture is in the atmosphere) and temperature.
In short, the higher the humidity, the more complex the structure, whereas drier air produces simpler designs.
So if they all grow in the same way, why do they all look different?
The six arms of a snowflake grow independently and therefore this forms part of the reason why a snowflake is never absolutely symmetrical. Not only this, as snowflakes grow and fall through the atmosphere they travel through constant changes in temperature and humidity (as they fall through clouds). These changes impact the way water molecules become attached to the snowflake and therefore make each one look slightly different.
Therefore it's believed that there are trillions upon trillions of different snowflake shapes, making every snowflake unique.