1. Pamiętaj, że w HTML-u białe znaki mogą jak najbardziej mieć znaczenie, więc nie możesz "na pałę" wywalać białych znaków spomiędzy znaczników.
2. Przede wszystkim kompresja GZIP czy DEFLATE.
3. Zweryfikuj czy poprawnie wykorzystujesz cache HTTP.
4. Zastanów się czy potrzebujesz od razu serwować cały kod - być może część rzeczy da się doładować asynchronicznie?
5. Zweryfikuj co jest główną przyczyną wolnego ładowania: kolejkujące się żądania, długi czas generowania odpowiedzi przez serwer, duży rozmiar odpowiedzi, wolny transfer?
Skorzystaj sobie z
https://developers.google.com/speed/pagespeed/ by sprawdzić co automaty podpowiadają by poprawić z powyższych.