고양시는 경기도의 서쪽 중북부에 위치하며, 동서로 27 km, 남북으로 18km에 해당하는 크기이다. 남쪽으로는 서울특별시와 접하고, 북쪽으로는 파주시, 동쪽으로 양주시, 남서쪽으로는 한강을 끼고 김포시와 접하고 있다. 지리적 위치를 살펴보면 동쪽 끝은 동경 126° 56.5‘의 덕양구 효자동, 서쪽 끝은 동경 126° 45.5’의 일산서구 구산동, 남쪽 끝은 북위 37° 34‘의 덕양구 현천동, 북쪽 끝은 북위 37° 41.5’의 덕양구 벽제동으로 반대편 남양주시와 비슷한 위치에 있다.[6]
특히 경기도를 남북으로 나눈다면 한강 이북으로 행정상으로는 경기북부에 속하나 경기도 전체적으로 서쪽 중북부에 위치하여 있고 일반적인 경기북부와는 조금 다르다.[내용 7] 따라서 경기 '서부'로 보는 것이 더 정확하다. 특히 일부를 제외한 시청과 기타 주요 핵심지들은 위도상 서울특별시 최북단에 위치한 도봉구보다 남쪽에 위치하며 시의 최남단인 덕은동 일대는 한강 이남인 강서구, 강동구 일부와 같으며 서울 한강 이북 최남단 자치구와도 위도상 비슷하다. 따라서 행정상으로는 한강 이북으로 경기북부에 속하나 실제로는 서울특별시 강북 지역과 거의 같다. 이는 반대편 동부권인 남양주시도 마찬가지이다. 특히 최근에는 도로교통망의 발달로 한강 이남의 김포시, 부천시, 인천광역시와도 왕래가 잦다.
동부에는 북한산이 솟아 있고 대부분이 구릉과 산악지대로 이루어져 있다. 창릉천 등의 하천이 흐르며 한강과 접해 있다. 서부는 대부분 평야지대여서 농사를 짓기 유리하다.
2014년 4월을 기준으로 전체 면적은 268.05 km2로 경기도의 2.6%에 해당한다. 이중 덕양구는 165.55 km2 , 일산동구는 59.94 km2, 일산서구는 42.56 km2이다. 모든 지역이 과밀억제구역에 속할 뿐만 아니라, 군사보호구역이 45.8%, 개발제한구역이 44.8%, 농림지역이 12.3%에 이르는 등 도시의 성장속도를 억제하는 각종 규제를 받고 있다.[6] 이에 더해 고양시는 고양군 시절부터 지역마다 따로따로 성장해 서울이나 여타 광역시와 달리 "제1도심"이라고 할만한 곳이 없는데, 이러한 구심점 없는 성장은 고양시의 체계적인 발전에는 부정적 요소로 평가되고 있다.
고양시에는 3개의 일반구가 있다. 일산동구와 일산서구는 일산신도시 지역이며 덕양구에는 구 도심이었던 원당동과 주교동 외에 행신, 화정지구가 있다. 3구, 44행정동, 886통, 5,565반으로 구성되어 있다. 행정동은 덕양구가 21동, 일산동구가 12동, 일산서구가 11동이다. 국회의원 선거구는 4개(고양갑, 고양을, 고양병, 고양정)로 나뉘어 있다.
고양시의 인구는 1990년대일산신도시의 개발이후 급격하게 증가했다. 0~4세 인구는 20.47%,65세 이상 인구는 8.43%이다. 생산연령층인 15~64세인구는 71.4%로 전국평균 72.8%보다 비율이 낮고 유소년 인구 부양비는 23.5%로 전국평균인 22.8%보다 높으며 노년인구 부양비는 8.8%로 전국 평균인 14.5%보다 낮다. 여자 인구 100명당 남자 인구를 나타내는 성비는 97.8로 여자가 다소 많다.[7] 덕양구의 삼송지구 등의 개발에 힘입어 인구가 꾸준히 유입되어 2014년8월1일 인구 100만을 돌파하였으며 2013년 말부터 인구가 월평균 천단위로 증가하고 있다.
중장거리 대중교통은 고속버스와 시외버스를 동시에 운영하고 있는 고양종합터미널이 있다. 과거 일산선화정역 인근에 있는 화정터미널만 있었으나 시설이 노후하고 협소하여 일산동구 백석동에 고양종합버스터미널을 2012년 6월 개장하였다. 고양종합터미널은 당초 2011년 여름에 개장 할 예정이었으나[13]저축은행 비리 사건과 연루되어 개장이 연기되었다.[14] 고양종합터미널이 개장하면서 화정터미널은 운영 노선수가 대폭 줄었다.
↑기존의 시 상징물을 대체하기 위해 2021년부터 새로운 시 상징물을 개발하기 시작하여 최종 채택을 거쳐 2022년 4월 조례까지 개정해 시행했지만, 고양시에서 로고타입만 사용하고 심벌마크와 시기의 사용은 재검토하기로 결정함에 따라 현재 시청에도 시기가 게양되지 않는 등 조례상으로만 존재하고 실제로는 사용되지 않고 있다.
↑고양시는 경기도 서북부에 위치하고 있으며 명목상으로는 경기북부지만 사실상 경기북부로 보기에 무리가 있다는 의견이 있다. 특히 일제강점기 때 그리고 조선시대에 서울 한강 이북 지역(도봉구,노원구,중랑구 제외)과 성저십리 일대가 모두 고양군의 영역으로서 서울 한강 이북 지역과 한 식구로 볼 수 있기 때문이다. 특히 현재의 서울 마포구,용산구,성동구,광진구 일대도 한때는 고양군의 영역으로서 그 중 마포구와 용산구(과거 용강면)는 한 식구나 마찬가지이기 때문이다. 특히 과거로 거슬러올라가 보면 한강 이남의 서울 여의도까지 경기도 고양군 용강면에 속해있었던 시절이 있어 역사적으로는 지금의 고양시와 한 뿌리로 볼 수 있기 때문에 경기북부가 아니라는 의견이 있다.특히 고양 토박이들과 경기북부 본 토박이들 간에는 말투와 성격, 문화 등에서 상당히 다르며 고양 토박이들은 경기북부 본 토박이보다는 오히려 서울(한양) 토박이와 매우 비슷하다고 보면 된다.