The Stormers' winning streak came to an abrupt end as they went down 16-29 to the Lions at Newlands on Saturday.
The Newlands faithful was hoping for a similar performance to last week's win over the Chiefs, however, the Lions had other plans up their sleeves.
The Johannesburg-based made a blistering start and scored four tries to one to earn a bonus point as they won at Newlands stadium for the first time in the competition.
Stormers' loss after six victories leaves Crusaders of New Zealand as the only team boasting a 100 percent record after they whipped the Sunwolves of Japan 50-3 for a seventh straight win.
Billed as the major attraction of round eight, the Cape Town game lived up to expectations with the outcome in doubt until eight minutes from time when substitute wing Sylvian Mahuza scored.
Flyhalf Elton Jantjies converted the try to close the scoring and the Lions comfortably contained late attempts by the Stormers to narrow the gap and claim a losing bonus point.
The Lions triumphed thanks to clinical first-half finishing that produced tries for hooker Malcolm Marx, centre Harold Vorster and flank Jaco Kriel and magnificent early second-half defending.
Stormers camped inside the Lions' 22 for the first 15 minutes after half time and it seemed inevitable that they would score, only to be repeatedly thwarted by heroic defending.
It was not until the 70th minute that the first points of the second half arrived - a long-range penalty from fullback SP Marais that cut the Lions lead to six points.
But two minutes later the visiting side worked the ball wide in midfield to Mahuza, who sped down the touchline to score the try that sealed success and the bonus point.
"Winning a Super Rugby match in Cape Town for the first time is special," said Lions skipper and No.8 Warren Whiteley.
"It was a hell of a game and I am so proud of my boys.
"I thought the turning point was the opening 15 minutes of the second half when the Stormers threw everything at us. The way we defended was magnificent.
"A lot of us have sore bodies, but it was worth it. I want to give special praise to our tight five. Their roles were crucial and they set the tone from the start,"
Stormers skipper and flank Siya Kolisi said: "It is obviously very disappointing to lose for the first time this season, especially in front of our supporters, but the Lions wanted it more.
"We conceded too many penalties and were starved of possession at times. No matter what we tried, things just did not work out for us tonight."
Marx opened the scoring with his sixth try of the season before Stormers wing Dillyn Leyds scored a chip-and-chase try that flyhalf Robert du Preez converted.
A brilliant angled run by Vorster brought him a try which Jantjies converted for a 12-7 lead that was trimmed to two points when Du Preez slotted a penalty.
Du Preez and Jantjies exchanged penalties before Kriel, just back from the sin-bin, scored another try for the Lions and Jantjies converted for a 22-13 half-time advantage.
The Stormers tried to produce a comeback and were rewarded with an early penalty in the second half, but the late try by Mahuza delivered sealed the Lions' victory.
Man of the Match: Lions Jaco Kriel's work rate was amazing and despite his yellow card, the flank had a great performance. Our man of the match has go to Lions hooker Karl Marx, who put the Stormers' scrum under pressure. His brute force and strength got his team on the front foot.
Con: Du Preez
Pens: Du Preez 2, Marais
Tries: Marx, Voster, Kriel, Mahuza
Cons: Jantjies 3
Yellow Card: Jaco Kriel (Lions, 25- accidental contact to the head)
Stormers: 15 Sarel Marais, 14 Cheslin Kolbe, 13 EW Viljoen, 12 Daniel du Plessis, 11 Dillyn Leyds, 10 Robert du Preez, 9 Jano Vermaak, 8 Sikhumbuzo Notshe, 7 Siyamthanda Kolisi (captain), 6 Nizaam Carr, 5 Pieter-Steph du Toit, 4 Eben Etzebeth, 3 Frans Malherbe, 2 Mbongeni Mbonambi, 1 Jacobus Janse van Rensburg.
Replacements: 16 Ramone Samuels, 17 Oliver Kebble, 18 Wilco Louw, 19 Jan de Klerk, 20 Johan du Toit, 21 Godlen Masimla, 22 Kurt Coleman, 23 Dan Kriel.
Lions: 15 Andries Coetzee, 14 Madosh Tambwe, 13 Lionel Mapoe, 12 Rohan Janse van Rensburg, 11 Courtnall Skosan, 10 Elton Jantjies, 9 Ross Cronje, 8 Warren Whiteley (captain), 7 Ruan Ackermann, 6 Jaco Kriel, 5 Franco Mostert, 4 Andries Ferreira, 3 Ruan Dreyer, 2 Malcolm Marx, 1 Jacques van Rooyen.
Replacements: 16 Robbie Coetzee, 17 Corne Fourie, 18 Johannes Jonker, 19 Lourens Erasmus, 20 Albertus Smith, 21 Francois de Klerk, 22 Harold Vorster, 23 Sylvian Mahuza.
Referee: Jaco Peyper (South Africa)
Assistant referees: AJ Jacobs (South Africa), Cwengile Jadezweni (South Africa)
TMO: Shaun Veldsman (South Africa)
For more rugby news, visit Rugby365.com