Котловина озера, как и у большинства крупных водоемов Карелии, имеет ледниково-тектоническое происхождение. В местах, где находится водоем, земная кора приняла характерные формы рельефа. Во время таяния ледников образовалось Литориновое море, которое со временем стало Онегой. Процесс трансформации из шельфового моря в озеро занял миллионы лет. Крупные впадины заполнялись водой, превращаясь в озера разного размера.
Что касается происхождения названия, то единого варианта ответа на вопрос, почему озеро названо Онежским, нет. По одной версии, его название происходит от финского ääni («звук, «голосок»), по другой — от саамских слов agne и jegge («песок» и «низменная равнина»), а по третьей версии — от прибалтийско-финского änine/äniz («большой» или «величественный»). Точно ясно одно: название озера никак не связано с рекой Онегой, которая впадает в Белое море.
Прибрежная зона озера сильно меняется в зависимости от местоположения. На севере это изрезанные скалистые берега со множеством бухт и заливов. Южные и восточные берега, напротив, низкие и ровные — здесь преобладает песок с примесью глины. Как правило, эти участки заболочены и затапливаются при повышении уровня воды.