| raw | true |
|---|---|
| title | Email Client Compatibility |
| description | Email client support matrix for Inky output. Covers desktop, mobile, and web clients with rendering engine details. |
| nav_group | Guides |
| nav_order | 4 |
Inky generates HTML that works across all major email clients. This table shows the rendering engine used by each client and any notable limitations.
| Client | Rendering Engine | Grid | Media Queries | <style> Block |
Background Images | VML Buttons | Notes |
|---|---|---|---|---|---|---|---|
| Apple Mail | WebKit | Yes | Yes | Yes | Yes | N/A | Best-in-class rendering |
| Outlook 2007 | Word | Yes | No | Partial | No | Yes | Most restrictive. Use VML for advanced styling. |
| Outlook 2010 | Word | Yes | No | Partial | No | Yes | Same as 2007 |
| Outlook 2013 | Word | Yes | No | Partial | No | Yes | Same as 2007 |
| Outlook 2016 | Word | Yes | No | Partial | No | Yes | Same as 2007 |
| Outlook 2019 | Word | Yes | No | Partial | No | Yes | Same as 2007 |
| Thunderbird | Gecko | Yes | Yes | Yes | Yes | N/A | Generally reliable |
| Client | Grid | Media Queries | <style> Block |
Background Images | Notes |
|---|---|---|---|---|---|
| Gmail (web) | Yes | Yes | Yes (since 2016) | Yes | Strips unsupported CSS properties. Prefixes class names. |
| Outlook.com | Yes | Yes | Yes | Yes | Different engine from Outlook desktop. Generally good. |
| Yahoo Mail | Yes | Yes | Yes | Yes | Good support. Some quirks with <style> specificity. |
| Office 365 (web) | Yes | Yes | Yes | Yes | Similar to Outlook.com |
| AOL Mail | Yes | Yes | Yes | Yes | Similar to Yahoo Mail (same parent company) |
| ProtonMail | Yes | No | Partial | Yes | Strips some styles for security. Images blocked by default. |
| Fastmail | Yes | Yes | Yes | Yes | Good overall support |
| Client | Grid | Media Queries | <style> Block |
Notes |
|---|---|---|---|---|
| iOS Mail | Yes | Yes | Yes | WebKit-based. Excellent rendering. |
| Gmail app (iOS) | Yes | Yes | Yes | Better support than Android counterpart |
| Gmail app (Android) | Yes | No | No | Renders large/desktop breakpoint. Does not support media queries. |
| Outlook app (iOS/Android) | Yes | Yes | Yes | Good rendering, different from Outlook desktop |
| Samsung Mail | Yes | Yes | Yes | WebKit-based |
| Yahoo app | Yes | Yes | Yes | Good support |
The most restrictive rendering environment. Microsoft Outlook on Windows uses the Word HTML renderer, which means:
- No
float,position, flexbox, or grid — tables only - No
background-imagevia CSS — use VML or the<hero>component - No
border-radiusvia CSS — Inky uses VML<v:roundrect>for bulletproof buttons - No
max-width— use fixedwidthon tables - No
rgba()orhsla()— use solid hex colors marginis unreliable — usepaddingon table cells or the<spacer>component- DPI scaling affects images — always set explicit
widthandheighton images - Conditional comments work —
<!--[if mso]>lets you target Outlook specifically
Inky handles all of these automatically in its generated output.
The most capable rendering engine for email. Supports:
- Media queries
- Web fonts (
@font-face) - CSS animations (limited use in email)
background-imagewithbackground-sizeborder-radius- Most modern CSS
Gmail has improved significantly since 2016 when it added <style> block support. Current behavior:
- Supports
<style>blocks in<head> - Prefixes all class names (e.g.,
.buttonbecomes.m_button) — avoid overly generic names - Strips unsupported CSS properties
- Clips emails over 102KB — use
inky validateto check - Gmail app on Android still does not support media queries
You don't need to memorize this table. Inky handles cross-client compatibility in its output:
| Problem | Inky's Solution |
|---|---|
Outlook ignores <div> layout |
Generates <table> markup (or MSO fallbacks in --hybrid mode) |
Gmail strips <style> |
Inlines CSS by default |
Outlook ignores border-radius |
VML <v:roundrect> bulletproof buttons |
Outlook ignores background-image |
VML background in <hero> component |
| Images blocked by default | Validator flags missing alt text |
| Gmail clips large emails | Validator warns about 102KB threshold |
| Outlook spacing unreliable | <spacer> generates a fixed-height table row |
| Accessibility | role="presentation" on all layout tables |
Inky uses a single responsive breakpoint at 596px ($global-breakpoint in SCSS).
- Above 596px — desktop/large layout (columns side by side)
- Below 596px — mobile/small layout (columns stack)
This single breakpoint is sufficient for email because:
- Email preview panes are typically 500–700px wide
- Mobile screens are below 596px
- More breakpoints add complexity with minimal benefit in the email context
Rendering varies across clients and changes over time. Always test before sending:
inky validate— catches structural issues and common problemsinky serve— local preview with auto-reload- Litmus or Email on Acid — cross-client rendering screenshots
- Send real test emails — especially to Outlook desktop and Gmail