Sibusiso Masina’s solitary goal in the first leg gave City a slight advantage going into the second leg.
Costa do sol grabbed a very early lead this weekend through a rebounded penalty effort by Tisdell after two minutes.
In the 15th minute, City leveled matters after some good work by Thabo Nodada, who set up Zukile Kewuti for the equaliser.
Nodada squandered a one-on-one chance after slipping at a critical moment just before the half-time break.
In the 59th minute, City made their first substitute as Ralani was withdrawn for Akosah-Bempah.
McCarthy also threw in Roland Putsche and Judas Moseamedi in quick succession, with the aggregate score was 2-1 in favor of the home side.
In the 82nd minute, Costa do sol dramatically took the lead through Renha, who leaped highest to head a corner home to level the aggregate score at 2-2.
Even five minutes of stoppage time was not enough for the Capetonians, though, as they crashed out on the away goals rule.
City: Walters, Kobola, Fielies, Gumede, Edmilson, Mngonyama, Kewuti, Nodada, Lakay, Masina, Nana.
Subs: Stephens, Mkhize, Roberts, Ralani, Patosi, Putsche, Moseamedi.