Two goals from Benjamin Corgnet, who scored either side of a 25-yard strike from Romain Hamouma, saw the visitors win well. they were denied a clean sheet only by an 80th-minute penalty from substitute Maor Melikson.
Corgnet opened the scoring after 17 minutes, Hamouma doubled the lead in the 47th minute, and six minutes later Corgnet netted again.
Unbeaten Monaco have the opportunity on Sunday to reclaim first place when they tackle Lorient.
Last season's champions Paris Saint-Germain - 2-0 winners at Bordeaux on Friday - and now Saint-Etienne have edged in front of Monaco during this round of games, but a victory would take Claudio Ranieri's men back to the summit.
Saint-Etienne have 12 points from five games, PSG have 11, and Monaco - with their game in hand - now have Marseille alongside them on 10.
Lucas Mendes snatched a late equaliser for Marseille at Toulouse, earning a 1-1 draw. He netted in the 87th minute, with Wissam Ben Yedder having put the home side ahead after 66 minutes.
Toulouse remain winless after five games, as do Sochaux who lost 1-0 at Nantes, where Filip Djordjevic scored the only goal in the 76th minute.
Fabrizio Ravanelli's Ajaccio, too, have yet to experience that winning feeling.
They were 3-0 behind at home to Evian and managed to gain a semblance of respectability with two late goals.
Brice Dja Djedje put Evian ahead with a superb free-kick strike after 31 minutes and Kevin Berigaud pounced in the 43rd and 52nd minutes to stretch the lead.
Paul-Bastien Lasne and Junior Tallo scored in the final 10 minutes to narrow the winning margin to 3-2.
Montpellier and Reims drew 0-0, and Guingamp mustered a late spot-kick leveller to hold Bastia 1-1.
Bastia went ahead when Wahbi Khazri netted in the 47th minute, before Mustapha Yatabare wiped out the lead with a penalty after 88 minutes. Yatabare then missed an injury-time penalty to win the game.