Question: who played nathan scott on one tree hill?
Answer: James Martin Lafferty

James Martin Lafferty ( born July 25 , 1985 ) is an American actor , director and producer . He is best known for his portrayal of Nathan Scott on The CW teen drama television series One Tree Hill from 2003 to 2012 .