With Xabi Alonso forced to watch from the stands due to a yellow card suspension, Leverkusen turned on the style, winning with goals from Granit Xhaka, Patrik Schick, Jeremie Frimpong and penalties from Exequiel Palacios and Victor Boniface.
Alonso left midfield lynchpin Florian Wirtz, who turned 21 on Friday, out of the squad with Thursday's second Champions League semi-final against Roma in mind, but Leverkusen had no problems in attack.
Xhaka opened the scoring with a long-range effort, before Frankfurt equalised through Hugo Ekitike, who scored for the third game in succession. Schick headed Leverkusen back in front just before half-time and World Cup winner Palacios scored a third from the penalty spot on the 58-minute mark.
The floodgates opened in the final stages, with Frimpong scoring just five minutes after coming on and then won a penalty with three minutes remaining. Boniface converted the spot kick for Leverkusen's first win in Frankfurt for six years.
Leverkusen, who are unbeaten in 48 across all competitions, need to avoid defeat in two remaining league matches to become the first team to go unbeaten through a Bundesliga season.
Alonso's side have a 2-0 advantage ahead of Thursday's second Europa League semi-final leg at home and are through to the final of the German Cup, keeping their dreams of an incredible unbeaten treble alive.
Earlier on Sunday, Bochum won 4-3 at Union Berlin, pushing the hosts closer to the drop just months after they were playing in the Champions League. In the top division since 2019, Union Berlin finished fourth last season and were playing Champions League football against Real Madrid as recently as December.
Having built their success on home form, a lethargic Union were 3-0 down by
Read on besoccer.com