Chris Atkinson's first-half header proved enough to give Chesterfield all three points as Exeter suffered their fourth home defeat of the season.
Craig Westcarr beat two home defenders before crossing for Atkinson to head past home keeper Artur Krysiak.
Mark Randall and Westcarr were both denied by Krysiak as the Spireites pushed for a second after the break.
Danny Coles almost snatched an equaliser but his stoppage-time header was cleared off the line.
VIEW FROM THE DRESSING ROOM
Exeter City manager Paul Tisdale told BBC Radio Devon:
"It wasn't a good enough performance. It was a bit confused, it wasn't cohesive, we didn't have a common direction with our play.
"It was a very disappointing game, we've certainly got a few challenges ahead. It wasn't a good day for us."
"We weren't at a good enough level in our play. I know we need to improve and we'll try our best to do it."
Chesterfield caretaker manager Tommy Wright tells BBC Radio Sheffield:
"I'm very pleased... Their keeper made three or four great saves to stop us going two up.
"We got a bit deep in the last 15 minutes and gave the ball away cheaply. But overall I thought some of our play was tremendous.
"(Chris Atkinson) finished it, that's what he's good and that's why I brought him to the club.
"He's got three goals now and they've all been vital goals, winning goals, so I'm delighted."
Exeter 01 Krysiak 02 Tully 04 Bennett 06 Coles 37 Moore-Taylor 07 Sercombe 08 Oakley 11 Davies (Frear - 63' ) 14 Doherty (Amankwaah - 53' ) 12 Cureton (Bauza - 46' ) 19 O'Flynn Substitutes 24 Evans 16 Amankwaah 18 Frear 22 Keohane 23 Dawson 21 Bauza Chesterfield 13 O'Donnell 04 Forbes 06 Hird 12 Darwikwa Booked 16 Ridehalgh 08 Togwell 15 Clay (Randall - 65' ) 17 Atkinson (Smith - 71' ) 25 Talbot 11 Westcarr (Lester - 77' ) 37 Boa Morte Substitutes 27 Wilson 03 Smith 05 Trotman 10 Whitaker 23 Randall 14 Lester 29 Evans
Ref: Carl Berry