The #1 rule is keep the decisionmaking in the cockpit.
ATC are there to assist but they cannot override the above.
It's much easier and much safer to go around when at say 300ft or higher than when on the runway. Personally, therefore, I go around if I am unhappy about previous landing traffic getting out of the way. One should never commit to a landing unless the runway is clearly clear, and once committed to a landing I always land.
Putting the effort into a decent landing is always safer than putting the effort into a late go-around.
A go-around from the runway is hazardous because one doesn't know how much runway is left, and there is a high workload with getting rid of the landing flap, etc.