The Cheetahs put the Sharks chances of a home Super Rugby Semi-final in doubt when they beat the Durban franchise 27-20 in Bloemfontein.
The result moved the Cheetahs off the bottom of the Super Rugby standings into fourth place after outscoring the Sharks by two tries to one in the contest.
The Sharks lost their match before the break to the Stormers 19-21 so they have now suffered back to back losses.
The former tournament leading Sharks had hoped to win their last two matches as it would have secured one of the top two places but that now seems unlikely.
The Sharks have already qualified for the play offs and cannot finish lower than third as they have won the South African Conference.
Next week the Sharks must travel to Cape Town to face a resurgent Stormers team who ended the Bulls chances of reaching the play offs by beating them 16-0 earlier in in the round.
The Sharks took a losing bonus point from the match but they remain in third place behind the Crusaders on points difference.
The result could mean that the Sharks have to play an extra play off qualifier and they will have to play their best team next weekend against the Stormers.
The Sharks started at a ferocious pace, putting the Cheetahs under heavy pressure from the start, but it was the hosts that got the first points on the scoreboard.
Springbok flyhalf Johan Goosen kicked a penalty as early as the second minute to give his side the early lead.
That gave the Cheetahs valuable momentum which they used to pin the Sharks down in their own half.
It resulted in the first try of the evening for the hosts, when the Cheetahs put together a driving maul, allowing flanker Torsten van Jaarsveld to dive over for the first try. Goosen converted to give the Cheetahs a ten point lead.
The Sharks regrouped and launched numerous attacks that forced the Cheetahs to infringe.
Sharks flyhalf Tim Sweil kicked his first penalty of the evening in the 19th minute after missing an earlier attempt.
Soon thereafter the Cheetahs were left to ponder their defensive structures after Sharks scrumhalf Cobus Reinach broke away from a lineout and beat a number of Cheetahs defenders to score his seventh try of the season.
Sweil converted to draw the scores level at 10-10.
Sweil was again called to kick a further penalty to give the Sharks the lead for the first time in the game.
The Cheetahs kept attacking, however, and soon eighthman Philip van der Walt dotted down in the 33rd minute to regain the lead for the hosts.
Goosen kicked the conversion, leaving the Sharks four points behind at half-time.
The hard-fought contest at the break down area continued in the second half, with both the Cheetahs and Sharks conceding penalties as the result of heavy pressure.
The hosts made the better of the possession and Springbok lock Lood de Jager crashed over for a try, which Goosen converted to stretch the lead to 11 points.
The Sharks tried their best to make up the deficit, but the Cheetahs kept building momentum which resulted in more points as Goosen kicked his second penalty of the evening to leave the Sharks trailing by two converted tries.
The Sharks lost momentum as a result of poor handling errors or penalties, but finally scored their second try of the evening after replacement hooker Bismarck du Plessis burst over and Sweil converted.
The Sharks looked to have scored in the corner after the hooter but the TMO replays showed that Tonderai Chavhanga put his hand into touch so the try was not awarded.
Final Score Cheetahs 27 (17) Sharks 20 (13)
Tries - T.van Jaarsveld, P. van der Walt, L.de Jager
Pen - J.Goosen 2
Con - J.Goosen 3
Cards -J.Goosen (80th min yellow)
Tries - C. Reinach, B.du Plessis.
Pen - T.Swiel 2
Con - T.Swiel 2
Referee: Rohan Hoffmann
Assistant Ref 1: Stuart Berry
Assistant Ref 2: Francois de Bruin
TMO:Deon van Blommestein
1. Trevor Nyakane, 2. Adriaan Strauss (c), 3. Coenie Oosthuizen, 4. Lodewyk de Jager, 5. Francois Uys, 6. Torsten van Jaarsveld, 7. Teboho Mohoje, 8. Philip van der Walt, 9.Sarel Pretorius, 10. Johan Goosen, 11.Raymond Rhule, 12.Ryno Benjamin, 13. Johann Sadie, 14.Cornal Hendricks, 15. Willie le Roux (vc)
Replacements:16. Caylib Oosthuizen, 17. Luan de Bruin, 18. Carl Wegner, 19. Jean Cook, 20. Henco Venter, 21. Shaun Venter, 22. Elgar Watts, 23. Hennie Daniller
15. SP Marais , 14. JP Pietersen , 13. S'bura Sithole , 12. Frans Steyn , 11. Lwazi Mvovo , 10. Tim Swiel , 9. Cobus Reinach , 8. Ryan Kankowski , 7. Jean Deysel (c) , 6. Maroetzee , 5. Anton Bresler , 4. Stephan Lewies , 3. Lourens Adriaanse , 2. Kyle Cooper , 1. Dale Chadwick
Replacements : 16. Thomas du Toit , 17. Bismarck du Plessis , 18. Jannie du Plessis , 19. Willem Alberts , 20. Tera Mtembu , 21. Charl McLeod , 22. Odwa Ndungane , 23. Tonderai Chavhanga