Zmienna typowa – zmienna której wartościami mogą być typy – zwykle istnieje tylko na potrzeby kompilacji, nie jest natomiast typową zmienną zajmującą pamięć i modyfikowalną w trakcie uruchamiania programu.

Np. w poniższym fragmencie C++ T jest zmienną typową:

template<typename T> void swap (T&a, T&b) {
	T c;
	c = a;
	a = b;
	b = c;
}