En el año 2008 contaba con 12.992 habitantes. Su extensión superficial es de 264 km² y tiene una densidad de 49,42 hab/km². Sus coordenadas geográficas son 36º 15' N, 5º 58' O. Posee 8 km de costa, denominada como la
playa de
El Palmar de Vejer. Se encuentra a una altitud de 201 metros y a 54 kilómetros de la capital de provincia,
Cádiz. A Orillas del
río Barbate. Vejer estuvo poblada desde el Paleolítico y ya estaba fortificada en la Edad del Bronce. En época prerromana se denominó Besaro y se han hallado restos del siglo VII a. C. debajo de las
murallas actuales. Durante la etapa
romana pasa a denominarse Baesippo.