Colchester took the lead after just 37 seconds through Jacob Murphy, who converted Gavin Massey’s low cross from close range.
The first half was an open affair, with Colchester enjoying the bulk of the chances.
Massey and Alex Gilbey both went close, while Chris Porter fired straight at keeper Wes Foderingham.
Swindon went close on the half hour when Sam Walker made a superb reflex save to push Nathan Byrne’s fierce close-range effort over.
And Walker made a superb save to turn away Andy Williams’ fine shot, on the stroke of half-time.
Jack Stephens cleared a deflected effort from under his own bar just after the break but Swindon levelled eight minutes after the break when Ben Gladwin met Yasser Kasim’s corner with a glancing header to equalise.
Walker denied Massimo Luongo while at the other end, Porter’s late header came back off a post as an entertaining affair ended all square.