OXFORD United’s torrid run was extended in heart-breaking fashion as Dan Potts headed a 98th-minute winner for Luton Town.

The defender rose to head in Alan Sheehan’s free-kick with just seconds remaining, having had a goal disallowed earlier in stoppage-time.

United had led through Ricky Holmes’s terrific strike just after the break, but poor defending saw James Collins quickly equalise.

The hosts’ efforts were then hampered by Shandon Baptiste’s dismissal 17 minutes from time for two bookable offences.

It looked like the U’s had done enough to hang on to a point, but Potts leapt high to inflict an eighth defeat in 11 games for Karl Robinson’s men.

United started with a changed shape for the first time this season, playing a diamond in midfield and moving Gavin Whyte alongside Jon Obika.

Holmes was deployed behind the front two and in the second minute he found space to deliver a cross which came for Luke Garbutt, whose shot was blocked.

The game was very open from the outset, with Luton going on to enjoy the best of the first half.

U’s goalkeeper Jonathan Mitchell made an excellent save to turn Pelly-Ruddock Mpanzu’s 20-yard thunderbolt round the post. From the resulting corner Jamie Hanson was in the right place to clear Glen Rea’s header.

It was an example of Luton’s dominance in the air all over the pitch and they also looked dangerous on the counter-attack and had lots of space to exploit.

Midway through the half a Holmes shot was blocked and the visitors sprung forward, but Harry Cornick let the U’s off the hook by firing wide from 12 yards after a poor clearance from Garbutt.

United quickly responded when Baptiste, skipper again on his return to the side, won the ball on halfway. Whyte cut in off the right flank and tested Hatters goalkeeper James Shea from 20 yards.

The hosts had several moments where they threatened to break through, but Whyte and Holmes were held up by last-ditch tackles.

Given the openness of the game, it was a surprise it reached half-time goalless.

United were in need of something special – and it arrived three minutes after the restart.

It looked like Holmes had hung on to the ball for too long as he ignored Garbutt’s overlapping run, but he came up with a terrific left-footed strike which arrowed into the far corner.

The advantage lasted just seven minutes, though.

United lost the ball cheaply in midfield and then Tony McMahon and Holmes failed to clear their lines as Mpanzu bundled through. His cross was fired on to the crossbar by Cornick, but Collins was on hand to convert the rebound.

Neither side looked interested in playing for a point and Mpanzu let United off the hook 20 minutes from time when he fired over from ten yards.

But any hopes the hosts had of pushing for victory late on were dented when they were reduced to ten men 17 minutes from time.

Baptiste was already on a booking and lunged in on James Justin when he overran the ball in midfield.

It meant the closing stages were on preserving the point for United, who brought on Jamie Mackie, Josh Ruffels and – for a belated home competitive debut, Samir Carruthers.

The officials added eight minutes on for stoppages and in the 94th minute Dan Potts thought he had won the game when he headed in Kazenga Lua-Lua’s cross, but referee Michael Salisbury spotted a push by Collins.

United breathed a huge sigh of relief – but the reprieve was only temporary and Potts buried the next chance with seconds left.

Oxford Utd (4-1-2-1-2): Mitchell, McMahon, Nelson, Dickie, Garbutt, Hanson (Ruffels 77), Brannagan, Baptiste, Holmes, Whyte (Mackie 77), Obika (Carruthers 82).

Unused subs: Shearer, Mousinho, Henry, Smith.

Booked: Baptiste, Hanson, McMahon, Brannagan.

Sent off: Baptiste.

Luton Tn (4-1-2-1-2): Shea, Stacey, Pearson, Bradley, Potts, Rea (Sheehan 87), Mpanzu, Lee (Lua-Lua 78), Shinnie (Justin 70), Cornick, Collins.

Unused subs: Isted, McCormack, Grant, Jarvis.

Booked: Stacey, Lee, Rea.

Referee: Michael Salisbury (Lancashire).

Attendance: 6,769 (1,171 visitors).