Ada dua bagian untuk jawaban atas pertanyaan ini. Pertama, mari kita lihat kenapa ada yang mengapung. Lalu, mari kita periksa mengapa es mengambang di atas air , bukannya tenggelam ke bawah. Zat akan mengambang jika strukturnya kurang padat, atau massa jensnya lebih rigan dari massa jenis pelarutnya. Misalnya, jika Anda melemparkan segenggam bebatuan ke dalam ember air, bebatuan, yang padat dan massa jenisnya lebih berat dibandingkan dengan air, maka batu itu dipastikan akan tenggelam. Air yang kurang padat dibanding bebatuan, akan mengapung. Pada dasarnya, bebatuan mendorong air keluar dari jalan untuk menggantinya. Agar benda bisa mengapung, ia harus menggeser berat cairan yang sama dengan beratnya sendiri. Air mencapai kepadatan maksimumnya pada suhu 4 C (40 F). Saat mendingin maka akan membeku menjadi es, itu justru menjadi kurang padat. Di sisi lain, kebanyakan zat paling padat dalam keadaan beku dari pada keadaan cairnya. Air berbeda karena ikatan hidrogennya. Molekul air dibuat dari satu atom oksigen dan dua atom hidrogen, saling bergabung satu sama lain dengan ikatan kovalen. Molekul air juga tertarik oleh ikatan kimia yang lemah (ikatan hidrogen) antara atom hidrogen bermuatan positif dan atom oksigen yang bermuatan negatif dari molekul air tetangga. Saat air mendingin di bawah 4 C, ikatan hidrogen menyesuaikan atom oksigen bermuatan negatif. Ini menghasilkan kisi kristal, yang biasa dikenal dengan 'es'. Es mengapung karena sekitar 9% kurang padat dibanding air cair. Dengan kata lain, es menghabiskan sekitar 9% lebih banyak ruang dari pada air, jadi satu liter es memiliki berat kurang dari satu liter air. Air yang lebih berat menggantikan es yang lebih ringan, jadi es mengapung ke atas.
Salah satu akibatya adalah danau dan sungai membeku dari atas ke bawah, memungkinkan ikan bertahan bahkan saat permukaan danau membeku. Jika es tenggelam, air akan dipindahkan ke atas dan terkena suhu yang lebih dingin, memaksa sungai dan danau untuk mengisi dengan es dan membeku padat.