Географическое положение и рельеф
Посёлок расположен на северо-востоке Тверской области, в 127 километрах к северо-востоку от Твери. В нескольких километрах к западу от посёлка начинаются склоны возвышенности Бежецкий Верх, а к востоку и северо-востоку — уклон в сторону Волги и Рыбинского водохранилища . Рельеф Сонково ровный (с некоторым уклоном в сторону поймы реки Каменки), высота местности над уровнем моря составляет примерно 170—180 метров. Почвы в основном представлены суглинками, уровень грунтовых вод высокий.
Ближайшие соседи — города Бежецка(в 28 километрах к западу), Красный Холм(в 31 километре к северу) и посёлок Кесова Гора(в 24 километрах к югу); несколько дальше (в 55 километрах к востоку) расположен посёлок Новый Некоуз, центр Некоузского района соседней Ярославской области. В окрестностях посёлка Сонково находится много сельских населённых пунктов, ближайшие из них — Сверчково (в 1 километре к северу), Мальцыно (в 2 километрах к северо-востоку), Блудки (в 1,5 километрах к югу), Савелиха (в 2 километрах к западу от центра посёлка).