Robert Lewandowski scored his 21st Bundesliga goal of the season as Bayern Munich thrashed Schalke to move a point behind league leaders RB Leipzig.
Lewandowski opened the scoring after visiting goalkeeper Markus Schubert fumbled Thomas Muller’s cross.
Muller and Lewandowski both had goals disallowed before the German doubled Bayern’s lead late in the first half.
Second-half strikes from Leon Goretzka, Thiago Alcantara and Serge Gnabry completed the scoring.
Lewandowski is the first player to net 21 goals in the opening 19 games of a Bundesliga season since Gerd Muller in 1972-73.
The Poland international capitalised on Schubert’s early error to give Bayern the lead, slotting into an empty net from close range.
Welsh forward Rabbi Matondo went close to an equaliser when his shot from the edge of the box was deflected on to the crossbar by Jerome Boateng, but Bayern continued to lay siege to the visitors’ goal.
Muller’s instinctive finish was ruled out for offside, before VAR disallowed Lewandowski’s powerful effort after full-back Benjamin Pavard had strayed into an offside position.
Germany striker Muller was not to be denied though, converting Goretzka’s knock-down on the stroke of half-time for his 100th Bayern goal in all competitions at Allianz Arena.
Ex-Schalke midfielder Goretzka rubbed salt into his former club’s wounds with a magnificent scissor-kick five minutes into the second half, before Lewandowski teed up Thiago for a simple finish eight minutes later.
Second-half substitute Gnabry capped a comprehensive victory in the final minute of normal time, beating Schubert from the edge of the area after cutting in from the left flank.
Earlier on Saturday, leaders RB Leipzig slipped to a surprise 2-0 defeat at Eintracht Frankfurt.
After dominating the first half, Julian Nagelsmann’s side fell behind through Almamy Toure’s first Bundesliga goal before Filip Kostic completed the scoring in second-half stoppage time.
RB Leipzig host Borussia Monchengladbach next Saturday before travelling to Bayern in their next away league match.
Monchengladbach are now just two points behind the league leaders after beating struggling Mainz 3-1 at home.
Robin Quaison gave Mainz a shock lead, but an Alassane Plea double and a further strike from Florian Neuhaus sealed a comfortable victory for the hosts.