The byte order mark (BOM) is a Unicode character, U+FEFFBYTE ORDER MARK (BOM), whose appearance as a magic number at the start of a text stream can signal several things to a program consuming the text:
BOM use is optional, and, if used, should appear at the start of the text stream.