Nadolo put Crotty over the line after the final hooter, but his pass was also ruled forward.
Dagg, a constant handful for the Bulls, and Nadolo, who had fewer opportunities, but who scored a typically blockbusting try, were the Crusaders' best.
Chasing the game after an intercept by replacement forward Grant Hattingh, the Crusaders lost their shape and looked disorganised and panicky. In the end it was all a bit shambolic, suggesting perhaps that their big recent victories over the Cheetahs and Lions aren't representative of a corner turned in their season.
They got off to a poor start with the Bulls dominating territory and possession and scoring early tries through Francois Hougaard and Burger Odendaal, both helped by charged down Andy Ellis clearances.
One of the few bright spots for the Crusaders was Dan Carter's goalkicking. Back in the No10 jersey, Carter kicked five from five, including the conversion for Nadolo's try from the left touchline. Stuck in mid-table, the Crusaders again have it all to do in a bid to make the playoffs. A victory would have put them in sixth. They play the Sharks in Durban next weekend.
Bulls 31 (Francois Hougaard, Burger Odendaal, Grant Hattingh tries; Handre Pollard 2 cons, 4 pens)
Crusaders 19 (Nemani Nadolo try; Dan Carter con, 4 pens)
Halftime: 18-16