Der Pilgerbach entspringt im Naturpark Habichtswald in den Langenbergen. Seine Quelle liegt am Osthang des 464,8 m hohen Bensbergs bzw. am Nordosthang des etwas mehr als 460 m hohen Bilsteins, etwa 1,5 km nordwestlich von Besse, einem Gemeindeteil von Edermünde. Sie befindet sich nahe dem östlichen Waldrand der Langenberge auf rund 320 m ü. NHN.
Nach Verlassen des Waldes fließt der Pilgerbach durch landwirtschaftlich genutztes Gebiet südostwärts nach Besse, wo er die westlichen und südlichen Ortsteile passiert oder durchfließt und den Naturpark verlässt. Danach mündet von Westen kommend der Saugraben ein. Überwiegend ostwärts verläuft der Bach dann durch Acker- und Wiesenlandschaft. Entlang der Landesstraße 3221 erreicht er südlich der Basaltkuppe Hahn (255,8 m) den Edermünder Ortsteil Holzhausen. Dort mündet am westlichen Ortsrand von Südwesten der Glisborn ein. Nach Unterqueren der Bundesautobahn 49, wo von Norden der Hertingshausener Bach zufließt, verläuft er durch die südlichen Dorfteile.
Anschließend erreicht der Pilgerbach, weiterhin entlang der L 3221 verlaufend, den Edermünder Ortsteil Grifte, den er teilweise kanalisiert und unterirdisch durchfließt. Nach Unterqueren der Main-Weser-Bahn mündet er am östlichen Ortsrand nördlich der über die Eder und südostwärts nach Guxhagen führenden L 3221 auf etwa 144 m Höhe in die Eder – rund 550 m vor deren Einfluss in die Fulda.
Einzugsgebiet und Zuflüsse
Das Einzugsgebiet des Pilgerbachs ist 25,593 km²[2] groß. Zu seinen Zuflüssen gehören mit orographischer Zuordnung (l = linksseitig, r = rechtsseitig), Gewässerlänge, Mündungsort, Einflussrichtung mit Pilgerbachkilometer und Einzugsgebietsgröße (bachabwärts betrachtet)[2]:
Saugraben (r; 3,2 km), unterhalb Besse; von Westen (nahe km 4,95), 5,124 km²
Glisborn (r; 3,0 km), in Holzhausen; von Südwesten (nahe km 3,55), 4,35 km²
Hertingshausener Bach (l; 4,5 km), in Holzhausen; von Norden (nahe km 3,35), 5,689 km²