La cabecera del cantón es la ciudad de Puerto Viejo y el cantón se encuentra dividido en cinco distritos: Puerto Viejo, La Virgen, Horquetas, Llanuras del Gaspar y Cureña.