The DHL Stormers fought hard but went down 17-11 against the Chiefs in a tense battle at DHL Newlands on Saturday.
The teams scored a try apiece in what was a tough encounter which could have gone either way. The Chiefs will now face the Crusaders in a Christchurch semifinal next week.
The first half was a brutal 40 minutes of rugby without a single try as both teams got stuck into each other and showed good discipline on defence.
After a scoreless opening 20 minutes with plenty it was the DHL Stormers who opened the scoring through a SP Marais penalty.
The Chiefs hit back with a penalty of their own from Damian McKenzie which levelled the scores.
McKenzie would find the target with two further kicks at goal as the DHL Stormers worked manfully on defence to keep the visitors tryless.
That saw the DHL Stormers go into the half-time break trailing 9-3, leaving it all to play for in the second half.
The opening try came early in the second half as the DHL Stormers showed good patience in the 22 before captain Siya Kolisi went over in the corner to the delight of the DHL Newlands Faithful.
The Chiefs responded with another penalty from McKenzie to take their lead out to 12-8 with 30 minutes left to play.
The visitors were struck a blow when their captain Sam Cane was shown a yellow card for a dangerous tackle on Dillyn Leyds.
The DHL Stormers took advantage with a penalty from SP Marais which cut the Chiefs lead to 12-11 with 15 minutes left to play.
The DHL Stormers had an opportunity to go in front with 10 minutes left, but Marais put his penalty attempt wide.
The Chiefs would be next to score as replacement wing Shaun Stevenson got over in the corner to make it 17-11 which sealed the win.
For DHL Stormers:
Pens: Marais 2
Pens: McKenzie 4
DHL Stormers: 15 SP Marais, 14 Cheslin Kolbe, 13 EW Viljoen, 12 Damian de Allende, 11 Dillyn Leyds, 10 Damian Willemse, 9 Dewaldt Duvenage, 8 Nizaam Carr, 7 Rynhardt Elstadt, 6 Siya Kolisi (captain), 5 Pieter-Steph du Toit, 4 Eben Etzebeth (vice-captain), 3 Frans Malherbe, 2 Bongi Mbonambi, 1 JC Janse van Rensburg.
Replacements: 16 Ramone Samuels, 17 Oli Kebble, 18 Wilco Louw, 19 Chris van Zyl, 20 Sikhumbuzo Notshe, 21 Justin Phillips, 22 Seabelo Senatla, 23 Juan de Jongh.
Chiefs: 15 Damian McKenzie, 14 Solomon Alaimalo, 13 Anton Lienert-Brown, 12 Stephen Donald, 11 James Lowe, 10 Aaron Cruden, 9 Tawera Kerr-Barlow, 8 Michael Leitch, 7 Sam Cane (captain), 6 Liam Messam, 5 Mitchell Brown, 4 Brodie Retallick, 3 Nepo Laulala, 2 Nathan Harris, 1 Kane Hames.
Replacements: 16 Liam Polwart, 17 Aidan Ross, 18 Atu Moli, 19 Dominic Bird, 20 Lachlan Boshier, 21 Finlay Christie, 22 Tim Nanai-Williams, 23 Shaun Stevenson.