Detta är fotavtrycket för parametersniffning. Se här för en annan diskussion om det; SQL dålig prestanda för exekveringsplan för lagrad procedur - parametersniffning
Det finns flera möjliga korrigeringar, inklusive att lägga till MED RECOMPILE till din lagrade procedur som fungerar ungefär halva tiden.
Den rekommenderade lösningen för de flesta situationer (även om det beror på strukturen på din fråga och sproc) är att INTE använd dina parametrar direkt i dina frågor, men lagra dem hellre i lokala variabler och använd sedan dessa variabler i dina frågor.