Cẩm Phả nằm cách thủ đô Hà Nội khoảng 200 km về phía đông bắc, cách trung tâm thành phố Hạ Long 30 km, có toạ độ địa lý từ 20o58'10 - 21o12' vĩ độ bắc, 107o10' - 107o23'50 kinh độ đông. Phía đông của thành phố giáp với huyện Vân Đồn, phía tây giáp huyện Hoành Bồ và thành phố Hạ Long, phía nam giáp thành phố Hạ Long và huyện Vân Đồn, và phía bắc giáp huyện Ba Chẽ và huyện Tiên Yên.