All Black Charles Piutau destroyed Edinburgh as Duncan Hodge’s side were unable to complete the double over Ulster.
Magnus Bradbury, Stuart McInally and Damien Hoyland scored tries for Edinburgh, while Sam Hidalgo-Clyne’s penalty earned an unlikely bonus point late on for the visitors.
A blistering display from Ulster’s backs at Ravenhill ensured that all five points were wrapped up by half-time, although Edinburgh will rue a number of missed chances in that period.
Edinburgh off to a great start, dominating possession from the kick-off and eventually scoring in the second minute when Jason Tovey’s flat pass allowed Blair Kinghorn to send Bradbury over in the corner.
The levelling score arrived after ten minutes when Stuart Olding’s offload was finished off by Paul Marshall, a try that Peter Nelson converted.
That 7-5 lead was soon 12-7 when Marshall sent Darren Cave over in the corner after 19 minutes, but the concession of possession from Edinburgh’s own scrum was the origin of the move.
Edinburgh had a huge chance to pull level in the 22nd minute, but Tovey and Hoyland couldn’t link up when it looked easier to score from close range.
That missed chance proved a real turning point as Louis Ludik soon ran in Ulster’s third try, but the unstoppable running of Piutau drew in four defenders.
And seven minutes from the break, Ulster’s bonus-point try arrived down the right when Robbie Diack’s inside pass gave Jacob Stockdale and easy run to the line.
It looked like being a whitewash for Edinburgh at that stage as the Ulster backs cut through them at every opportunity, but four minutes from the break McInally – a late call up for Neil Cochrane – scored off the back of a rolling maul to leave it 24-19 at the interval.
The home side continued to dominate after the break, but Edinburgh managed to get back in the game when Hoyland got in for a try.
And after Hidalgo-Clyne missed the tough conversion he was on the mark with a penalty 16 minutes from time to earn the losing bonus-point.
Scores: Ulster: Tries: P Marshall, D Cave, L Ludik, J Stockdale. Cons: P Nelson (2).
Edinburgh: Tries: M Bradbury, S McInally, D Hoyland. Pen: S Hidalgo-Clyne.
Ulster: L Ludik; J Stockdale, D Cave, S Olding, C Piutau; P Nelson, P Marshall; P Warwick, R Andrew, R Lutton; K Treadwell, A O’Connor; R Diack, C Henry (c), M Coetzee.
Replacements: S McCloskey (for Cave h-t); W Herbst (for Lutton h-t), T Bowe (for Piutau 50), C Black (for Warwick 55), S Reidy (for Coetzee 60), P Browne (for Treadwell 63), D Shanahan (for Marshall 67), J Murphy (for O’Connor 74).
EDINBURGH: B Kinghorn; D Hoyland, C Dean, P Burleigh, T Brown; J Tovey, S Kennedy; J Cosgrove, S McInally, M McCallum; F McKenzie, B Toolis; V Mata, J Ritchie, M Bradbury
Replacements: R Scholes (for Kinghorn 43), S Hidalgo-Clyne (for Kennedy 50), G Turner (for McInally 55), V Fihaki (for Mata 63), N Beavon (for McCallun 63), L Carmichael (for McKenzie 63), M Allen (for Burleigh 65), D Appiah (for Ritchie 67, HIA), P Burleigh (for Allen 71, HIA).
Referee: Nigel Owens (WRU).