This table only lists the commonly used MIME types. For a complete list, refer to the Documentation.
Browsers use the MIME type, not the file extension, to determine how to process a URL, so it's important that web servers send the correct MIME type in the response's Content-Type header.
If this is not correctly configured, browsers are likely to misinterpret the contents of files, sites will not work correctly, and downloaded files may be mishandled.
Extension | MIME Type | Kind of Document |
---|---|---|
.3gp | video/3gpp audio/3gpp | 3GPP audio/video container |
.3g2 | video/3gpp2 audio/3gpp2 | 3GPP2 audio/video container |
.7z | application/x-7z-compressed | 7-zip archive |
.aac | audio/aac | AAC audio |
.abw | application/x-abiword | AbiWord document |
.ai | application/postscript | |
.aif | audio/x-aiff | |
.aifc | audio/x-aiff | |
.aiff | audio/x-aiff | |
.arc | application/x-freearc | Archive document (multiple files embedded) |
.asf | video/x-ms-asf | |
.asr | video/x-ms-asf | |
.asx | video/x-ms-asf | |
.au | audio/basic | |
.avi | video/x-msvideo | AVI: Audio Video Interleave |
.avif | image/avif | AVIF image |
.axs | application/olescript | |
.azw | application/vnd.amazon.ebook | Amazon Kindle eBook format |
.bin | application/octet-stream | Any kind of binary data |
.bmp | image/bmp | Windows OS/2 Bitmap Graphics |
.bz | application/x-bzip | BZip archive |
.bz2 | application/x-bzip2 | BZip2 archive |
.c | text/plain | |
.cer | application/x-x509-ca-cert | |
.class | application/octet-stream | |
.crl | application/pkix-crl | |
.crt | application/x-x509-ca-cert | |
.csh | application/x-csh | C-Shell script |
.css | text/css | Cascading Style Sheets (CSS) |
.csv | text/csv | Comma-separated values (CSV) |
.dcr | application/x-director | |
.der | application/x-x509-ca-cert | |
.dll | application/x-msdownload | |
.doc | application/msword | Microsoft Word |
.docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document | Microsoft Word (OpenXML) |
.eot | application/vnd.ms-fontobject | MS Embedded OpenType fonts |
.epub | application/epub+zip | Electronic publication (EPUB) |
.exe | application/octet-stream | |
.gif | image/gif | Graphics Interchange Format (GIF) |
.gtar | application/x-gtar | |
.gz | application/x-gzip | GZip Compressed Archive |
.htm .html | text/html | HyperText Markup Language (HTML) |
.ico | image/vnd.microsoft.icon | Icon format |
.ics | text/calendar | iCalendar format |
.ief | image/ief | |
.jar | application/java-archive | Java Archive (JAR) |
.jpeg .jpg | image/jpeg | JPEG images |
.js | text/javascript | JavaScript |
.json | application/json | JSON format |
.jsonld | application/ld+json | JSON-LD format |
.latex | application/x-latex | |
.m3u | audio/x-mpegurl | |
.man | application/x-troff-man | |
.mdb | application/x-msaccess | |
.mht | message/rfc822 | |
.mhtml | message/rfc822 | |
.mid .midi | audio/midi audio/x-midi | Musical Instrument Digital Interface (MIDI) |
.mjs | text/javascript | JavaScript module |
.mp2 | video/mpeg | |
.mp3 | audio/mpeg | MP3 audio |
.mp4 | video/mp4 | MP4 video |
.mpa | video/mpeg | |
.mpe | video/mpeg | |
.mpeg | video/mpeg | MPEG Video |
.mpg | video/mpeg | |
.mpkg | application/vnd.apple.installer+xml | Apple Installer Package |
.mpp | application/vnd.ms-project | |
.odp | application/vnd.oasis.opendocument.presentation | OpenDocument presentation document |
.ods | application/vnd.oasis.opendocument.spreadsheet | OpenDocument spreadsheet document |
.odt | application/vnd.oasis.opendocument.text | OpenDocument text document |
.oga | audio/ogg | OGG audio |
.ogv | video/ogg | OGG video |
.ogx | application/ogg | OGG |
.opus | audio/opus | Opus audio |
.otf | font/otf | OpenType font |
.p10 | application/pkcs10 | |
.p12 | application/x-pkcs12 | |
.p7b | application/x-pkcs7-certificates | |
.p7c | application/x-pkcs7-mime | |
.p7m | application/x-pkcs7-mime | |
.p7r | application/x-pkcs7-certreqresp | |
.p7s | application/x-pkcs7-signature | |
.pbm | image/x-portable-bitmap | |
application/pdf | Adobe Portable Document Format (PDF) | |
.pfx | application/x-pkcs12 | |
.php | application/x-httpd-php | Hypertext Preprocessor (Personal Home Page) |
.png | image/png | Portable Network Graphics |
.ppt | application/vnd.ms-powerpoint | Microsoft PowerPoint |
.pptx | application/vnd.openxmlformats-officedocument.presentationml.presentation | Microsoft PowerPoint (OpenXML) |
.pub | application/x-mspublisher | |
.qt | video/quicktime | |
.rar | application/x-rar-compressed | RAR archive |
.roff | application/x-troff | |
.rtf | application/rtf | Rich Text Format (RTF) |
.rtx | text/richtext | |
.sh | application/x-sh | Bourne shell script |
.spc | application/x-pkcs7-certificates | |
.svg | image/svg+xml | Scalable Vector Graphics (SVG) |
.swf | application/x-shockwave-flash | Adobe Flash document |
.t | application/x-troff | |
.tar | application/x-tar | Tape Archive (TAR) |
.tcl | application/x-tcl | |
.tex | application/x-tex | |
.texi .texinfo | application/x-texinfo | |
.tgz | application/x-compressed | |
.tif .tiff | image/tiff | Tagged Image File Format (TIFF) |
.tr | application/x-troff | |
.ts | video/mp2t | MPEG transport stream |
.ttf | font/ttf | TrueType Font |
.tsv | text/tab-separated-values | |
.txt | text/plain | Text |
.vsd | application/vnd.visio | Microsoft Visio |
.wav | audio/wav | Waveform Audio Format |
.weba | audio/webm | WEBM audio |
.webm | video/webm | WEBM video |
.webp | image/webp | WEBP image |
.woff | font/woff | Web Open Font Format (WOFF) |
.woff2 | font/woff2 | Web Open Font Format (WOFF) |
.xhtml | application/xhtml+xml | XHTML |
.xls | application/vnd.ms-excel | Microsoft Excel |
.xlsx | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | Microsoft Excel (OpenXML) |
.xml | application/xml text/xml | application/xml is recommended as of RFC 7303 (section 4.1), but text/xml is still used sometimes. |
.xul | application/vnd.mozilla.xul+xml | XUL |
.zip | application/zip | ZIP archive |
The list of common MIME types lists the common MIME types, their corresponding file extensions and document types.
A media type (also known as a Multipurpose Internet Mail Extensions or MIME type) indicates the
nature and format of a document, file, or assortment of bytes. MIME types are defined and
standardized in IETF's RFC 6838.
The Internet Assigned Numbers Authority (IANA) is responsible for all official MIME types, and
you can find the most up-to-date and complete list at their Media Types page.
A MIME type most-commonly consists of just two parts: a type and a subtype, separated by a slash
(/) — with no whitespace between: type/subtype.Each type has its
own set of possible subtypes. A MIME type always has both a type and a subtype, never just one
or the other.
An optional parameter can be added to provide additional details:type/subtype;parameter=value.
For example, for any MIME type whose main type is text, you can add the optional charset
parameter to specify the character set used for the characters in the data. If no charset is
specified, the default is ASCII (US-ASCII) unless overridden by the user agent's settings. To
specify a UTF-8 text file, the MIME type text/plain;charset=UTF-8
is used.
MIME types are case-insensitive but are traditionally written in lowercase. The parameter values
can be case-sensitive.
Common type list
Type | Description | Example |
---|---|---|
text | Text-only data including any human-readable content, source code, or textual data such as comma-separated value (CSV) formatted data. Examples include: text/plain, text/csv, and text/html. (Registration at IANA) | text/plain, text/html, text/css, text/javascript |
image | Image or graphical data including both bitmap and vector still images as well as animated versions of still image formats such as animated GIF or APNG. Common examples are image/jpeg, image/png, and image/svg+xml. (Registration at IANA) | image/jpeg, image/gif, image/png |
video | Video data or files. | video/webm, video/ogg, video/mp4 |
audio | Audio or music data. | audio/midi, audio/mpeg, audio/webm, audio/ogg, audio/wav |
application | Any kind of binary data that doesn't fall explicitly into one of the other types; either data that will be executed or interpreted in some way or binary data that requires a specific application or category of application to use. Generic binary data (or binary data whose true type is unknown) is application/octet-stream. Other common examples include application/pdf, application/pkcs8, and application/zip. (Registration at IANA). | application/octet-stream, application/pkcs12, application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf |
multipart | Multipart types indicate a category of document broken into pieces, often with
different MIME types; they can also be used — especially in email scenarios — to
represent multiple, separate files which are all part of the same transaction. They
represent a composite document.
Except for multipart/form-data, used in the POST method of HTML Forms, and multipart/byteranges, used with 206 Partial Content to send part of a documen. |
multipart/form-data, multipart/byteranges |
Common mime list
MIME | Description |
---|---|
application/octet-stream | This is the default for binary files. As it means unknown binary file, browsers usually don't execute it, or even ask if it should be executed. They treat it as if the Content-Disposition header was set to attachment, and propose a "Save As" dialog. |
text/plain | This is the default for textual files. Even if it really means "unknown textual file," browsers assume they can display it. |
text/css | CSS files used to style a Web page must be sent with text/css. If a server doesn't recognize the .css suffix for CSS files, it may send them with text/plain or application/octet-stream MIME types. If so, they won't be recognized as CSS by most browsers and will be ignored. |
text/html | All HTML content should be served with this type. Alternative MIME types for XHTML (like application/xhtml+xml) are mostly useless nowadays. |
text/javascript | Per the current relevant standards, JavaScript content should always be served using
the MIME type text/javascript. No other MIME types are considered valid for
JavaScript, and using any MIME type other thantext/javascript may result in scripts
that do not load or run.
You may find some JavaScript content incorrectly served with a charset parameter as part of the MIME type — as an attempt to specify the character set for the script content. That charset parameter isn't valid for JavaScript content, and in most cases will result in a script failing to load. |
image/gif | Graphics Interchange Format (GIF). |
image/jpeg | Joint Photographic Expert Group image (JPEG). |
image/png | Portable Network Graphics (PNG). |
image/svg+xml | Scalable Vector Graphics (SVG). |
audio/wave, audio/wav, audio/x-wav, audio/x-pn-wav | An audio file in the WAVE container format. |
audio/webm | An audio file in the WebM container format. |
video/webm | A video file, possibly with audio, in the WebM container format. |
audio/ogg | An audio file in the Ogg container format. |
video/ogg | A video file, possibly with audio, in the Ogg container format. |
application/ogg | An audio or video file using the Ogg container format. |
application/json | JSON data. |
multipart/form-data | The multipart/form-data type can be used when sending the values of a completed HTML Form from browser to server. As a multipart document format, it consists of different parts, delimited by a boundary (a string starting with a double dash --). Each part is its own entity with its own HTTP headers, Content-Disposition, and Content-Type for file uploading fields. |
multipart/byteranges | The multipart/byteranges MIME type is used to send partial responses to the browser. When the 206 Partial Content status code is sent, this MIME type indicates that the document is composed of several parts, one for each of the requested ranges. Like other multipart types, the Content-Type uses a boundary to separate the pieces. Each piece has a Content-Type header with its actual type and a Content-Range of the range it represents. |