Schalke maintained their strong run of form with a 1-0 victory in Mainz.
Early in the game, the livewire Farfan got behind left back Christian Fuchs, who conceded a penalty just inside the box. Klaas-Jan Huntelaar stepped up to take the spot kick, but his effort rebounded off the inside of the post and goalkeeper Christian Wetklo before bouncing out for a corner.
The first half was quite lively, but Schalke were the only team to apply real pressure and scored with their first real chance from free play. Ivan Rakitic played a glorious ball from deep towards Lukas Schmitz, and the Marauding fullback was free to tiptoe up the byline after Florian Heller missed his tackle. Schmitz then cut back for Jose Manuel Jurado, whose shot was blocked by Raul into the path of Farfan, who finally put in the opener.
Mainz were without an answer for the majority of the match, but looked bright after coach Thomas Tuchel made a triple substitution on the hour mark. Twelve minutes later, Holtby played a fine through ball to fellow substitute Adam Szalai, who won a penalty from goalkeeper Manuel Neuer. Andre Schuerrle's spot kick was poorly taken and Neuer parried before the Hungarian had his second effort deflected off the bar.
Over the final quarter hour, Mainz pressed for an equaliser, and looked very bright going forward. However, the hosts needed a bit more time, and were unable to level before the final whistle.
The result sees Schalke climb to tenth in the Bundesliga standings, with 19 points from 16 matches. Mainz slip to fourth, with 30 points.