Ostrawa położona jest w dolinie Bramy Morawskiej, około 360 km na wschód od stolicy kraju Pragi, 10 km na południe od granicy państwowej z Rzeczpospolitą Polską i 60 km na północny zachód od granicy z Republiką Słowacką. Brama Morawska jest przejściem między Jesionikami a Beskidami. Wysokość miasta waha się między 200-335 m n.p.m. Jego powierzchnia wynosi 21 422 ha, terytorium miasta mierzy 20, 1 km w kierunku wschód-zachód i 20, 5 km w kierunku północ-południe w linii prostej.