Położenie Karwia jest położona na wschodnim krańcu Wybrzeża Słowińskiego, między Kanałem Karwinką od zachodu a strugą Czarna Woda od wschodu. Wieś graniczy: od wschodu z sołectwem Ostrowo, z południa z miejscowością Karwieńskie Błoto Pierwsze, z zachodniej strony z miejscowością Karwieńskie Błoto Drugie i od północy z Bałtykiem. Do najbliższego miasta Władysławowa jest stąd 16 km, do Pucka 25 km, Helu 51 km, Sopotu 61 km, Łeby 63 km.

Około 7 km od zabudowań znajduje się najdalej na północ wysunięty punkt Polski (przed II wojną światową Karwia była najdalej wysuniętą wsią na północ Polski, nie licząc regionów dzisiejszej Litwy). Przez miejscowość przebiega droga wojewódzka nr 215 łącząca Władysławowo i Sulicice.

Według danych urzędu miejskiego powierzchnia sołectwa wynosi 245,6 ha.