Ulster made it 15 points out of a possible 15 in the United Rugby Championship but were made to fight all the way by a spirted Benetton in a 28-8 victory at Kingspan Stadium.
There was a 45-minute gap between Ulster's third and fourth tries, but the five points take Dan McFarland's side top of the league. Benetton fly-half Leonardo Marin broke the deadlock on seven minutes with a penalty after Ulster prop Tom O'Toole was punished for not rolling away in the tackle.
Benetton prop Ivan Nemer was sin binned on 17 minutes for deliberately killing the ball on his own try line, and it took Ulster five minutes to make their numerical advantage count.
Fly-half Billy Burns put in a cross-field kick and winger Craig Gilroy profited from hesitation in the Italian defence to gather and dot down from close range, with Nathan Doak adding the conversion.
Doak was next to cross for the home side, finishing off a sweeping move after 26 minutes, and the scrum-half converted his own try. Rob Herring, winning his 200th cap for Ulster, had been denied a try earlier in the half for obstruction, but he marked his milestone appearance in fine style by touching down in the 33rd minute.
Ulster kicked a penalty to the corner, the forwards set up a driving maul and the hooker was propelled over from close range, with Doak's conversion giving Ulster a 21-3 half-time lead.
Ulster centre James Hume was yellow-carded just short of the hour mark for killing the ball in the shadow of his own posts.
Benetton opted for a scrum from the penalty. Number eight Braam Steyn burst off the back but was stopped short before scrum-half Callum Braley changed the angle of attack by slinging the ball to wing Iliesa Ratuva Tavuyara, who collected and had the power to hold off the cover tackle and surged over for an unconverted try.
Ulster's only score of the second half came with two minutes remaining, but it secured a third consecutive bonus-point victory. Sean Reidy and Brad Roberts had darts for the line but were stopped short and, despite the clock running down, Ulster patiently worked the ball through the phases before Doak pounced from close range and converted his own try.