UnCSS

https://github.com/giakki/uncss

Der Prozess, mit dem UnCSS die nicht verwendeten Regeln entfernt, lautet wie folgt:

Die HTML-Dateien werden von jsdom geladen und JavaScript wird ausgeführt.
Alle Stylesheets werden von PostCSS analysiert.
document.querySelector filtert Selektoren heraus, die nicht in den HTML-Dateien enthalten sind.
Die restlichen Regeln werden zurück in CSS konvertiert.

Hinweis:

UnCSS kann nicht auf Nicht-HTML-Seiten wie Vorlagen oder PHP-Dateien ausgeführt werden. Wenn Sie UnCSS mit Ihren Templates ausführen wollen, sollten Sie  HTML-Beispielseiten aus Ihren Vorlagen erstellen und diese generierten Dateien mit Uncss ausführen oder führe  auf einem lokalen Live-Dev-Server.
UnCSS führt nur das Javascript aus, das beim Laden der Seite ausgeführt wird. Es kann JavaScript nicht verarbeiten (und kann es auch nicht), das auf Benutzerinteraktionen wie Schaltflächenklicks ausgeführt wird. Sie müssen die Option ignore verwenden, um Klassen beizubehalten, die durch JavaScript bei Benutzerinteraktionen hinzugefügt werden.

ReduceCSS

https://smartit.ninja/reducecss.html

Dieses kostenfeie Tool scannt eine Seite, wenn man die URL der Seite und die URL der gewünschten CSS-Datei einfügt.

Manuelle Bereinigung

Hier gibt es eine gute Anleitung für manuelle Bereingung in Google Chrome:
http://www.labnol.org/internet/remove-unused-css/28635/