ISNULL() na cláusula select tem uma influência insignificante no desempenho. Na cláusula where, por outro lado, pode ter um impacto muito grande no desempenho, pois impede o otimizador de usar um índice nessa coluna.
where isnull(col1, 0) = 0 -- unable to use index, because every
-- row has to be evaluated
where col1 = isnull(@myVar, 0) -- index will be used, since isnull(@myVar, 0)
-- returns the same static value for every row and
-- not every row has to be evaluated by the function.
Portanto, ao usar isnull() em uma cláusula where, avalie se isso impede que o otimizador de consulta use um índice. Nesse caso, considere criar uma coluna computada com o resultado if isnull(col1, 0) e indexe a coluna computada e use-a em sua cláusula where.