Email is the most constrained delivery medium in common use. The rendering engine (HTML/CSS from 2007), the attachment limits (set decades ago and barely updated), and the image format support (three formats, no more) force specific format choices that don't apply anywhere else.
This guide covers what formats work in email, what the actual size limits are, and the encoding overhead that makes your 18MB attachment too large for a 25MB limit.
Attachment Size Limits
Every email provider enforces attachment size limits. These limits apply to the encoded size, not the raw file size — an important distinction.
Provider Attachment Limits
| Provider | Max Attachment | Max Message (total) | Workaround |
|---|---|---|---|
| Gmail | 25MB | 25MB | Auto-converts to Google Drive link |
| Outlook.com | 20MB | 20MB | OneDrive link option |
| Microsoft 365 | 150MB (configurable) | 150MB | SharePoint/OneDrive |
| Yahoo Mail | 25MB | 25MB | No auto cloud link |
| Apple iCloud Mail | 20MB | 20MB | Mail Drop (up to 5GB via iCloud) |
| ProtonMail | 25MB | 25MB | No auto cloud link |
Base64 Encoding: The Hidden 33% Tax
Email attachments are encoded in Base64 for transmission (MIME standard). Base64 converts binary data to ASCII text, which increases size by approximately 33%. A 18MB file becomes ~24MB after Base64 encoding, which exceeds Gmail's 25MB limit with headers and metadata added.
The practical limit: To stay within a 25MB provider limit, keep your raw attachment under ~18MB. For 20MB limits, keep under ~14.5MB. This catches people regularly — they compress a file to 20MB, try to send via Gmail, and it fails because the encoded size exceeds 25MB.
Multiple attachments: The limit is for the total message, not per-attachment. Three 6MB files (18MB raw, ~24MB encoded) barely fit in a 25MB Gmail message. Four would fail.
Image Formats in HTML Email
Email HTML rendering is stuck in 2007. The CSS and HTML support varies wildly across email clients, and image format support is no exception.
Supported Image Formats
Universally supported:
- JPEG/JPG: Works everywhere. Use for photographs and images with gradients. Quality 80-85 for email (file size matters more than perfection).
- PNG: Works everywhere. Use for logos, screenshots, and images with transparency. PNG-8 (indexed, 256 colors) for simple graphics with transparency. PNG-24 for full-color with alpha.
- GIF: Works everywhere. Animated GIFs play in most email clients (Outlook on Windows is the notable exception — it shows only the first frame). Use for simple animations, but keep file sizes small (under 1MB ideally).
Not supported in email:
- WebP: Not supported by Outlook (Windows/Mac), most versions of Yahoo Mail, and older email clients. About 30-40% of email opens will not display WebP images. Do not use in HTML email.
- AVIF: Even worse support than WebP. Not safe for email until Outlook supports it (no timeline).
- SVG: Blocked by most email clients as a security risk (SVG can contain JavaScript). Gmail, Outlook, and Yahoo all strip SVG from email HTML. Convert to PNG for email.
- BMP: Technically rendered but enormous file sizes. Never use.
Inline vs Linked Images
Linked images (hosted): The <img src="https://..."> approach. Images hosted on a web server, referenced by URL. Pros: no impact on message size, trackable (you can detect when images are loaded). Cons: blocked by default in many email clients ("click to download images"), broken if the server goes down.
CID-embedded images: Images included as MIME attachments and referenced by Content-ID (<img src="cid:logo123">). The image travels with the email. Pros: always displayed (no image blocking), works offline. Cons: increases message size (Base64 encoded), some clients handle CID inconsistently.
Base64 inline images: Images embedded directly in the HTML as data URIs (<img src="data:image/png;base64,...">). Pros: self-contained, no external references. Cons: Gmail strips data URI images, massively bloats HTML size, poor client support. Avoid for email.
Recommendation: Use hosted images for marketing/newsletter emails (trackable, lightweight). Use CID-embedded for transactional emails where display reliability is critical (order confirmations, receipts).
Image Dimensions for Email
Email width: Design for 600px width (the safe maximum across all clients). Some modern clients support wider, but 600px guarantees no horizontal scrolling anywhere.
Retina: For crisp images on Retina/HiDPI screens, provide images at 2x display dimensions. A 600px-wide banner should be a 1200px-wide image displayed at width="600". Use the HTML width attribute, not CSS (Outlook ignores CSS width on images).
File size budget: Total email size under 100KB for fast loading (excluding tracked hosted images). Each inline image should be under 200KB. A full newsletter: 300–500KB total including all images.
Document Attachments: What to Send
Not all file formats are created equal for email attachments. Some get blocked by spam filters or antivirus, some can't be opened by the recipient, and some are larger than necessary.
Safe Attachment Formats
| Content | Best Format | Why | Avoid |
|---|---|---|---|
| Documents | Universal, preserves layout | .doc (legacy), .pages | |
| Spreadsheets | XLSX or CSV | Universal, editable | .numbers, .ods |
| Presentations | PDF or PPTX | PDF for viewing, PPTX for editing | .key, .odp |
| Images | JPG or PNG | Universal, reasonable size | TIFF (too large), PSD |
| Compressed files | ZIP | Universal extraction | .7z, .rar, .tar.gz |
Blocked formats: Most email providers block executable attachments (.exe, .bat, .cmd, .msi, .scr, .js, .vbs). Gmail also blocks .zip files containing executables. Some corporate email filters block macros-enabled Office files (.docm, .xlsm, .pptm).
Convert DOCX to PDF | Convert XLSX to CSV | Convert PPTX to PDF
Calendar Invites and Contacts
Two specialized formats handle structured data exchange via email.
ICS: Calendar Invites
ICS (iCalendar, RFC 5545) is the universal calendar invite format. When you receive a meeting invitation, it's an ICS attachment (or inline MIME part) containing: event title, start/end time (with timezone), location, description, organizer, attendees, recurrence rules, and alarms/reminders.
File structure: Plain text with a defined syntax. A basic event is ~500 bytes. Events with long descriptions or many attendees can be a few KB.
Compatibility: Google Calendar, Outlook, Apple Calendar, and every major calendar app can read and process ICS files. Double-clicking an .ics file adds the event to your default calendar application.
RSVP handling: ICS supports REQUEST, REPLY, and CANCEL methods. When you accept a meeting in Outlook or Gmail, your client sends an ICS REPLY back to the organizer. This is why meeting invites "just work" across different calendar platforms.
vCard (.vcf): Contact Exchange
vCard (RFC 6350) stores contact information: name, phone numbers, email addresses, physical address, organization, title, photo, and URLs. Attached to emails as .vcf files.
Versions: vCard 2.1 (legacy, widely supported), vCard 3.0 (standard), vCard 4.0 (current, adds social profiles, instant messaging, and improved encoding). Most apps generate vCard 3.0 for maximum compatibility.
Use case: Including your contact details in an email signature (as a .vcf attachment), sharing contacts, and syncing contact databases. Phone contacts apps import .vcf natively — send someone a .vcf and they can add your info with one tap.
Email Archival Formats
When you need to save, export, or migrate emails, specific formats preserve the full message (headers, body, attachments).
EML and MBOX
EML: A single email message in RFC 2822 format. One file per email. Contains headers, body (HTML and/or plain text), and attachments (Base64 encoded). Human-readable with a text editor. Drag from Outlook/Thunderbird to filesystem = .eml file.
MBOX: Multiple emails concatenated in a single file, separated by "From " lines. Used by Thunderbird, Apple Mail (internally), and many mail servers. Useful for bulk archival — an entire mailbox in one file. Can be very large (GB) for full mailbox exports.
PST/OST: Microsoft Outlook's proprietary storage format. PST (Personal Storage Table) stores emails, contacts, calendar items, and attachments in a single file. OST is the offline cache version. Not portable to non-Microsoft tools without conversion. Maximum file size: 50GB (Outlook 2016+), 20GB (older versions).
Archival recommendation: EML for individual important emails (portable, readable anywhere). MBOX for bulk export (standard, compatible with many tools). PDF for legal/compliance archival (visual preservation, immutable). PST only if you're staying in the Microsoft ecosystem.
Email's format constraints are frustrating but predictable. Once you internalize the limits — three image formats, 18MB practical attachment cap, 600px design width — you can work within them reliably. The biggest time-waster is assuming modern web capabilities apply to email. They don't. Email rendering is a decade behind the web, and that gap isn't closing.
When you need to convert files to email-safe formats before sending, ChangeThisFile handles the common conversions: PNG to JPG for smaller attachments, DOCX to PDF for universal document sharing, and XLSX to CSV for spreadsheet data.