Pernes lies halfway between Saint-Pol-sur-Ternoise and Lillers, on the junction of the D70 and D916 roads.
The town can be accessed by SNCF TER (Regional Express Train) services to Pernes-Camblain station, with connections to Calais, Boulogne-Sur-Mer, and Lille.