Connacht took advantage of a weakened and out-of-form Ospreys with a Guinness Pro14 victory at a rain-lashed Liberty Stadium.
The Irish side were indebted to tries from wing Niyi Adeolokun and centre Peter Robb, with Conor Fitzgerald kicking 10 points.
Ospreys, who have won only one of their five games in Conference A, grabbed a second-half try through hooker Sam Parry with Luke Price kicking a penalty.
South Africa lock Marvin Orie made his Ospreys debut after the three-times capped Springbok was signed on loan from Johannesburg-based side the Lions until 26 December.
Orie's arrival allowed captain Dan Lydiate to revert to his preferred back-row role.
Number eight Dan Baker returned in place of Gareth Evans from the side beaten 28-12 in Munster last weekend.
Connacht centre Tom Farrell made his first start of the campaign following his two-try display off the bench during last weekend's win over the Cheetahs.
Connacht dominated a dreadfully-organised Ospreys side and the Irish province deserved their 17-3 interval lead.
Ospreys did open the scoring on four minutes with a Price penalty, but they offered very little after that in the Swansea rain.
A minute later Ospreys conceded a very soft try when wing Adeolokun ran free up the right touchline, kicked ahead and regathered possession over the line. Fitzgerald converted.
With the Ospreys penalty count mounting Fitzgerald found the target with a penalty goal on 17 minutes.
And from 10-3 down it got worse for Ospreys when captain Lydiate was sin-binned for a professional foul on his own try line.
Down to 14 men, Ospreys conceded a second try when centre Robb was put over under the posts after number eight Paul Boyle fed him off the base of a scrum.
Ospreys made a significant change at half-time, bringing on former Wales fly-half James Hook for Price.
The home performance improved, and they scored a try on 56 minutes when hooker Parry squeezed in at the right corner from a line-out drive. Hook converted to reduce the deficit to seven points.
But a Fitzgerald penalty five minutes later as Ospreys edged offside gave Connacht a 10-point cushion they were not to relinquish as the home side failed to score again.
With the last kick of the match Ospreys full-back Cai Evans missed a long-range penalty shot which would have given them a losing bonus point.