Město Bílovec leží v severní části okresu Nový Jičín, v místě, kde se výběžky Nízkého Jeseníku svažují do údolí řeky Odry. Rozprostírá se na obou březích říčky Bílovky.