Skip to main content

MIME Type Lookup — File Extension ⇄ MIME Type, Both Directions

File extension ⇄ MIME type lookup — 130+ types, both directions, copy the exact Content-Type — browser-only

  • Runs locally
  • Category Developer & DevOps
  • Best for Checking file type, size, metadata, and obvious mismatch signals before sharing.
Filter:
98 of 98 types
Images
Portable Network Graphics — lossless raster, transparency.
Images
JPEG lossy photo format. .jpg and .jpeg are identical.
Images
Graphics Interchange Format — 256 colors, animation.
Images
Google WebP — smaller than JPEG/PNG at similar quality.
Images
AV1 Image Format — modern, very high compression.
Imagesutf-8
Scalable Vector Graphics — XML-based, text payload.
Images
Windows / favicon icon format.
Also seen as: image/vnd.microsoft.icon
Images
Windows Bitmap — uncompressed raster.
Images
Tagged Image File Format — print / scanning.
Images
High Efficiency Image — default on modern iPhones.
Also seen as: image/heif
Images
Adobe Photoshop layered document.
Video
MPEG-4 container — the web default for H.264/H.265.
Video
WebM — VP8/VP9/AV1, royalty-free web video.
Video
Apple QuickTime movie container.
Video
Microsoft Audio Video Interleave.
Video
Matroska — flexible multi-track container.
Video
MPEG-1/2 program stream.
Video
MPEG-2 Transport Stream (HLS / Blu-ray segments).
Video
Ogg video container (Theora/VP8).
Video
Flash Video — legacy, mostly retired.
Video
3GPP mobile multimedia container.
Audio
MP3 — the universal lossy audio format.
Audio
Waveform Audio — uncompressed PCM.
Also seen as: audio/x-wav, audio/wave
Audio
Ogg Vorbis/Opus audio.
Audio
Opus — low-latency, high-quality codec.
Audio
AAC audio in an MP4 container.
Also seen as: audio/x-m4a
Audio
Raw Advanced Audio Coding stream.
Audio
Free Lossless Audio Codec.
Audio
WebM audio-only stream.
Audio
MIDI musical instrument data.
Also seen as: audio/x-midi
Documents
Portable Document Format.
Documents
Rich Text Format.
Also seen as: text/rtf
Documents
EPUB e-book (a zipped XHTML bundle).
Office
Legacy Word 97-2003 binary document.
Office
Word document (OOXML).
Office
Legacy Excel 97-2003 spreadsheet.
Office
Excel spreadsheet (OOXML).
Office
Legacy PowerPoint 97-2003 deck.
Office
PowerPoint presentation (OOXML).
Office
OpenDocument text (LibreOffice Writer).
Office
OpenDocument spreadsheet (LibreOffice Calc).
Office
OpenDocument presentation (LibreOffice Impress).
Archives
ZIP archive.
Also seen as: application/x-zip-compressed
Archives
gzip-compressed stream.
Also seen as: application/x-gzip
Archives
Uncompressed tarball.
Archives
gzip-compressed tarball (.tar.gz).
Also seen as: application/x-gtar
Archives
7-Zip archive.
Archives
RAR archive.
Also seen as: application/x-rar-compressed
Archives
bzip2-compressed stream.
Archives
xz (LZMA2) compressed stream.
Archives
Zstandard-compressed stream.
Fonts
Web Open Font Format 1.0.
Fonts
WOFF 2.0 — Brotli-compressed, smaller.
Fonts
TrueType font.
Also seen as: application/x-font-ttf
Fonts
OpenType font.
Also seen as: application/x-font-otf
Fonts
Embedded OpenType (legacy IE).
Code / Webutf-8
HyperText Markup Language.
Code / Webutf-8
Cascading Style Sheets.
Code / Webutf-8
JavaScript. WHATWG mandates text/javascript; application/javascript is the old IANA name.
Also seen as: application/javascript
Code / Webutf-8
TypeScript source — no registered MIME; servers send text/plain. Beware: .ts is ALSO MPEG transport stream.
Also seen as: application/typescript, video/mp2t
Code / Webutf-8
React JSX/TSX source — served as text/plain in dev tooling.
Code / Web
WebAssembly binary module. Must be served with this exact type for streaming compilation.
Code / Webutf-8
PHP source (executed server-side, rarely served raw).
Also seen as: text/x-php
Code / Webutf-8
Python source.
Also seen as: application/x-python-code
Code / Webutf-8
Ruby source.
Also seen as: text/x-ruby
Code / Webutf-8
Shell script.
Also seen as: text/x-shellscript
Code / Webutf-8
Go source.
Code / Webutf-8
Rust source.
Code / Webutf-8
Java source.
Code / Webutf-8
C source / header.
Code / Webutf-8
C++ source.
Data / Configutf-8
JavaScript Object Notation. UTF-8 only — no charset param needed but harmless.
Data / Configutf-8
JSON-LD linked data.
Data / Configutf-8
Extensible Markup Language.
Also seen as: text/xml
Data / Configutf-8
YAML — registered as application/yaml in 2024 (RFC 9512).
Also seen as: text/yaml, application/x-yaml
Data / Configutf-8
TOML config format.
Also seen as: text/x-toml
Data / Configutf-8
Comma-Separated Values.
Data / Configutf-8
Tab-Separated Values.
Data / Configutf-8
iCalendar event / calendar feed.
Data / Configutf-8
vCard contact card.
Data / Configutf-8
RSS feed.
Data / Configutf-8
Atom syndication feed.
Data / Configutf-8
Source map (.js.map / .css.map) — JSON, served as application/json.
Data / Configutf-8
SQL script.
Also seen as: text/x-sql
Data / Config
Apache Parquet columnar data.
Also seen as: application/x-parquet
Textutf-8
Plain text — the safe fallback for unknown text.
Textutf-8
Markdown.
Textutf-8
Config files — no registered type, served as text/plain.
Textutf-8
dotenv file — text/plain. Never expose over HTTP!
Other
Arbitrary binary — the "I do not know what this is" fallback.
Other
Android application package.
Other
macOS disk image.
Other
ISO 9660 CD/DVD image.
Other
Debian / Ubuntu package.
Other
Red Hat / Fedora package.
Other
Adobe Flash movie (retired).
Other
BitTorrent metainfo file.
Other
Windows Installer package.
Also seen as: application/x-msi

What this tool does

A searchable file-extension ⇄ MIME-type reference. Type an extension (png, .mp4, woff2) and get the canonical MIME type you should put in a Content-Type response header, an nginx types block, or a multipart upload. Type a MIME (image/png, application/pdf) — or a wildcard like image/* — and get every extension that maps to it. Covers 130+ types across images, video, audio, documents, Office (docx/xlsx/pptx and OpenDocument), archives (zip/gz/7z/rar/zst), web fonts (woff/woff2/ttf/otf), source code, and data/config formats (json/yaml/toml/csv/ics). Values follow the IANA media-types registry and the WHATWG mime-sniffing standard, with the real-world alternates servers still emit (application/javascript for .js, application/x-gzip for .gz) listed alongside. Text formats are flagged with the ; charset=utf-8 they normally carry, and every row gives a copyable full Content-Type header. Search hits extension, MIME, alternate names, category, and description at once, plus a one-click category filter and a shareable URL that remembers your query. 100% client-side — no upload, no API, no logging. Use it to configure a static server, set a download response header, debug why an upload was rejected, or label an email attachment correctly.

Tool details

Input
Files + Text
The page exposes text boxes, numeric controls, file pickers, or structured inputs depending on the tool.
Output
Live result + Copy + Preview
The result area focuses on usable output, with copy, download, or preview actions when supported.
Privacy
Browser-side processing
The main tool logic does not call an external API, so inputs normally stay in the current tab.
Save / share
Shareable URL state
Key settings are encoded in the URL so another person can reopen the same setup.
Performance budget
Initial JS <= 18 KB
No WASM budget is declared, keeping the tool quick to open on mobile.
Best fit
Developer & DevOps · Developer
Category and role tags drive related tools, internal links, and quick fit checks.

How to use

  1. 1. Input

    Paste or drop your content into the tool panel.

  2. 2. Process

    Click the button. All processing is local in your browser.

  3. 3. Copy / Download

    Copy the result or download to disk in one click.

How MIME Type Lookup fits into your work

Use it before upload, handoff, archive, support review, or any moment where a file needs one local check before it leaves your machine.

File jobs

  • Checking file type, size, metadata, and obvious mismatch signals before sharing.
  • Preparing mixed folders for upload, archive, intake, or review.
  • Keeping sensitive files in the browser instead of sending them to an account-based service.

File checks

  • Do not treat the extension alone as proof of the real file type.
  • Review metadata before a file goes to customers, vendors, or a public page.
  • Keep the original file until the copied, converted, or exported result is verified.

Good next steps

These links move the current task into a more complete workflow.

  1. 1 File MIME Type Inspector Upload files and inspect filename, size, browser MIME type, extension, and magic-byte signature locally. Open
  2. 2 HTTP Status Code Explorer HTTP status code explorer — all 70+ codes with meaning, common causes, real examples, and what to check. Open
  3. 3 File to Base64 Converter Upload a small file and convert it to raw Base64 or a data URL locally for embeds, fixtures, and tests. Open

Real-world use cases

  • Configure nginx to serve a new file type correctly

    You added .webp images or a .wasm module and nginx is serving them as application/octet-stream, so browsers download instead of rendering. Look up the extension here (image/webp, application/wasm), then add it to your types {} block or a dedicated mime.types include, run nginx -t, and reload. WebAssembly in particular MUST be served as application/wasm or streaming compilation breaks — this table flags that exact requirement.

  • Set the right Content-Type on a file download endpoint

    Your API streams a generated report and the browser opens it as gibberish text instead of downloading an xlsx. Look up xlsx, copy the full header (application/vnd.openxmlformats-officedocument. spreadsheetml.sheet), and set it plus a Content-Disposition: attachment. For text exports like CSV, copy the charset-tagged form text/csv; charset=utf-8 so non-ASCII columns survive.

  • Debug why a file upload is rejected

    An upload form returns 415 Unsupported Media Type or 400. Check what MIME the client is actually sending versus what the endpoint expects. This table tells you the canonical value and the historical aliases (for example .js as text/javascript vs application/javascript), so you can match the server's allow-list exactly instead of guessing.

  • Label an email or message attachment correctly

    A mail client or a chat API needs an explicit MIME type for each attachment, and the wrong one makes a PDF arrive as an unopenable blob. Look up the extension, copy the MIME, and attach with that Content-Type so the recipient's client previews it inline instead of forcing a download or hiding it entirely.

  • Pick the fallback type for an unknown or generated file

    You are generating files server-side and some have no clean extension. When you genuinely cannot identify the content, the safe default is application/octet-stream (forces a download). When you can identify it, set the specific type so browsers render it. This table shows both the specific values and the octet-stream fallback in one place.

Common pitfalls

  • Sending application/javascript for .js — the WHATWG standard mandates text/javascript. Browsers tolerate the old name but linters and strict servers flag it.

  • Forgetting ; charset=utf-8 on text types (text/html, text/csv, application/json). JSON is UTF-8 by spec, but CSV and HTML need it or non-ASCII bytes get mojibake.

  • Treating the file extension as authoritative. The extension is a hint; a renamed file still carries its original bytes. To verify the real type, read the magic bytes with the File MIME Type Inspector.

  • Using application/octet-stream when a specific type exists. It forces a download and blocks inline preview — only use it deliberately, not as a lazy default.

Privacy

This tool is a static lookup table baked into the page — there is no server call, no file reading, and no logging of what you search. The only data that can leave your browser is the optional shareable URL, which encodes your current search term (for example ?q=image/png) in the query string so a colleague lands on the same filtered view. That term is harmless for normal lookups, but if you ever search something sensitive, copy the result manually rather than sharing the URL, since query strings show up in browser history and server access logs.

FAQ

Tool combos

Folks in your role tend to reach for these alongside this tool.

Made by Toolora · 100% client-side · Updated 2026-06-14