Emmanuel Latte Lath’s first-half penalty proved the difference as Swansea City suffered defeat at Middlesbrough on the opening day of the Championship season.
The striker converted from the spot after Isaiah Jones had been fouled in the area, and it was enough to settle the contest at the Riverside Stadium.
The Swans were improved in the second half, and were unable to convert a late flurry of chances after controlling most of the proceedings after the interval.
Despite the frustration of defeat - just a second on the opening day for the Swans since 2013 - there was an encouraging debut for Jisung Eom, while Ronald provided added attacking zip when he returned from injury as a substitute.
And the Swans will be quickly back in action when they host Gillingham in the Carabao Cup on Tuesday evening.
Lawrence Vigouroux, Eom and Gonçalo Franco were all handed their Swansea City debuts, with fellow new arrival Žan Vipotnik among the substitutes on Teesside.
The hosts came out of the blocks quickly without really troubling Vigouroux’s goal, and the Swans responded with Franco, Matt Grimes and Eom involved in a good build up that ended with a corner that was cleared.
Jones was off target from distance for the hosts as he attempted to chip Vigouroux following Dieng’s quick punt downfield.
Rav van den Berg headed a corner over a few minutes later before Harry Darling made a crucial tackle to deny Finn Azaz as the midfielder bore down on goal.
Swansea responded, Eom getting into the area to deliver before being brought down as he sent a cross to the far post.
But the visitors trailed in the 25th minute when Azeem Abdulai was adjudged to have brought down Jones in the area, and Latte Lath made no mistake from the spot as he dispatched a well-struck penalty into the net.
Captain Grimes prevented Boro adding a second with a terrific sliding challenge as Riley McGree got set to shoot from Latte Lath’s cutback.
And the Swans then spurned a big chance to level when a poor pass from Aidan Morris allowed Liam Cullen to get to the loose ball in the Middlesbrough area, with Abdulai unable to turn home as Dieng smothered the ball at his feet.
Jones fired over at the other end as the Swans headed into the interval a goal down.
Williams sent on Ronald in place of Abdulai following the winger’s return from injury
The Brazilian immediately threatened as he raced onto Cullen’s flick to get into the box and win a corner, before Lukas Engel fizzed a strike over the bar for the hosts.
But there was noticeably a greater energy about Swansea’s play and they began to ask more pressing questions of the Middlesbrough rearguard.
A brilliant pass from Grimes then nearly unlocked the defence, with Cullen just unable to take in the follow-up feed from Jay Fulton on the edge of the area.
Eom was unable to turn in a deep cross from Ronald after good work by Josh Key, moments before Vipotnik was introduced for his debut and Kyle Naughton was also summoned from the bench as Key and Fulton made way.
Swansea continued to press, Cullen nearly finding Ronald’s out-to-in run behind the backline, before the Brazilian’s brilliant flick set up another attack that ended with Eom bending a free-kick agonizingly wide.
Boro lifted the pressure and Vigouroux made a fine low stop to prevent Azaz doubling the hosts lead inside the final 16 minutes.
The Swans came forward with renewed vigour in the final minutes but a leveller proved elusive as Cullen's goalbound effort from a Josh Tymon corner was blocked, before the forward and Eom saw further efforts kept out by red shirts.
Swansea City: Lawrence Vigouroux; Josh Key (Kyle Naughton 63), Harry Darling, Ben Cabango, Josh Tymon; Matt Grimes (captain), Jay Fulton (Žan Vipotnik 63), Gonçalo Franco (Ollie Cooper 77); Azeem Abdulai (Ronald 46), Liam Cullen, Jisung Eom (Josh Thomas 90).
Unused Substitutes: Nathan Broome, Kristian Pedersen, Nathan Tjoe-A-On, Dan Watts.
Middlesbrough: Seny Dieng, Rav van den Berg, Matt Clarke, Hayden Hackney, Riley McGree (Jonny Howson 90), Emmanuel Latte Lath (Josh Coburn 86), Isaiah Jones, Luke Ayling (captain), Aidan Morris Finn Azaz (Delano Burgzorg 81), Lukas Engel.
Unused Substitutes: Tom Glover, Dan Barlaser, Alex Gilbert, Anfernee Dijksteel, Micah Hamilton, George McCormick.
Referee: Sam Allison
Attendance: