Opatija si trova a 18 km (11 miglia) a sud-ovest della capitale regionale Rijeka, a circa 90 km (56 miglia) da Trieste in treno e 82 km (51 miglia) da Pula su strada.
La città è geograficamente sulla penisola istriana, anche se non nella regione istriana. La località turistica è situata sul Golfo del Quarnero, parte della costa adriatica,
in una posizione riparata ai piedi del massiccio dell'Učka, con il picco del Vojak che raggiunge un'altezza di 1.401 m (4.596 piedi).
A partire dal 2011, la città aveva 11.659 abitanti in totale, di cui 6.657 vivevano nell'insediamento urbano.
La città è una famosa località estiva e invernale, con temperature medie elevate di 10 ° C in inverno e 32 ° C in estate.
Opatija è circondata da splendidi boschi di alloro. L'intera costa del mare a nord e a sud di Opatija è rocciosa e pittoresca, e contiene diverse località invernali più piccole.