Middleton terletak di sepanjang perbatasan Essex County, dan dibatasi oleh North Reading di Middlesex County di barat, dan North Andover di barat laut, Boxford di timur laut, Topsfield di timur, Danvers di tenggara, Peabody di selatan, dan berbagi perbatasan 0,3 mil dengan Lynnfield di barat daya.