Northamptonshire 219 (Zaib 90) and 211 (Keogh 63, Andersson 3-23) beat Derbyshire 165 (Reece 50, Chahal 5-45) and 132 (Keogh 5-44, Chahal 4-54) by 133 runs
The experienced India white-ball international followed up his five-wicket tally from the first innings with 4 for 54 to demolish Derbyshire for just 132 second time around at Wantage Road.
The visitors, whose defeat keeps them at the foot of Division Two, never looked likely to mount a convincing challenge to their target of 266 despite bowling Northamptonshire out for 211 earlier in the day.
Resuming their second innings on 178 for 5, Northamptonshire managed to stretch that total by a further 33, with Keogh completing his third half-century of the season before he was last man out for 63.
Derbyshire spinner Jack Morley extracted some turn, having both Justin Broad and Ben Sanderson caught at slip before Martin Andersson sent Dom Leech’s middle stump flying.
Andersson finished off the innings with figures of 3 for 23 after bowling Keogh around his legs, leaving Derbyshire to chase 266 – and they stumbled to 26 for two during the 40 minutes before rain arrived.
Harry Came was first to depart as Broad brought one back to trap him lbw and Brooke Guest, having punched his first delivery to the cover fence, was foxed by the final ball of the session from Chahal.
Guest was followed off by partner Luis Reece as well as the Northamptonshire fielders, with rain prompting an early lunch interval and a further heavy shower put paid to the afternoon session.
Chahal accounted for Reece, playing for turn to a ball that kept straight on and struck his off stump, soon after the resumption – and he might also have removed Wayne Madsen with an edge that eluded the slip fielder.
The veteran Derbyshire batter led a charmed life at times, attempting to late cut a couple of deliveries from Chahal that whistled just past the stumps before almost playing on to Keogh with a reverse sweep.
Madsen’s presence in the middle became ever more vital for the visitors as sharp glovework by Lewis McManus, stumping David Lloyd and then snapping up a leg-side catch off Keogh to dismiss the dangerous Aneurin Donald, plunged them into deeper trouble.
Andersson was bowled swinging across the line at Chahal, while Keogh continued to drive nails into the Derbyshire coffin, removing Zak Chappell lbw before Alex Thomson and Harry Moore were caught close in.
Morley held Northamptonshire up for almost five overs before he was bowled sweeping at Keogh, who completed his second five-for of the season against Derbyshire and left Madsen high and dry on 48 not out.