MIME Type Reference

Searchable reference for MIME types with extension mapping, RFC sources, and ready-to-paste Nginx, Apache, and Caddy config snippets. Runs entirely in your browser, works offline.

ZERO UPLOAD · ALL LOCAL
  1. Type a MIME string (e.g. application/json), file extension (e.g. .wasm), or keyword (e.g. "protobuf") to search the database.
  2. Use the category pills (Application, Audio, Font, Image, Model, Text, Video, Multipart) to browse all types in a category.
  3. Click Details on any card to expand the description, spec link, and server configuration snippets in a full-width panel.
  4. Click Copy next to any snippet block to copy the Nginx, Apache, .htaccess, or Caddy directive to your clipboard.

APPLICATION (100 types)

application/json
.json
application/xml
.xml .xsl .xslt
application/pdf
.pdf
application/wasm
.wasm
application/javascript
.js .mjs .cjs
application/zip
.zip
application/gzip
.gz .tgz
application/x-tar
.tar
application/x-7z-compressed
.7z
application/vnd.rar
.rar
application/x-bzip2
.bz2
application/vnd.openxmlformats-officedocument.wordprocessingml.document
.docx
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xlsx
application/vnd.openxmlformats-officedocument.presentationml.presentation
.pptx
application/msword
.doc
application/vnd.ms-excel
.xls
application/vnd.ms-powerpoint
.ppt
application/octet-stream
.bin .exe .dll
application/x-www-form-urlencoded
application/cbor
.cbor
application/x-protobuf
.proto .pb
application/grpc
application/graphql-response+json
application/vnd.api+json
application/ld+json
.jsonld
application/hal+json
application/jwt
application/manifest+json
.webmanifest
application/rtf
.rtf
application/problem+json
application/json-patch+json
application/merge-patch+json
application/vnd.geo+json
.geojson
application/yaml
.yaml .yml
application/sql
.sql
application/epub+zip
.epub
application/java-archive
.jar
application/vnd.oasis.opendocument.text
.odt
application/vnd.oasis.opendocument.spreadsheet
.ods
application/vnd.oasis.opendocument.presentation
.odp
application/x-ndjson
.ndjson .jsonl
application/vnd.apple.mpegurl
.m3u8
application/dash+xml
.mpd
application/rss+xml
.rss
application/atom+xml
.atom
application/x-apple-diskimage
.dmg
application/x-debian-package
.deb
application/x-rpm
.rpm
application/x-sh
.sh
application/ecmascript
application/toml
.toml
application/zstd
.zst
application/x-xz
.xz
application/x-bzip
.bz
application/x-lzma
.lzma
application/x-iso9660-image
.iso
application/vnd.ms-cab-compressed
.cab
application/vnd.android.package-archive
.apk
application/x-msdownload
.msi
application/vnd.apple.installer+xml
.mpkg
application/x-httpd-cgi
.cgi
application/vnd.google-earth.kml+xml
.kml
application/vnd.google-earth.kmz
.kmz
application/vnd.sqlite3
.sqlite .sqlite3 .db
application/msgpack
.msgpack
application/schema+json
application/wsdl+xml
.wsdl
application/jose+json
application/x-pkcs12
.p12 .pfx
application/pkix-cert
.cer .der
application/x-pem-file
.pem .crt .key
application/pkcs8
.p8
application/pkcs10
.p10 .csr
application/postscript
.ps .eps .ai
application/x-latex
.latex .ltx
application/x-tex
.tex
application/x-dvi
.dvi
application/fits
.fits .fit .fts
application/vnd.oasis.opendocument.graphics
.odg
application/vnd.oasis.opendocument.chart
.odc
application/vnd.oasis.opendocument.formula
.odf
application/vnd.ms-project
.mpp .mpt
application/vnd.visio
.vsd .vst .vss .vsw
application/vnd.ms-access
.mdb
application/vnd.openxmlformats-officedocument.wordprocessingml.template
.dotx
application/vnd.ms-word.document.macroenabled.12
.docm
application/vnd.ms-excel.sheet.macroenabled.12
.xlsm
application/vnd.apple.pages
.pages
application/vnd.apple.numbers
.numbers
application/vnd.apple.keynote
.key
application/typescript
.ts
application/x-perl
.pl .pm
application/x-python-code
.pyc .pyo
application/x-csh
.csh
application/x-troff
.tr .roff .man
application/trig
.trig
application/n-triples
.nt
application/smil+xml
.smil .smi
application/vnd.mozilla.xul+xml
.xul
application/vnd.lotus-1-2-3
.123 .wks

AUDIO (23 types)

audio/mpeg
.mp3 .mpga
audio/ogg
.ogg .oga
audio/wav
.wav
audio/flac
.flac
audio/aac
.aac
audio/opus
.opus
audio/webm
.weba
audio/midi
.mid .midi
audio/mp4
.m4a .m4b .mp4a
audio/3gpp
.3gp .3gpp
audio/aiff
.aif .aiff
audio/x-ms-wma
.wma
audio/amr
.amr
audio/speex
.spx
audio/ac3
.ac3
audio/vorbis
audio/basic
.au .snd
audio/x-caf
.caf
audio/mpegurl
.m3u
audio/vnd.dts
.dts
audio/mp2
.mp2
audio/3gpp2
.3g2
audio/x-realaudio
.ra .ram

FONT (10 types)

font/woff
.woff
font/woff2
.woff2
font/ttf
.ttf
font/otf
.otf
application/vnd.ms-fontobject
.eot
font/collection
.ttc
font/sfnt
.sfnt
application/x-font-truetype
.ttf
application/x-font-opentype
.otf
application/x-font-woff
.woff

IMAGE (35 types)

image/jpeg
.jpg .jpeg .jfif
image/png
.png
image/gif
.gif
image/webp
.webp
image/avif
.avif
image/svg+xml
.svg .svgz
image/vnd.microsoft.icon
.ico
image/x-icon
.ico
image/bmp
.bmp
image/tiff
.tiff .tif
image/heic
.heic
image/heif
.heif
image/apng
.apng
image/jxl
.jxl
image/jp2
.jp2 .j2k .jpf
image/jpx
.jpx
image/vnd.djvu
.djvu .djv
image/vnd.adobe.photoshop
.psd
image/x-portable-bitmap
.pbm
image/x-portable-graymap
.pgm
image/x-portable-pixmap
.ppm
image/x-xcf
.xcf
image/ktx
.ktx
image/ktx2
.ktx2
image/x-exr
.exr
image/x-rgb
.rgb .rgba .sgi
image/x-xbitmap
.xbm
image/x-pcx
.pcx
image/vnd.wap.wbmp
.wbmp
image/x-tga
.tga .tpic
image/vnd.ms-photo
.jxr .hdp .wdp
image/x-win-bitmap
.cur
image/x-emf
.emf
image/wmf
.wmf
image/vnd.radiance
.hdr .rgbe

MODEL (19 types)

model/gltf+json
.gltf
model/gltf-binary
.glb
model/obj
.obj
model/stl
.stl
model/usd
.usd .usda .usdc
model/vnd.collada+xml
.dae
model/vnd.usdz+zip
.usdz
model/mtl
.mtl
model/vnd.dwf
.dwf
model/iges
.igs .iges
model/step
.stp .step .p21
model/step+xml
.stpx .stpxz
model/x3d+xml
.x3d
model/x3d+binary
.x3db .x3dbz
model/x3d-vrml
.x3dv .x3dvz
model/vnd.3mf
.3mf
model/vnd.fbx
.fbx
model/vnd.opengex
.ogex
model/JT
.jt

TEXT (33 types)

text/html
.html .htm
text/css
.css
text/csv
.csv
text/plain
.txt .text .conf .log
text/markdown
.md .markdown
text/calendar
.ics .ical .ifb
text/vcard
.vcf .vcard
text/javascript
.js
text/event-stream
text/tab-separated-values
.tsv
text/xml
.xml
text/x-python
.py .pyw
text/x-java-source
.java
text/x-c
.c .h
text/x-ruby
.rb
text/x-go
.go
text/x-rust
.rs
text/x-kotlin
.kt .kts
text/x-swift
.swift
text/x-scala
.scala .sc
text/x-php
.php .php3 .php4 .php5 .phtml
text/x-diff
.diff .patch
text/uri-list
.uri .urls .uris
text/x-rst
.rst
text/x-asciidoc
.adoc .asciidoc
text/x-nfo
.nfo
text/x-asm
.asm .s
text/troff
.roff .me .ms .mm
text/x-ini
.ini .cfg .inf
text/x-tcl
.tcl .tk
text/x-fortran
.f .f90 .for .f95
text/x-yaml
.yaml .yml
text/cache-manifest
.appcache .manifest

VIDEO (21 types)

video/mp4
.mp4 .m4v
video/webm
.webm
video/ogg
.ogv
video/x-msvideo
.avi
video/quicktime
.mov .qt
video/x-matroska
.mkv .mk3d
video/mp2t
.ts .mts .m2ts
video/mpeg
.mpeg .mpg
video/3gpp
.3gp .3gpp
video/3gpp2
.3g2 .3gp2
video/x-ms-wmv
.wmv
video/x-ms-asf
.asf .asx
video/vnd.avi
.avi
video/iso.segment
.m4s
video/x-dv
.dv .dif
video/x-ms-vob
.vob
video/H264
video/H265
video/AV1
video/x-flv
.flv
video/x-f4v
.f4v

MULTIPART (9 types)

multipart/form-data
multipart/byteranges
multipart/mixed
multipart/alternative
multipart/digest
multipart/related
multipart/signed
multipart/encrypted
multipart/report
No MIME types match your search.

MIME type categories

MIME types are grouped into eight top-level categories, and each one describes a different class of content that a browser or client knows how to interpret.1 The category prefix in a MIME string tells you, at a glance, whether you are dealing with data, media, text, or a composite message.

Media and document types

application/ is the largest category, covering structured data, executables, archives, and API payload formats ranging from JSON and PDF to ZIP archives and WebAssembly. By contrast, audio/ and video/ cover time-based media: audio/mpeg, Opus, AAC, FLAC, and WAV are the most common audio containers, while MP4 with H.264 remains the most compatible web video format and WebM serves as the open alternative.

image/ covers still images and vector graphics, where AVIF and WebP offer the best compression for modern browsers and SVG (image/svg+xml) is the standard for scalable vector artwork. Because the image category spans both raster and vector formats, choosing the right MIME string matters when you are configuring server caching headers or setting up content negotiation for responsive image delivery. Serving an AVIF file as image/jpeg, for instance, causes some browsers to reject the decode entirely.

Fonts, models, text, and composites

For downloadable fonts, font/ is the category to check: WOFF2 (font/woff2) is the preferred format because it uses Brotli compression and is supported by all modern browsers,2 while the older EOT format (application/vnd.ms-fontobject) is deprecated. Older registrations like application/font-woff and application/font-sfnt have also been moved into the font/ top-level type under RFC 8081, which reorganized font media types into their own category to avoid mixing them with generic application/ types.

The remaining categories serve more specialized roles. model/ covers 3D scene and geometry formats such as glTF, GLB, STL, and USDZ, while text/ groups human-readable formats with specific syntax like HTML, CSS, CSV, and Markdown. Finally, multipart/ covers composite messages: multipart/form-data is required for HTML file uploads,3 and multipart/byteranges appears in 206 Partial Content responses.4

Server configuration

Web servers ship with a built-in MIME type table that covers most common types, but you still need to add explicit configuration when serving newer formats such as WebAssembly, modern image formats like AVIF and WebP, WOFF2 fonts, and 3D assets like glTF. Without those entries, the server falls back to a generic Content-Type and the browser may refuse to handle the file correctly.

Nginx and Apache

In Nginx, you add or override entries with a types block placed inside http {} or server {}, and the snippet format shown in each detail panel is the exact directive to paste into that block.5 In Apache, the equivalent is the AddType directive, which works in httpd.conf, a virtual host config, or a per-directory .htaccess file.6 Both servers merge custom entries with their built-in table, so you only need to declare the types that are missing or that you want to override.

A concrete mapping ties the abstract rule to a real config line. The .wasm extension maps to application/wasm, the type IANA registers for WebAssembly binaries. Adding it to an Nginx types block looks like types { application/wasm wasm; } placed inside the http {} or server {} block covering your site. Apache's equivalent is a single line, AddType application/wasm .wasm, dropped into httpd.conf, a virtual host block, or a per-directory .htaccess file.

Caddy

For Caddy v1, the mime directive maps an extension to a MIME type directly inside the Caddyfile, which keeps the rule visible alongside the rest of your site configuration. The snippets shown for Caddy use this exact format,7 so you can paste them in without renaming variables or adjusting paths. Caddy v2 handles MIME types differently through its HTTP app configuration, but the snippets provided here target the v1 directive syntax that many existing deployments still rely on.

Deprecated types

Several MIME types have been formally superseded or aligned with newer registrations as the web platform has evolved. The most common cases you will encounter are application/javascript and application/ecmascript being replaced by text/javascript under RFC 9239,8 text/xml aligned as an alias for application/xml under RFC 7303,9 and image/x-icon replaced by image/vnd.microsoft.icon for favicon requests.

EOT fonts (application/vnd.ms-fontobject) are another deprecated family, and all browsers that once supported EOT now support WOFF2, so serving EOT adds no value for any modern user agent. Deprecated entries in this reference are marked with a yellow warning banner in the detail panel, and each one links to the spec that documents the recommended replacement so you can update your server configuration with confidence and avoid serving stale types to modern browsers.

MIME types and browser security

Browsers treat MIME types as part of their security model. WebAssembly binaries must arrive as application/wasm or the browser refuses to compile them, producing a hard error with no fallback.10 Web fonts loaded from a different origin require a matching MIME type together with a permissive Cross-Origin-Resource-Sharing header, or the browser silently rejects them and the page falls back to system fonts. Each of these restrictions exists to prevent content-type confusion attacks, where a file with one declared type is treated as another by the browser.11 Scripts served without a recognized JavaScript MIME type will not execute when a strict Content Security Policy is in place.12

The X-Content-Type-Options: nosniff response header reinforces your declared MIME type. Without it, a browser may detect executable content inside a file and act on that detection regardless of what Content-Type says. Setting nosniff tells the browser to trust your declared type exactly. Combining a correct Content-Type with nosniff closes the gap between what you declare and what the browser assumes. CapyToolkit's server config snippets already include nosniff in the recommended directives for file types where this protection matters most.13

Picked the Right Content Type Checklist

  • WebAssembly served as application/wasm Without this exact type, the browser refuses to compile the module and produces a hard error with no fallback.
  • Modern image formats declared correctly AVIF and WebP need their own MIME types. Serving AVIF as image/jpeg makes some browsers reject the decode entirely.
  • WOFF2 fonts served as font/woff2 The current preferred font format uses Brotli compression and needs the right type to load across modern browsers.
  • X-Content-Type-Options: nosniff set This header stops the browser from guessing a different content type than the one you declared.

Check your own server's response headers against these four before assuming a missing file is a content bug rather than a MIME type.

Sources
  1. 1.

    IANA, "Media Types," iana.org, accessed June 2026. https://www.iana.org/assignments/media-types/media-types.xhtml

  2. 2.

    W3C, "WOFF File Format 2.0," W3C Recommendation, w3.org, August 2024. https://www.w3.org/TR/WOFF2/

  3. 3.

    IETF Datatracker, "Returning Values from Forms: multipart/form-data," RFC 7578, IETF, July 2015. https://datatracker.ietf.org/doc/rfc7578/

  4. 4.

    R. Fielding, M. Nottingham, and J. Reschke, "HTTP Semantics," RFC 9110, IETF, June 2022. https://datatracker.ietf.org/doc/rfc9110/

  5. 5.

    nginx, "Module ngx_http_core_module: types," nginx.org, accessed June 2026. https://nginx.org/en/docs/http/ngx_http_core_module.html#types

  6. 6.

    Apache Software Foundation, "mod_mime: AddType," httpd.apache.org, accessed June 2026. https://httpd.apache.org/docs/2.4/mod/mod_mime.html#addtype

  7. 7.

    Caddy Server, "http.mime," caddy-docs.netlify.app, accessed June 2026. https://caddy-docs.netlify.app/v1/docs/mime

  8. 8.

    M. Miller, M. Borins, M. Bynens, and B. Farias, "Updates to ECMAScript Media Types," RFC 9239, IETF, May 2022. https://www.rfc-editor.org/rfc/rfc9239

  9. 9.

    H. Thompson and C. Lilley, "XML Media Types," RFC 7303, IETF, July 2014. https://www.rfc-editor.org/rfc/rfc7303

  10. 10.

    W3C, "CSS Fonts Module Level 3," W3C Recommendation, w3.org, September 2018. https://www.w3.org/TR/2018/REC-css-fonts-3-20180920/

  11. 11.

    IANA, "application/wasm Media Type," iana.org, accessed June 2026. https://www.iana.org/assignments/media-types/application/wasm

  12. 12.

    MDN, "Content-Security-Policy: script-src directive," developer.mozilla.org, December 2025. https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Content-Security-Policy/script-src

  13. 13.

    MDN, "X-Content-Type-Options header," developer.mozilla.org, March 2026. https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/X-Content-Type-Options

FAQ