George Boyd struck twice before half-time as Peterborough secured their first home win and condemned Huddersfield to a surprise defeat.
Posh had lost all five previous league games at London Road this season, but striker Boyd opened the scoring in the 16th minute and then struck his fifth goal of the campaign eight minutes later to put Darren Ferguson’s side in control.
Saido Berahino, making his first start, set up both goals before Boyd sent over a cross for defender Kgosi Ntlhe to head home his first senior goal and Posh’s third in the 48th minute.
Winger Adam Hammill pulled one back in the 51st minute for Huddersfield, who had won their last three on the road, but Peterborough had chances to extend their lead, with Boyd denied his hat-trick by visiting goalkeeper Alex Smithies in the closing stages.
Berahino laid the ball off on the edge of the area and Boyd arrowed a low shot into the bottom corner for the game’s opening goal. Tomlin then had a shot blocked by Huddersfield’s Adam Clayton before Posh pair Berahino and Boyd combined again to double their side’s advantage in the 24th minute.
Boyd then supplied the cross from the right side of the area and Ntlhe stole in at the far post three minutes into the second half to head the ball into the top corner.
Simon Grayson responded by sending on Hammill for Ward and defender Paul Dixon for Calum Woods, and his tactical switch paid dividends. Hammill cut in from the left to the edge of the area and drilled a right-footed shot into the bottom corner.
Town enjoyed their best spell as they chased a second but they could not get back into the game.
Peterborough: Olejnik, Alcock, Brisley, Knight-Percival, Little, Bostwick, McCann (Newell 90), Ntlhe, Tomlin (Ferdinand 84), Berahino (Sinclair 77), Boyd. Unused substitutes: Richardson,Zakuani, Swanson, Barnett.
Huddersfield: Smithies, Hunt, Gerrard, P Clarke, Woods (Dixon 49), Clayton, Norwood, Southern, Ward (Hammill 49), Beckford, Vaughan (Scannell 74). Unused substitutes: Bennett, Novak, Robinson, Lynch.
Referee: S Attwell (Warwickshire).