Match ends, Rochdale 2, Port Vale 1.
Port Vale's four-game League One winning run ended as they surrendered an early lead to lose to Rochdale.
Vale winger Chris Birchall nipped in ahead of Jim McNulty to round keeper Joel Castro Pereira and slip the ball inside the near post on 13 minutes.
But Dale levelled from Ian Henderson's 40th-minute penalty following Carl Dickinson's foul on Donal McDermott.
Nat Mendez-Laing knocked in a rebound to win it on 78 minutes prior to captain Carl Dickinson's sending off.
Dickinson, who was red carded in added time for an off-the-ball challenge on Henderson, had earlier seen his header graze the top of Pereira's crossbar after Mendez-Laing had slammed a shot against the foot of the post at the other end.
Both sides hit the woodwork after the break, Mendez-Laing slamming a shot against the foot of the post for Dale.
But, when James Hooper's effort was blocked, the rebound ran kindly for Mendez-Laing who applied a cool finish to find the bottom corner of Jak Alnwick's net and earn victory.
Rochdale manager Keith Hill told BBC Radio Manchester:
"I enjoyed watching the game, I thought the performance merited 3 points. I must admit I do believe we were given a penalty that was an excellent challenge from one of their defenders, I don't think it was a penalty and I think the referee has got that wrong. I am one of those that comes out and complains about referees.
"As a home manager to get the advantage their when the opposition is winning 1-0. It was a big lift for us but I think we were playing well and I do believe we deserved the 3 points from the performance.
"I think we've got a very good squad of players, but we are dealing with inconsistent performances. Individually we have to crack that nut. On any given Saturday we're a very, very good side but I just want a little bit of individual consistency. This season I think we've been inconsistent with performances which has led to inconsistent results."
- 44Castro Pereira
- 16O'SullivanBooked at 15minsSubstituted forMcDermottat 34'minutesBooked at 54mins
- 28CampsBooked at 88mins
- 39BunneySubstituted forMendez-Laingat 57'minutes
- 34HooperSubstituted forRaffertyat 89'minutes
- 9AndrewBooked at 81mins
- 3DickinsonBooked at 90mins
- 7BirchallSubstituted forKellyat 66'minutes
- 20Leitch-SmithSubstituted forIkpeazuat 73'minutes
- 10DoddsSubstituted forHooperat 83'minutes
- Darren England
- Shots on Target
Second Half ends, Rochdale 2, Port Vale 1.
Second yellow card to Carl Dickinson (Port Vale) for a bad foul.
Ian Henderson (Rochdale) wins a free kick in the attacking half.
Foul by Carl Dickinson (Port Vale).
Foul by Callum Camps (Rochdale).
Anthony Grant (Port Vale) wins a free kick in the defensive half.
Corner, Port Vale. Conceded by Oliver Lancashire.
Rhys Bennett (Rochdale) wins a free kick on the left wing.
Foul by Uche Ikpeazu (Port Vale).
Corner, Rochdale. Conceded by Richard Duffy.
Attempt blocked. Ian Henderson (Rochdale) right footed shot from outside the box is blocked.
Attempt saved. Michael O'Connor (Port Vale) right footed shot from outside the box is saved in the centre of the goal.
Substitution, Rochdale. Joseph Rafferty replaces James Hooper.
Callum Camps (Rochdale) is shown the yellow card for a bad foul.
Foul by Callum Camps (Rochdale).
Anthony Grant (Port Vale) wins a free kick in the attacking half.
Donal McDermott (Rochdale) wins a free kick in the attacking half.
Foul by Ryan McGivern (Port Vale).
Oliver Lancashire (Rochdale) wins a free kick in the attacking half.