Cape Town - The Stormers threw everything they had at the Chiefs, but in the end they fell just short as they were knocked out of Super Rugby 2017 at Newlands on Saturday night.
Both sides scored one try each in a match that was as tight as it gets, but the 17-11 final scoreline means that the Lions are now the only South African side left in the competition.
The Stormers have come a long way since last year's quarter-final when they were smashed 60-21 by the same opposition at the same venue, but for all their improvement they could still not get over the line when it mattered most.
Given the obvious skill in this Chiefs side and the attacking intent of the Stormers this season, many had expected the match to be helter-skelter from the start.
Instead, the opening 20 minutes felt a bit strange with the scores still locked at 0-0.
The Stormers were probing with ball in hand, swinging it wide and putting in some big, direct runs without really threatening the Chiefs line.
Defensively, they were sound, and when the Chiefs did find themselves on attack they were adequately dealt with.
Eventually, in the 23rd minute, the Stormers were awarded a penalty about 35m out and to the left of the uprights.
SP Marais stepped up and knocked it over as the Stormers took a 3-0 lead.
It didn't last long, and when the Chiefs destroyed JC Janse van Rensburg at a scrum, Damian McKenzie slotted a long-range penalty to make it 3-3.
Another McKenzie penalty made it 6-3 to the visitors, who then turned down another three points to set up an attacking lineout as the half drew to a close.
The Stormers defence was under massive pressure as they infringed again, and the Chiefs were adamant that they wanted a try.
By the time the Stormers had conceded a third penalty under pressure, referee Jaco Peyper gave Stormers captain Siya Kolisi a stern talking to.
This time, McKenzie took the points and the Chiefs were 9-3 up going into the break.
The Stormers needed to come out firing in the second half, and that is exactly what they did.
An expertly-placed Marais penalty set up a Stormers lineout 5m out and the hosts were given their first real opportunity to attack the Chiefs line.
They made it count, and after setting up a rolling maul they then went through a few phases before quick hands saw Kolisi finish off in the right corner as the Newlands crowd of 27 541 erupted.
Marais could not convert from the touchline, and the Chiefs led 9-8.
A fourth McKenzie penalty made it 12-8 and after that the Stormers endured another high-pressure period of defensive duty.
Their big break came on the hour mark when Dillyn Leyds was smashed by a double hit from Michael Leitch and Sam Cane.
TMO Johan Greeff was called into action, and after looking at the replays he decided that Cane should be sent to the bin.
It gave the Stormers exactly the momentum they needed going into the last quarter, and when Marais knocked over his second penalty on 63 minutes, the Chiefs led 12-11.
Marais had a golden opportunity to put the Stormers ahead on 71 minutes, but he missed a relatively routine penalty from out right following a dominant Stormers rolling maul.
When Chiefs replacement Shaun Stevenson scored his side's first try with just four minutes to go, the Stormers were dealt their killer blow.
McKenzie missed the conversion, making it 17-11 with a couple of minutes to go, but it was not meant to be for the Stormers.
The result means that the Chiefs now travel to Christchurch to take on the Crusaders in the semi-finals next weekend.
Follow Sport24 journalist @LloydBurnard on Twitter...
Try: Siya Kolisi
Penalties: SP Marais (2)
Try: Shaun Stevenson
Penalties: Damian McKenzie (4)
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, 3 Frans Malherbe, 2 Bongi Mbonambi, 1 JC Janse van Rensburg.
Substitutes: 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
15 Damian McKenzie, 14 Solomon Alaimalo, 13 Anton Lienert-Brown, 12 Stephen Donald, 11 James Lowe, 10 Aaron Cruden (co-captain), 9 Tawera Kerr-Barlow, 8 Michael Leitch, 7 Sam Cane (co-captain), 6 Liam Messam, 5 Mitchell Brown, 4 Brodie Retallick, 3 Nepo Laulala, 2 Nathan Harris, 1 Kane Hames
Substitutes: 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