Luis Enrique's side turned in a poor display to put their Champions League hopes in danger ahead of the match between Napoli and Inter at the San Paolo late this evening
The hosts started out the brighter side and almost took the lead just two minutes in as Guido Marilungo received a long ball on the edge of the box, moving past Juan, but his shot hit the right post of Maarten Stekelenburg's goal.
Yet just six minutes later, Marilungo was more incisive and opened the scoring, calmly sending the ball past Stekelenburg after being played through by German Denis.
Atalanta doubled their lead in the 19th minute, hitting Roma on the break, with Denis playing a slick one-two with Maxi Moralez before firing home a low strike.
Roma knew they had a mountain to climb, but reduced the deficit and bought themselves back into the game in the 36th minute, after Rodrigo Taddei cut the ball back from the left flank for Fabio Borini to slot home from close range after Pablo Osvaldo's first attempt had been deflected.
Most expected the Giallorossi the continue their comeback after the break, but Atalanta came out strongly in the second half and restored a two-goal lead just two minutes after the whistle, with Denis finishing a low Marilungo cross from the right - marking his second of the game.
Things went from bad to worse for Roma shortly after, as Osvaldo was sent off for kicking out at Luca Cigarini from behind.
Atalanta piled more misery on the visitors in the 66th minute, when Denis completed his hat-trick in classy fashion, chipping the onrushing Stekelenburg.
Roma lost their heads in the dying minutes as they were reduced to nine men after Marco Cassetti was shown red for dissent, compounding an afternoon to forget for Luis Enrique's side.