A landlocked town, Castillejos is a 4th class municipality located on the southern part of Zambales Province.
It is bounded on the north by San Marcelino, on the southeast by the town of Subic, and on the west by San Antonio town.
It has a total land area of 93 square kilometers and is politically subdivided into 14 barangays.