Clean code eleştirisi, yazılım dünyasının en hassas sinir uçlarından birine dokunur. Temiz, okunabilir, anlamlı isimlendirilmiş kod yazmak değerli bir pratiktir. Fakat bu değer bir dogmaya dönüştüğünde, performans gereksinimleri olan sistemlerde ciddi sorunlar baş gösterir. Clean code eleştirisinin teknik boyutu şöyle özetlenebilir: okunabilirlik optimizasyonu ile çalışma zamanı optimizasyonu çoğu zaman zıt yönlere çeker. Küçük, tek sorumlu fonksiyonlar anlaşılması kolay kodlar üretir fakat her fonksiyon çağrısı bir yük getirir. Döngü içinde tekrarlanan hesaplamaları ayrı fonksiyonlara çıkarmak kodu temizler; modern derleyiciler bunu inline edebilir fakat her zaman edilmez. Abstraksyon katmanları eklendikçe veri lokalitesi bozulur ve CPU önbellek isabeti düşer. Bu eleştirinin pratikte ne anlama geldiğine bakmak gerekir. Genel amaçlı iş uygulamaları için clean code ilkeleri büyük ölçüde geçerlidir. Oyun motoru, veritabanı motoru, ağ yığını veya gömülü sistem yazan bir geliştirici için tablo farklıdır. Bu alanlarda nanosaniyeler önem taşır ve "daha temiz" kod genellikle daha yavaş koddur. Clean code eleştirisi aynı zamanda bağlam körlüğünü hedef alır. Robert C. Martin'in kitabı belirli problem sınıfları için yazılmıştır; fakat öğreticilerde, mentörlük süreçlerinde ve kod incelemelerinde evrensel kural olarak sunulur. Bir oyun geliştiricisine "bu döngü çok uzun, metoda çıkar" demek, sorun çözmek değil, kör uygulama yapmaktır. Temiz kod ile verimli kod arasındaki gerilimi yönetmenin yolu bağlamı okumaktır: sistemin darboğazları nerede, hangi parçalar gerçekten performans kritik, nerede esneklik kabul edilebilir. Bu ayrımı yapamayan geliştirici hem temiz hem de yavaş kod üretir; bu kombinasyon ikisinin en kötüsüdür.