Why not utf-8-sig, though? It handles optional BOMs. Had to fix a script last week that choked on it.
At this point nothing ought to be inserting BOMs in utf-8. It's not recommended, and I think choking on it is reasonable behaviour these days.
Why were BOMs ever allowed for UTF-8?