A dramatic late comeback from Cardiff meant a first loss in nine for injury-hit Norwich City in South Wales.

Borja Sainz scored an impressive goal to open the scoring for the Canaries, but Callum Robinson's 89th-minute strike combined with Callum O'Dowda's impressive finish to keep all three points in the capital.

Norwich dominated the ball early on, but it was Cardiff who created the first real chance with it. Ollie Tanner capitalised on Jose Cordoba's sloppy pass to centre for Chris Willock, but he couldn't find the target.

The visitors then responded with half-chances for Sainz and Ante Crnac, along with a promising goalmouth scramble, but none came especially close to breaking the deadlock.

Going into half time there was little splitting the sides, but it was Cardiff who took the initiative when the second period started. A series of attacks got the home crowd involved, although Johannes Hoff Thorup's men were able to weather the storm.

Shortly thereafter they were ahead, and there were no prizes for guessing where the opener came from. Another Sainz screamer sent the away end into raptures, changing the dynamic of a game that had been fairly cagey.

But Norwich responded better to scoring than they have previously this season, and they were back in control by the time Thorup turned to the bench. The back five that ensued solidified things centrally, with the best chances midway through the half falling to Sainz and Jack Stacey.

A barrage of set-pieces threatened to extend the Bluebirds' unbeaten run, however, and eventually one of the balls into the box proved decisive. Substitute Robinson saw his deflected effort squirm past George Long for 1-1, and things went from bad to worse four minutes later.

O'Dowda's finish won the day from the edge of the box, meaning a dejected trip home for those of a yellow and green persuasion.

CARDIFF CITY:

Substitutes:

1. Horvath (GK)

2. Fish

5. Daland (on for Rinomhota, 83)

15. Kanga

19. Meite

23. Bagan

45. Ashford (on for Willock, 76)

46. Reindorf

47. Robinson (on for El Ghazi, 62)

Manager: Omer Riza

Bookings: Rinomhota (45+1), Turnbull (54), O'Dowda (77)

Goals: Robinson (89), O'Dowda (90+3)

NORWICH CITY:

Substitutes:

37. Mair (GK)

3. Stacey (on for Fisher, 62)

5. Hanley (on for Sorensen, 75)

14. Chrisene (on for Forsyth, 62)

16. Fassnacht

18. Forson (on for Schwartau, 75)

21. Gordon (on for Crnac, 87)

42. Springett

47. Mahovo

Head Coach: Johannes Hoff Thorup

Bookings: Fisher (42), Cordoba (82)

Goals: Sainz (52)

KEY MOMENTS

13 - Cordoba's poor pass allows Cardiff to counter and it ends with Tanner finding Willock in the box, but he places wide of the near post.

22 - A set-piece routine finds Duffy's header, which is mistimed and flies well wide.

24 - Sainz turns well and drives 30 yards before firing straight at Alnwick from just outside the box.

37 - Crnac turns and shoots in a crowded penalty area, but his effort is deflected behind for a corner.

38 - The set-piece results in a goalmouth scramble that Cardiff are able to force clear.

Half time: Cardiff City 0-0 Norwich City

49 - Turnbull aims his free-kick at goal from a tight angle, but Long comfortably catches.

52 - GOAL NORWICH (Sainz): Sainz picks the ball up on the edge of the area and smashes into the top corner in typical fashion.

57 - Colwill unleashes a fierce strike from distance that Long beats away.

59 - A cross slips through Long's grasp and, fortunately for the goalkeeper, into the side-netting.

61 - Duffy meets Marcondes' corner with a thumping header, but it's straight at Alnwick.

63 - Sainz drives into the box and sees his low shot blocked.

67 - Crnac slips Sainz in and he's denied by Alnick's fine save, before Stacey's follow-up is stopped by Goutas' goal-line intervention.

84 - Crnac fires a low shot just wide from 20 yards.

89 - GOAL CARDIFF (Robinson): A scramble in the box ends with Robinson's deflected strike, which squirms past Long to equalise.

90+3 - O'Dowda fires into the top corner from 20 yards to complete the turnaround.

Full time: Cardiff City 2-1 Norwich City

PLAYER RATINGS

Long 6, Fisher 7, Duffy 7, Cordoba 7, Doyle 6, Sorensen 6, Forsyth 6, Marcondes 7, Schwartau 7, Sainz 8, Crnac 6. Subs: Stacey 6, Chrisene 6, Hanley 6, Forson 5, Gordon 5.

MATCH STATISTICS

Possession: 44pc-56pc

Shots: 10-14

On target: 5-4

Corners: 4-4

Fouls: 10-15

Added time: 2 mins/5 mins

Referee: Lewis Smith