Abstract. In this article, we propose two algorithms for determining the Nielsen-Thurston classification of a mapping class ψ on a surface S. We start with a finite generating set X for the mapping class group and a word ψ in X . We show that if ψ represents a reducible mapping class in Mod(S) then ψ admits a canonical reduction system whose total length is exponential in the word length of ψ. We use this fact to find the canonical reduction system of ψ. We also prove an effective conjugacy separability result for π1(S) which allows us to lift the action of ψ to a finite cover S of S whose degree depends computably on the word length of ψ, and to use the homology action of ψ on H1( S, C) to determine the Nielsen-Thurston classification of ψ.