Profiler - w inżynierii oprogramowania, to forma dynamicznej analizy programu (w przeciwieństwie do statycznej analizy kodu). Jest to badanie zachowania programu używając informacji zdobytych podczas jego wykonywania. Zwykle przeprowadza się je by dowiedzieć się, które części programu zoptymalizować, by zwiększyć jego ogólną prędkość lub zmniejszyć wymagania pamięci.