Tach!
Der Hauptgrund dafür ist meist ein nicht richtig konfiguriertes System (PHP findet den MTA (Mail Transfer Agent) nicht).
Das sehe ich allerdings anders. "Meist" arbeitet man mit einem fertig eingerichteten System eines Massenhosters. Die wenigstens werden ihre Server selbst aufsetzen und konfigurieren. Für den durchschnittlichen Anwender ist das einfach zu viel.
Welchen anderen Grund siehst du denn, dass mail() misslingen kann? Gut, dass der MTA die Annahme verweigert, wäre noch ein Grund, aber den halte ich für relativ unwahrscheinlich. Wenn man mit einem fertig eingerichteten System arbeitet, wird man üblicherwiese auf keine Ablehnung seitens des MTA treffen. Wenn doch solch ein Szenario vorliegt, dann kann das sowie nur mit dem Systemverwalter geklärt werden.
Anders sieht es natürlich mit lokalen Testservern (XAMPP u.ä.) aus. Da wirst du wieder recht haben.
Das vermute ich auch im vorliegenden Fall. Wenn ich meine gefühlte Ursachen-für-false-Statistik befrage, dominieren da eindeutig Windows-Systeme, auf denen kein MTA installiert wurde.
dedlfix.