Coates was born in Saskatoon, Saskatchewan, Canada to Fred and Joyce Coates. He first saw a play while attending the University of Saskatchewan, where he enrolled in a drama course as an elective. This experience inspired him to pursue an acting career. Coates portrayed Stanley Kowalski in A Streetcar Named Desire and was the youngest ever to play title role of Macbeth at the Stratford Festival in his native Canada. Coates made his screen debut in the film The Boy in Blue (1986). This role opened up opportunities for him, and he has appeared in over 100 titles to date.