The midfielder beat young goalkeeper Ivan Lucic at his near post with a tame looking effort after creating room on the right of the six-yard box.
Preston had taken a 21st-minute lead when striker Simon Makienok latched onto Callum Robinson’s cross from the right unmarked in the centre of goal to volley home from close range.
But City substitute Aaron Wilbraham rose at the far post to head a 78th minute equaliser from Adam Matthews’ deep right-wing cross.
Preston were hardly in the game before Makienok’s goal. City dominated, but as against Brentford in their previous home game, could not summon up the finish to match their approach play.
Lee Tomlin’s fourth minute shot from 20 yards was parried by Chris Maxwell, while Tammy Abraham fired wide and Hordur Magnusson hit a left-footed effort over the bar from 30 yards as the hosts poured forward.
Joe Bryan’s shot from a narrow angle was saved by Maxwell and it seemed only a matter of time before City took the lead.
Instead, the Makienok strike saw Preston grow visibly in stature, closing down their opponents with greater intensity and building some dangerous raids of their own.
In the 28th minute City were undone by a quick throw-in and Robinson set up Alan Browne, who fired over when he should have scored.
Robinson was proving a threat on the Preston right and Browne had another effort saved by Lucic, who then blocked Tom Clarke’s header from the resulting corner.
Preston should have gone in at the interval 2-0 up – but Robinson shot against the crossbar when Makienok’s head down provided him with a great chance.
The second half began with the visitors still on top and Paul Huntington saw a shot following a free-kick blocked on the line by Lucic.
At the other end Luke Freeman drove just wide when given the opening by Gary O’Neil.
Abraham’s run of ill-fortune in front of goal continued in the 65th minute when his fierce shot cannoned back off the near post after Bobby Reid headed on from what looked an offside position.
At that point Lee Johnson introduced Wilbraham to support Abraham up front – but Preston continued to look dangerous and Makienok shot just wide.
Then came City’s equaliser and moments later Abraham headed over from another right wing cross.
After Johnson’s late strike, Maxwell had to save from substitute Josh Brownhill and Abraham, but Preston held firm to claim the points.