Match ends, Swansea City 3, Birmingham City 0.
Swansea City's flying start to life under Steve Cooper continued as they thumped Birmingham City 3-0 at the Liberty Stadium.
Swansea are second in the Championship after making it 13 points from a possible 15 in 2019-20.
Kyle Naughton, Bersant Celina and Borja found the target inside 12 second-half minutes of a dominant display.
Birmingham had no answer to Cooper's men, who are enjoying the club's best start to a league campaign in 41 years.
Swansea have been formidable opponents on their own ground since losing to Aston Villa on 26 December 2018.
The only visiting team to win at the Liberty since then are Manchester City, and they needed a couple of contentious refereeing decisions to secure victory in the FA Cup in March.
Swansea had won their three home games prior to Birmingham's visit, despite falling behind in each of them.
Cooper had called for a faster start here and his team responded, controlling the first half and asking questions of Pep Clotet's rearguard even if they lacked quality in the final third.
Yan Dhanda came closest to opening the scoring but Kristian Pedersen headed his shot off the line.
The Swansea midfielder, making only the second EFL start of his career, also saw an effort blocked by Harlee Dean, while Andre Ayew volleyed over and had a header saved.
Birmingham's threat was minimal throughout, although Fran Villalba did drag one 20-yard effort wide.
Nevertheless, former Swansea assistant manager Clotet must have been fairly content with the game goalless at the break.
His mood might have changed early in the second period but for a sharp save from Lee Camp, who thrust out an arm to push Borja's goalbound header to safety.
Swansea kept probing, however, and the breakthrough they deserved eventually came just after the hour.
Borja wanted a penalty as he rose to meet Connor Roberts' cross. His appeals were waved away, but half-time substitute Naughton seized possession on the edge of the area and steered a shot inside Camp's near post.
The second goal followed swiftly, with Mike van der Hoorn claiming an assist after outmuscling Villalba in midfield.
The big central defender picked out Celina in space on the left and he finished emphatically, powering a shot beyond Camp.
Swansea were in total control, and they made it 3-0 when birthday boy Borja swept home from the penalty spot after Marc Roberts tripped Dhanda.
It is 14 home league games unbeaten now for Swansea - their best run since 1999-2000 - and they only trail leaders Leeds United on goal difference.
Birmingham, meanwhile, remain in mid-table after a third successive 3-0 defeat on the road.
Swansea head coach Steve Cooper told BBC Sport Wales:
"I think that's our best performance over 90 minutes.
"The focus on top of the gameplan was to start well and play at our level for 90 minutes and I felt we did that.
"I know we came in 0-0 at half-time, but I was happy with how we were playing. I just felt we needed to be more prepared to take risks at the top of the pitch and fortunately the players did that.
"We've got a good return in points and we're pleased, but what's more important is we know why we're getting points - with our style of play both on and off the ball and having the ability to dig deep and show resilience."
Birmingham City manager Pep Clotet told BBC WM 95.6:
"We had really good organisation in the first half and started well in the second half.
"But when the first goal goes in, that's where we need even more organisation to make sure a second doesn't go in.
"We should've been able to create more problems for the opposition's defence as we were stronger than we were against Barnsley on Tuesday.
"We maybe lacked a little pace today to cause problems, but you have to understand setbacks like this occur with a new squad that's still gelling.
"That type of organisation only comes by playing more and more games."
Line-ups
Swansea
Formation 4-2-3-1
- 27Woodman
- 23Roberts
- 5van der Hoorn
- 4Rodon
- 24BidwellSubstituted forNaughtonat 45'minutes
- 6Fulton
- 8Grimes
- 22A Ayew
- 10CelinaSubstituted forGarrickat 84'minutes
- 21DhandaBooked at 82minsSubstituted forByersat 84'minutes
- 9Bastón
Substitutes
- 1Nordfeldt
- 15Routledge
- 19Surridge
- 20Wilmot
- 26Naughton
- 28Byers
- 41Garrick
Birmingham
Formation 5-3-2
- 1Camp
- 2Harding
- 12Dean
- 4Roberts
- 3PedersenBooked at 60mins
- 42SeddonBooked at 73minsSubstituted forCrowleyat 76'minutes
- 26DavisBooked at 49minsSubstituted forBellinghamat 76'minutesBooked at 90mins
- 34SunjicBooked at 89mins
- 17Villalba Rodrigo
- 24GiménezSubstituted forGardnerat 57'minutes
- 10Jutkiewicz
Substitutes
- 7Crowley
- 8Gardner
- 13Stockdale
- 20Gardner
- 21Medina Delgado
- 22Bellingham
- 37Bailey
- Referee:
- Andy Woolmer
- Attendance:
- 17,277
Match Stats
- Possession
- Home74%
- Away26%
- Shots
- Home12
- Away4
- Shots on Target
- Home6
- Away0
- Corners
- Home5
- Away1
- Fouls
- Home8
- Away13
Live Text
Post update
Full Time
Second Half ends, Swansea City 3, Birmingham City 0.
Booking
Jude Bellingham (Birmingham City) is shown the yellow card for a bad foul.
Post update
Connor Roberts (Swansea City) wins a free kick in the defensive half.
Post update
Foul by Jude Bellingham (Birmingham City).
Post update
Corner, Swansea City. Conceded by Ivan Sunjic.
Booking
Ivan Sunjic (Birmingham City) is shown the yellow card for a bad foul.
Post update
George Byers (Swansea City) wins a free kick on the left wing.
Post update
Foul by Ivan Sunjic (Birmingham City).
Post update
Offside, Swansea City. Jordan Garrick tries a through ball, but Connor Roberts is caught offside.
Post update
Foul by Jordan Garrick (Swansea City).
Post update
Fran Villalba (Birmingham City) wins a free kick on the left wing.
Substitution
Substitution, Swansea City. George Byers replaces Yan Dhanda.
Substitution
Substitution, Swansea City. Jordan Garrick replaces Bersant Celina.
Post update
Offside, Birmingham City. Marc Roberts tries a through ball, but Lukas Jutkiewicz is caught offside.
Post update
Attempt missed. Marc Roberts (Birmingham City) header from the centre of the box misses to the right. Assisted by Daniel Crowley with a cross.
Booking
Yan Dhanda (Swansea City) is shown the yellow card for a bad foul.
Post update
Foul by Yan Dhanda (Swansea City).
Post update
Gary Gardner (Birmingham City) wins a free kick in the attacking half.
Post update
André Ayew (Swansea City) wins a free kick in the attacking half.