Technical12 min read

Email Signatures in Dark Mode — How to Make Them Work (2026)

Dark mode broke a lot of email signatures when it arrived, and most people didn’t notice until someone complained. By 2026, around 65% of email users have dark mode enabled at least some of the time — so if your signature isn’t dark-mode-aware, a large chunk of your recipients are seeing something broken. Here’s what’s actually happening, and what to do about it.

By the NeatStamp Team · Published March 2026 · 12 min read

What dark mode actually does to email signatures

Dark mode doesn’t work the same way across every email client — and that’s the root of the problem. There are roughly three different approaches email clients take when dark mode is on:

Full inversion

Outlook for Windows (older versions)

The client literally inverts all colours. White becomes black, black becomes white, dark grey becomes light grey. Old versions of Outlook on Windows do this. If your email has no explicit colour declarations, it gets fully inverted and may become unreadable.

Partial / intelligent inversion

Gmail on AndroidGmail on iOS (partial)

The client applies dark mode only to elements it detects as having light backgrounds — but not to elements with explicit dark or medium colours. Gmail on Android does this. It's trying to be helpful but the 'intelligence' is imperfect and can create strange results.

UI only, email unchanged

Outlook web (new)Apple Mail on macOS (mostly)

The client applies dark mode to its own interface (sidebar, toolbar, header) but renders emails as-is, respecting inline styles. Outlook web (new) and Apple Mail on macOS mostly do this. Your email looks the same as it would in light mode.

Because there’s no single standard, the goal of dark-mode-friendly email signatures is to write HTML that holds up reasonably well across all three approaches. That means using explicit colour declarations, avoiding transparent backgrounds, and building in fallbacks. The rest of this guide covers exactly how to do that.

The transparent PNG problem (the most common issue)

This is the issue I see most often when someone reports their signature “breaking” in dark mode. Here’s exactly what happens:

The failure pattern

Light mode

LOGO

Dark logo on transparent background. White email background shows through — looks fine.

Dark mode

LOGO

Same logo, dark email background shows through transparent areas — logo invisible.

The transparent PNG issue affects two types of logos:

  • Dark logo on a transparent background: Works in light mode (white fills the transparent area), breaks in dark mode (dark fills the transparent area and the dark logo is invisible).
  • White logo on a transparent background:The classic “dark mode only” logo. Invisible in light mode, visible in dark mode. Often used for website dark mode, but doesn’t work in email.

The fixes

Add a solid background to the image itself

Export your logo as a PNG with a white (or light) background filled in — not transparent. This is the simplest and most reliable fix. The logo will look identical in light mode, and in dark mode, the white background prevents the transparency issue.

Set a background-color on the <td> or <div> containing the image

If you need to keep the PNG transparent, wrap the image in a table cell with background-color: #ffffff as an inline style. This tells the email client to use white behind the image, preventing the dark background from showing through.

Create two versions of your logo

A dark version for light backgrounds and a light version for dark backgrounds. Use media queries to switch between them — though be aware that many email clients don't support media queries, so this is only a partial solution.

Of these three, the first — exporting with a solid background — is the one I’d recommend to almost everyone. It’s the most reliable and requires no HTML changes. The email signature with logo guide covers image export settings in more detail, including file size optimisation.

Text colour issues in dark mode

After transparent PNG issues, text colour problems are the second most common complaint. The pattern is: signature looks fine in light mode, text becomes invisible or very low contrast in dark mode.

Why pure black (#000000) is a problem

This feels counterintuitive — surely the darkest text is the most readable? But pure black (#000000) is detected as a “dark colour” by some email clients’ dark mode algorithms, which then skip inverting it. On a dark background, pure black text becomes nearly invisible.

Dark grey (#333333 or #1a1a1a) sits in a different zone — it’s detected as “very dark but not pure black” and gets handled differently. In practice, it looks identical to black in light mode and behaves better in dark mode. I’d recommend #333333 as your standard body text colour for email signatures.

ColourHexLight modeDark mode risk
Pure black#000000FineHigh — can disappear
Dark grey#333333Fine (indistinguishable)Low — handles better
Medium grey (body text)#555555FineLow
Light grey (secondary)#999999Reduced contrastMedium — may disappear on dark bg
Brand blue (links)#1a6be0FineUsually OK — kept as-is by most clients
White text#ffffffInvisible on white bg!Fine on dark bg

Brand colours in dark mode

Brand colours used for your name, a divider line, or highlighted text generally survive dark mode better than body text, because they’re recognisably non-black and most clients preserve them. However, very light brand colours — pastels, light yellows, light blues — can become invisible on dark backgrounds if the email client doesn’t invert them.

Test any brand colour you use against a dark background — simply check whether it’s readable on #1a1a1a or #121212. If it isn’t, darken the shade slightly or reserve that colour for decorative elements rather than text. For more on colour choices, the email signature design guide covers contrast ratios and accessibility in detail.

Gmail dark mode behaviour

Gmail’s dark mode implementation is the most complex of the major clients, and it behaves differently depending on whether you’re using Gmail web (browser) or the Gmail mobile app.

Gmail web (browser) — dark mode

Gmail web respects inline styles reasonably well. If you declare background-color: #ffffff on your signature’s outermost element as an inline style, Gmail web will mostly leave it alone — it won’t force a dark background over your explicitly white one. Text colours declared inline are also generally preserved.

The catch: if any part of your signature doesn’t have explicit colour declarations — text that inherits colour from the browser default, or table cells without a background-color — Gmail web may apply its dark mode logic there. The fix is explicit inline styles on everything that matters.

Gmail on Android — dark mode

Gmail on Android is more aggressive. It applies what Google calls “smart inversion” — it analyses the email’s colour palette and tries to apply dark mode without making things unreadable. In practice, this can:

  • Change your white signature background to a dark grey or near-black
  • Invert light-coloured text to dark, and vice versa
  • Leave some explicitly-coloured elements unchanged while modifying others
  • Make transparent PNGs pick up the dark background

The most effective protection against Gmail Android’s smart inversion is to use background-color: #ffffff on your outer table, declare all text colours explicitly as inline styles, and avoid transparent PNG backgrounds. There’s no perfect solution — Gmail Android’s dark mode is genuinely unpredictable — but these steps reduce the failure rate substantially.

If you’re seeing Gmail-specific issues in your signature, the Gmail signature guide covers the full range of Gmail-specific quirks and fixes.

Outlook dark mode behaviour

Outlook has multiple versions with different dark mode behaviour, which makes it the most complicated to target.

Outlook for Windows (2016–2021)

Uses GDI rendering (Word-based). Dark mode applies full colour inversion to emails that don't have explicit background-color declarations. Elements with explicit inline background-color are treated differently — Outlook respects them as 'intentional' and may preserve them.

Recommendation

Always set background-color: #ffffff on your outermost table. Declare all text colours inline. This prevents Outlook's full inversion from applying.

Outlook for Microsoft 365 (Windows)

The newer versions of Microsoft 365 Outlook on Windows have improved dark mode handling. They're more likely to respect inline styles than older versions. Still follows the same 'explicit = preserved' logic.

Recommendation

Same advice: explicit inline background-color and text colours. Test on both old and new Outlook if your audience is mixed.

Outlook on Mac

Mac Outlook uses a different rendering engine (WebKit-based rather than Word-based). Dark mode support is better — it respects CSS more faithfully and is less likely to apply aggressive colour inversion.

Recommendation

Still use explicit colours, but this version is much less likely to cause problems.

Outlook web (OWA / Outlook.com)

The new web-based Outlook is the most standards-compliant. It respects inline styles and applies dark mode only to the UI shell, not the email content (mostly). Best dark mode behaviour of the Outlook family.

Recommendation

Minimal special treatment needed, but consistent inline styles are still best practice.

For a full breakdown of Outlook-specific signature behaviour beyond dark mode, the Outlook signature guide covers rendering quirks, DPI scaling, and image handling in detail.

Apple Mail dark mode behaviour

Apple Mail on both macOS and iOS has relatively well-behaved dark mode support — it applies dark mode to its own interface but generally preserves email content as-is when inline styles are present.

Where Apple Mail does apply dark mode to email content, it uses the @media (prefers-color-scheme: dark) CSS media query — which means it respects CSS targeting. You can write dark-mode-specific CSS rules that Apple Mail will apply when dark mode is active. Most other email clients ignore these rules, but you can use them as a progressive enhancement for Apple Mail users.

Apple Mail dark mode CSS (progressive enhancement)

<style>
  /* Only Apple Mail and a few others will apply this */
  @media (prefers-color-scheme: dark) {
    .signature-wrapper {
      background-color: #1a1a1a !important;
    }
    .signature-text {
      color: #e0e0e0 !important;
    }
    .signature-name {
      color: #ffffff !important;
    }
  }
</style>

This works for Apple Mail but is ignored by Gmail, Outlook, and most other clients. That’s fine — it’s a progressive enhancement, not a requirement. Your signature still needs to work in light mode (and look acceptable in other clients’ dark modes) even without this media query.

Apple Mail’s transparent PNG issue mirrors what we covered earlier — the same fix applies. A PNG with a solid background behind the logo will avoid the transparent background problem in Apple Mail’s dark mode just as in any other.

Logo solutions for dark mode

The logo is the element most likely to break visibly in dark mode, so it deserves its own section with specific recommendations.

Option 1 — Solid background PNG (recommended)

Export your logo as a PNG with a solid white (or very light grey) background. No transparency. This is the most universally compatible approach because it removes the dark-mode variable entirely — the email client can’t change what’s inside the image. The trade-off is that the logo always has a white background, which is fine in nearly all professional contexts.

Option 2 — Wrap in a white background table cell

If you want to keep your transparent PNG (perhaps because your logo is used in multiple places and changing the export is impractical), wrap the <img> in a table cell with a forced white background:

<td style="background-color:#ffffff; padding:4px;">
  <img src="logo.png"
       width="180"
       height="48"
       alt="Company Name"
       style="display:block;width:180px;height:48px;" />
</td>

The background-color:#ffffff on the <td> creates a white box behind the transparent PNG. Most clients preserve explicit inline background-color declarations, so your logo gets a white backing in both light and dark mode.

Option 3 — A dedicated light logo version

Some brands have a version of their logo designed for dark backgrounds — a light or white version of the mark. You can use CSS media queries in Apple Mail (and a few other supporting clients) to swap between logo versions:

<!-- Light-mode logo (default, shown in all clients) -->
<img class="logo-light"
     src="logo-dark.png"
     width="180" height="48"
     alt="Company Name"
     style="display:block;" />

<!-- Dark-mode logo (only shown in Apple Mail with dark mode) -->
<img class="logo-dark"
     src="logo-light.png"
     width="180" height="48"
     alt="Company Name"
     style="display:none;" />

<style>
  @media (prefers-color-scheme: dark) {
    .logo-light { display: none !important; }
    .logo-dark { display: block !important; }
  }
</style>

This works in Apple Mail. Gmail, Outlook, and most other clients will ignore the media query and show both images (or only the first if they handle display correctly). It’s worth testing before relying on it. For a full overview of logo handling in email signatures, see the signature with logo guide and the HTML email signature guide.

HTML and CSS fixes for dark mode — the complete checklist

Here’s a consolidation of every HTML-level fix that makes a meaningful difference to dark mode compatibility. If you’re building or reviewing signature code, run through this list.

Set background-color on the outermost table

<table style="background-color:#ffffff;" width="600" cellpadding="0" cellspacing="0">

Prevents email clients from applying a dark background to your entire signature. The most important single fix.

Declare text colour explicitly on every text element

<td style="color:#333333; font-family:Arial,sans-serif; font-size:14px;">

Inherited colours are vulnerable to dark mode inversion. Explicit inline colour declarations are more likely to be preserved.

Avoid pure black (#000000) for body text

Use #333333 instead of #000000

Some clients treat pure black differently in dark mode. Dark grey is visually identical but behaves better.

Remove transparent backgrounds from all images

Export logos as PNG with white fill, not transparent

Transparent areas inherit the background — which becomes dark in dark mode.

Set background-color on image container cells

<td style="background-color:#ffffff;">

Creates a reliable light background behind images even if the outer table background is overridden.

Use border-color instead of border shorthand

<td style="border-top-color:#e5e7eb; border-top-width:1px; border-top-style:solid;">

Full CSS shorthand can sometimes cause border colours to be affected by dark mode inversion. Explicit properties are safer.

Link colours — use explicit hex rather than relying on defaults

<a href="..." style="color:#1a6be0; text-decoration:none;">

Default link colour (#0000ff blue) can be changed by dark mode. Your brand link colour should be declared explicitly.

NeatStamp generates code with all of these considerations baked in. If you build your signature in the editor, you get dark-mode-aware HTML without needing to write any of this manually. If you’re editing existing HTML, this checklist covers the changes that matter most. The HTML email signature guide goes deeper on the full code structure.

How to test your signature in dark mode

Dark mode testing has to be done in real clients — there’s no reliable way to predict how each client will handle your code without actually sending the email and viewing it. Here’s a practical testing workflow.

Minimum viable testing (free)

Send a test email to yourself and view it on these three clients with dark mode enabled:

Gmail on Android

Tests Google's smart inversion logic. Enable dark mode in Android Settings → Display → Dark theme.

Critical

Outlook on Windows

Tests full and partial inversion behaviour. Enable dark mode in Windows Settings → Personalisation → Colours → Dark.

Critical

Apple Mail on iPhone

Tests the prefers-color-scheme behaviour. Enable dark mode in iOS Settings → Display & Brightness → Dark.

Important

Extended testing (for company-wide deployment)

If you’re deploying a signature across a whole company or need to test across more clients, tools like Litmus and Email on Acid render emails across 90+ client/OS combinations and show screenshots. At around $100/month for occasional use, this is worth it for company-wide deployments but overkill for individual signatures.

One final note: if you discover that your existing signature has dark mode issues, the guide to images not displaying in email signatures covers a broader set of image rendering problems (not just dark mode) that might explain other issues you find during testing.

Frequently asked questions

Why does my email signature logo disappear in dark mode?

This almost always happens because your logo is a PNG with a transparent background. In light mode, the white email background shows through the transparent areas, and the logo looks fine. In dark mode, the email client applies a dark background — and now that transparent area shows the dark background instead. If your logo is a dark-coloured image on a transparent background, it becomes invisible. The fix is to either use a logo with a solid white or light background behind it, or to create a version of your logo specifically for dark mode (a light-coloured version of the mark).

Does Gmail dark mode invert email signature colours automatically?

Yes and no. Gmail on Android applies an 'intelligent' dark mode that inverts colours it detects as light backgrounds. This can flip your white signature background to dark and change your text colours. Gmail on web (in a browser) respects inline styles more faithfully. The most reliable protection is to set an explicit background-color: #ffffff (or another light colour) on your outermost table element as an inline style — Gmail's dark mode is less likely to invert explicitly declared backgrounds.

What's the safest background colour for an email signature in dark mode?

White (#ffffff) with an explicit inline background-color declaration is the most reliable. Some designers use very light grey (#f8f8f8 or #fafafa) as it's slightly softer but still works in dark mode. Avoid transparent backgrounds — they cause problems in almost every dark mode implementation.

Should I use black or dark grey for text in my email signature?

Use dark grey (#333333 or #1a1a1a) rather than pure black (#000000). Pure black text on a white background can trigger aggressive colour inversion in some clients (particularly Outlook on Windows), which can make your text disappear on dark backgrounds. Dark grey is visually indistinguishable from black to most recipients, but behaves better in dark mode scenarios.

How do I test my email signature in dark mode?

Send a test email to yourself and open it on: Gmail on Android (dark mode enabled), Outlook on Windows (dark mode enabled), and Apple Mail on iOS (dark mode enabled). These three cover the main failure modes. You can also use an email testing tool like Litmus or Email on Acid to render across 90+ clients simultaneously — worth it if you're deploying signatures company-wide.

Build a dark-mode-safe signature right now

NeatStamp generates email signature HTML with explicit inline styles, solid image backgrounds, and dark-mode-aware colour choices. Free.

Create My Signature — Free