Rory Kleinveldt gave Northants a solid base as he led a middle-order fight in which he scored 91.
It was a timely intervention by the stand-in captain after Northants had been staggering at 170-6 against Glamorgan. By the time he was dismissed, he and Saif Zaib (65*) had put on 130 for the seventh wicket in 24 overs.
Kleinveldt took the attack to the bowlers, smashing seven sixes – four of which came within six balls – and four fours among the 88 balls he faced in just over an hour at the crease. He was well caught while going for his eighth six, falling just nine short of what would have been just his second first-class hundred in 122 matches.
Glamorgan responded well initially, putting on 52 for the first wicket, but then came a collapse which saw three wickets go down in five balls, including Jacques Rudolph for 1. They ended the day on 139-5.