The South Wales derby finished with a goal apiece, as City levelled to record a point.
Callum Robinson’s second half equaliser saw the Bluebirds fight back to earn a draw.
Head coach Erol Bulut included new signing Jesper Daland in the starting XI, along with midfielder Alex Robertson, who made his first league start for City.
After a competitive start, the hosts took the lead in the 11th minute through Liam Cullen, who struck home from close-range. City looked to respond before the break, going close through Wilfried Kanga. Having been found by Chris Willock, the striker cut inside and fired just over the woodwork.
Another attack led to an opportunity from a set-piece, as Robertson delivered towards Daland, who headed the ball down to Kanga, but the attacker couldn’t quite make clean contact with the ball.
Just before the break, Yakou Méïté did well to keep the ball in on the right, allowing Aaron Ramsey with space to deliver, but the City playmaker couldn’t pick out Kanga in the box.
The Bluebirds were improved in the second half and had spells of applying pressure on the hosts. Substitute Rubin Colwill went close to making an immediate impact, finding space to deliver a dangerous cross into the area, which couldn’t quite be turned home.
City found an equaliser in the 79th minute, with two substitutes combining. Ollie Tanner crossed low into the area for Robinson, who clinically struck into the bottom corner.
FINAL SCORE: SWANSEA CITY 1–1 CARDIFF CITY
Swansea City: Vigouroux, Key (Naughton 77’), Cabango, Darlung, Tymon, Grimes ©, Franco (Fulton 66’), Cooper (Vipotnik 66’), Eom (Abdulai 58’), Ronald, Cullen (Allen 77’). Subs not used: Broome, Pedersen, Abbey, Bianchini.
Cardiff City: Horvath, Ng, Chambers, Daland, O’Dowda, Siopis, Robertson (R Colwill 59’), Ramsey ©, Willock (El Ghazi 70’), Méïté (Tanner 69’), Kanga (Robinson 73’). Subs not used: Alnwick, Goutas, Bagan, Rinomhota, Ashford.