France forward Nabil Fekir scored his first French league hat trick Saturday as last year's runner-up Lyon won 4-0 at Caen, while Reims moved provisionally top with a 4-1 victory at Lorient.
Rennes is level with Reims and Paris Saint-Germain after coming from behind to beat Toulouse 3-1. PSG visits Monaco on Sunday.
"We are really happy," Lyon goalkeeper Anthony Lopes said. "We got four points, scored four goals, we knew how to control things ... it's a good sign.
"We saw a great Nabil Fekir this afternoon and I hope he will continue like this, but above all it's a team victory."
Fekir — who turned 22 last month — got his first in the 18th minute, tucking the ball across former Lyon goalkeeper Remy Vercoutre and into the bottom right corner following a lovely pass from Corentin Tolisso.
The duo combined again a minute from halftime. Fekir ran onto Tolisso's long ball and bedazzled Caen defender Chaker Alhadhur before squeezing a shot in off the far post.
Tolisso also had a hand in the third, passing the ball to Mathieu Valbuena who set up Fekir for a first-time shot, shortly before the hour.
Caen had defender Damien Da Silva sent off in the 73rd for a reckless tackle on Claudio Beauvue, capping a bad afternoon for the hosts.
Beauvue netted late on with a strike into the far top corner from a tricky angle.
Caen had threatened to level when the score was 1-0. Andy Delort sent a free kick crashing off the crossbar and Lopes was forced into a string off fine saves.
Lyon moved into fifth and has seven points from its opening four matches, one more than Caen.
Teenage forward Didier Bouanga leveled for Lorient almost immediately after halftime following Gaetan Charbonnier's 24th-minute opener.
However, Nicolas de Preville restored Reims' lead six minutes later before goals from Grejohn Kyei and Atila Turan ensured Olivier Guegan's team moved top for at least 24 hours.
"I don't look at the table," Guegan said. "I look at the number of points and nine out of 12 is very satisfying. We have a fortnight ahead of us to recuperate and plan for another series of five matches. We have to be ambitious, and our first ambition will be prepare well for the match against Toulouse, to win it."
Rennes also has nine points. Martin Braithwaite put Toulouse ahead when he finished off a well-worked team move in the fifth minute but Steeve Yago equalized when he turned into his own net in the 17th.
The home side dominated after the interval and went ahead in the 67th minute after Toulouse goalkeeper Mauro Goicoechea brought down Giovanni Sio in the penalty area. Goicoechea thought he had redeemed himself by parrying Sylvain Armand's spot-kick but the Rennes captain fired in the rebound.
Sio sealed the match in stoppage-time.
Newly-promoted Angers is a point behind after behind held to a 1-1 draw at home to Nice.
Despite taking the lead through Thomas Mangani, Angers was prevented from going top by Valere Germain's equalizer but it maintained its unbeaten record.
Elsewhere, Sofiane Boufal's strike was enough to give Lille a first win as it won 1-0 at Ajaccio, which is still without a goal after four rounds.
Montpellier is also goalless, but it picked up its first point of the season with a 0-0 draw at Troyes. It was the only side yet to record a point after Guignamp beat Marseille 2-0 on Friday.