Twarda spacja () – znak spacji wyglądający na ekranie tak samo jak zwykła spacja, lecz niepozwalający przełamywać wiersza tekstu w danym miejscu. Znak ten jest stosowany tam, gdzie konieczne jest utrzymanie w jednym wierszu dwóch ciągów znaków rozdzielonych spacją. Można za jego pomocą wymusić, aby jednoliterowe przyimki i spójniki nie pozostawały na samym końcu wiersza, co w języku polskim jest uważane za niezręczność typograficzną.

Twarda spacja ma stałą szerokość, równą nominalnej szerokości zwykłej spacji, przez co nie bierze udziału w procesie justowania tekstu (czyli „dociągania” go do obu marginesów łamu). Właściwości justujące ma natomiast spacja niełamiąca.

Spacja twarda jest znakiem pochodzącym zazwyczaj z systemu operacyjnego (zarówno w przypadku przestarzałych stron kodowych, jak i obecnie w unikodzie), podczas gdy spacja niełamiąca (rozwiązanie informatyczne wprowadzone później) występuje jako wewnętrzna funkcja w zaawansowanych programach do składu tekstu.

Wszędzie tam, gdzie jest możliwy dostęp do spacji niełamiącej, spacja twarda (jako spacja niejustująca) ma zastosowanie marginalne.