Marcus Bettinelli kept his eighth clean sheet of the season as Dartford beat fellow play-off hopefuls Macclesfield.
Amari Morgan-Smith fired the visitors' first chance over the bar, while Harry Crawford went close for Dartford.
And it was the hosts who took the lead when Macclesfield keeper Lance Cronin fluffed his clearance and Jon Wallis netted from 40 yards.
A mistake by Pablo Mills saw Danny Harris set up fellow second-half substitute Lee Noble to secure the win.
Bettinelli had earlier kept Dartford in front with great saves from Keiran Murtagh and Charlie Henry.
Macclesfield, who had lost only once in their previous nine matches, drop to 10th in the Blue Square Bet Premier table.
Former Fulham and Gillingham striker Stefan Payne made a late substitute appearance for the visitors, having agreed a short-term deal to join the Silkmen from Sutton United prior to the game.
"He's a young lad still and has potential," manager Steve King told the club website. "I've brought him in for a couple of weeks to bring another body in to give us some cover up front, and also to give us an opportunity to look at him at closer quarters."
Dartford climb to seventh and are now three points adrift of the play-off places.
Live Text Commentary
Full Time The final whistle is blown by the referee.90:00 +3:10
Jacob Erskine takes a shot. Blocked by Keiran Murtagh. Short corner worked by Lee Noble.90:00 +1:06
Sam Wedgbury produces a left-footed shot from the edge of the area and misses to the left of the target.88:11
The assistant referee flags for offside against Jack Mackreth. Free kick taken by Marcus Bettinelli.87:32
A cross is delivered by Jack Mackreth, clearance made by Jon Wallis.84:13 Substitution
Substitution Jacob Erskine is brought on as a substitute for Harry Crawford.83:21
Free kick awarded for an unfair challenge on Pablo Mills by Harry Crawford. Lance Cronin takes the free kick.81:44
Assist by Danny Harris.81:44 Goal scored
Goal! - Lee Noble - Dartford 2 - 0 Macclesfld Goal scored by Lee Noble from just inside the penalty area to the bottom left corner of the goal. Dartford 2-0 Macclesfield.81:07 Substitution
Substitution Lee Noble is brought on as a substitute for Ryan Hayes.80:38 Booking
Booking Harry Crawford booked for dissent.79:35 Substitution
Substitution (Macclesfield) makes a substitution, with Stefan Payne coming on for Amari Morgan-Smith.78:20
Jack Mackreth has an effort at goal from outside the area missing to the wide right of the target.76:51
Peter Winn produces a strike on goal direct from the free kick.76:51 Booking
Booking Tom Bonner receives a yellow card.76:43
Tom Bonner gives away a free kick for an unfair challenge on Waide Fairhurst.75:10
Unfair challenge on Jon Wallis by Sam Wedgbury results in a free kick. Marcus Bettinelli restarts play with the free kick.74:26
Harry Crawford is caught offside. Lance Cronin takes the direct free kick.73:20
Ryan Hayes gives away a free kick for an unfair challenge on Tony Diagne. Peter Winn restarts play with the free kick. Pablo Mills has a header from deep inside the six-yard box and clears the crossbar.70:24
The ball is delivered by Ryan Hayes, clearance made by Craig Braham-Barrett. Outswinging corner taken by Dominic Green, clearance made by Jack Mackreth. Corner taken left-footed by Ryan Hayes, Nathaniel Brown manages to make a clearance.
Substitution Tony Diagne on for Charlie Henry.68:29
Dominic Green produces a left-footed shot from just outside the box that goes wide left of the target.66:42
Free kick awarded for an unfair challenge on Sam Wedgbury by Tom Champion. Free kick taken by Peter Winn.65:41
A cross is delivered by Ryan Hayes, Danny Harris challenges Lance Cronin unfairly and gives away a free kick. Lance Cronin restarts play with the free kick.65:10
Corner taken left-footed by Ryan Hayes from the right by-line, clearance made by Sam Wedgbury.64:22 Substitution
Substitution Danny Harris is brought on as a substitute for Nathan Collier.61:11
Harry Crawford decides to take the corner short.59:47
Ryan Hayes takes the free kick.59:47 Booking
Booking Peter Winn goes into the book.59:32
Free kick awarded for a foul by Peter Winn on Tom Champion.57:03
Inswinging corner taken right-footed by Jon Wallis from the left by-line, free kick awarded for a foul by Tom Bonner on Amari Morgan-Smith. Direct free kick taken by Lance Cronin.55:52
Keiran Murtagh takes a shot. Save by Marcus Bettinelli.54:45
Unfair challenge on Dominic Green by Craig Braham-Barrett results in a free kick. Dominic Green delivers the ball from the free kick left-footed from left wing, Pablo Mills manages to make a clearance.54:00
Shot by Peter Winn missed to the left of the net.53:01
Craig Braham-Barrett crosses the ball, Dominic Green gets a block in. Short corner taken by Peter Winn from the right by-line.48:23
Foul by Mark Arber on Waide Fairhurst, free kick awarded. The ball is crossed by Peter Winn, Keiran Murtagh takes a shot. Save by Marcus Bettinelli. Inswinging corner taken right-footed by Charlie Henry, save by Marcus Bettinelli.47:49
Foul by Nathan Collier on Pablo Mills, free kick awarded. Lance Cronin restarts play with the free kick.46:14
Centre by Jack Mackreth, Tom Bonner manages to make a clearance. Inswinging corner taken from the right by-line by Peter Winn.45:01
The match restarts for the second half.45:00 +1:43 Half time
Half Time The first half comes to an end.45:00 +0:50
Free kick taken by Pablo Mills.45:00 +0:50 Booking
Booking Richard Rose receives a caution for unsporting behaviour.45:00 +0:46
Unfair challenge on Keiran Murtagh by Richard Rose results in a free kick.44:58
Waide Fairhurst takes a shot. Save made by Lance Cronin.43:21
Foul by Harry Crawford on Keiran Murtagh, free kick awarded. Pablo Mills takes the free kick.42:20
Richard Rose produces a right-footed shot from just outside the box that goes wide left of the goal.42:02
Dominic Green produces a cross, clearance made by Nathaniel Brown.38:36
Free kick awarded for an unfair challenge on Harry Crawford by Pablo Mills. Mark Arber takes the direct free kick.37:18
Harry Crawford challenges Peter Winn unfairly and gives away a free kick. Lance Cronin takes the free kick.33:22
Shot from outside the area by Waide Fairhurst misses to the left of the goal.30:03
Foul by Mark Arber on Amari Morgan-Smith, free kick awarded. Direct free kick taken by Sam Wedgbury.27:29
Free kick awarded for a foul by Lee Burns on Charlie Henry. Keiran Murtagh takes the free kick.25:30
Jack Mackreth concedes a free kick for a foul on Richard Rose. Direct free kick taken by Jon Wallis.23:49
Foul by Jon Wallis on Craig Braham-Barrett, free kick awarded. Direct free kick taken by Pablo Mills.22:43
Foul by Mark Arber on Amari Morgan-Smith, free kick awarded. Craig Braham-Barrett takes the free kick.18:53
Craig Braham-Barrett produces a cross, save made by Marcus Bettinelli.16:45
Ryan Hayes fouled by Keiran Murtagh, the ref awards a free kick. Free kick crossed left-footed by Ryan Hayes, save made by Lance Cronin.15:59
Harry Crawford takes a shot. Save by Lance Cronin.13:01 Goal scored
Goal! - Jon Wallis - Dartford 1 - 0 Macclesfld Jon Wallis scores a goal from a long way out low into the middle of the goal. Dartford 1-0 Macclesfield.12:20
Nathan Collier is flagged offside by the assistant referee. Free kick taken by Lance Cronin.11:36
Amari Morgan-Smith challenges Tom Champion unfairly and gives away a free kick. Direct free kick taken by Jon Wallis.10:48
Free kick awarded for an unfair challenge on Mark Arber by Amari Morgan-Smith. Mark Arber restarts play with the free kick.9:55
The ball is crossed by Peter Winn, save made by Marcus Bettinelli.7:44
Shot from outside the box by Amari Morgan-Smith misses to the left of the goal.7:00
Foul by Ryan Hayes on Charlie Henry, free kick awarded. Peter Winn crosses the ball from the free kick left-footed from left channel, clearance by Lee Burns.5:00
Free kick awarded for a foul by Mark Arber on Waide Fairhurst. Keiran Murtagh takes the free kick.3:31
Amari Morgan-Smith takes a shot. Save by Lance Cronin.2:00
Effort from inside the area by Charlie Henry misses to the right of the target.1:07
Jack Mackreth takes a shot. Save by Marcus Bettinelli.0:25
Corner taken by Ryan Hayes from the right by-line to the near post, Jack Mackreth manages to make a clearance.0:00
The game begins.
Live data and text provided by our data suppliers