Back to the kit

Your email signature, on brand every time.

Fill in four fields, check how it lands on every screen size, then copy it into your mail client. It carries no background of its own: it sits on whatever ground the client provides and repaints its own text for dark mode. Nothing is stored anywhere but this browser — the page remembers your details for next time.

Your details

Everything updates as you type. Leave a field empty and its line disappears — a signature without a phone number stays balanced. There is nothing else to set: the light and dark rendering are the same signature, and the client picks.

Details

Only these four fields go into the signature.

Written as you type it; the link dials the digits.
Preview

How it goes dark

There is no dark version to pick, because there is no light version either. The signature declares no background at all — it sits on whatever ground the client puts behind it — and changes nothing but its own ink. Three mechanisms do that, they fail independently, and it is worth being blunt about how far each one reaches.

PartHow it switchesWhere that actually worksEverywhere else
Text colours@media (prefers-color-scheme: dark), with !important so it beats the inline coloursApple Mail (macOS, iOS) and Outlook for Mac — and only where the <style> block survived the pasteColours stay put; a client that inverts repaints them itself
The lockupA <picture> source, and a second hidden image the media query reveals<picture>: Apple Mail, Thunderbird, Samsung Email. The hidden-image swap: anywhere the media query works, which is what adds Outlook for MacGmail rewrites <picture> to <u> and shows the fallback <img>: the blue lockup
Not being invertedcolor-scheme: light darkWhere the <style> block or the downloaded file’s <meta> survives. It is also what stops older Outlook for Windows inverting the image itselfThe client decides
Outlook.com[data-ogsc] / [data-ogsb], the hooks it leaves when it recolours a messageSometimes. Microsoft injects its own inline !important and can winIts own partial inversion
The backgroundNothing to switchAlwaysAlways. This is the part that cannot break.
What happens in the clients that do not switch. Only Apple Mail and Outlook for Mac read prefers-color-scheme at all. Gmail ignores it on every surface — but Gmail on the web does not darken the message either, so there the signature simply renders the way it does in light mode. The apps are where it shows: Gmail for iOS and Outlook for Windows invert fully, Gmail for Android and Outlook.com invert partially. In those, the client repaints the ink itself and the lockup keeps its blue on a darkened ground — around 2.3:1 against a typical dark canvas, so it reads as a quiet mark rather than a crisp one.
Which is exactly why it declares no background. A signature that paints itself white becomes a white card stapled to the foot of a dark message; one that paints itself navy becomes a dark card in a white thread. Declaring neither means the worst case is a client repainting the text on a ground that already matches the message around it — never a rectangle fighting the page. It is also one more reason the HTML code is the better copy: install the downloaded file — Outlook desktop, an ESP, a CRM source field — and the colour switch travels with it. Paste into an editor that strips <style>, as Gmail’s does, and you keep the <picture> swap but lose the rest.

Copy it out

Two ways out of this page. They are not equivalent — one hands over the exact markup, the other hands over whatever your browser decided the selection meant.

Copy the HTML code Recommended

The markup below, character for character. Every colour, every spacing value and the hosted logo URL survive the trip. Paste it into any signature field that accepts HTML — Outlook, Superhuman, Front, HubSpot, Zendesk, Mailchimp, most CRMs — and what you see here is what sends.

Copy the rendered signature Fallback

A rich-text copy of the picture on the left. Use it only where there is no HTML field — Gmail's editor is the main one. The clipboard round-trip is lossy: browsers rewrite the markup, and some clients then re-style the pasted result with their own default font and link colour.

After pasting, always send yourself one test message and look at it on a phone.

The markup


  
Leave the logo where it is. The image points at https://smm-assets.maia-8.click/assets/signature/…, a stable URL that is meant to be hotlinked. Do not re-host it, attach it, or paste the logo in as an inline image — embedded copies are what turn a signature into a grey box with a broken-image icon three clients down the reply chain.

Every screen it will land on

The same signature at the widths mail actually gets read at. Note the second number on each card: a 1440 px desktop does not hand the message 1440 px — it hands it a reading column of roughly 900. That column is what the signature has to survive, and it is why this one is a single column with no media queries: the clients that would need them most are the ones that strip them.

About the typeface. These previews use Public Sans. Almost no mail client will load a webfont, so the stack falls to -apple-system, Segoe UI, Arial, Helvetica in that order — which is why the signature is set in weights and sizes that survive the substitution rather than in anything decorative.

Where each client wants it

Which of the two copy buttons a client needs, and where its signature field lives.

ClientUseWhere
Outlook (Windows)HTML codeDownload the file, drop it in %APPDATA%\Microsoft\Signatures, then pick it in File → Options → Mail → Signatures.
Outlook (web / new)RenderedSettings → Mail → Compose and reply → Email signature.
GmailRenderedSettings → See all settings → General → Signature. Gmail has no HTML field.
Apple MailRenderedSettings → Signatures. Untick Always match my default message font first, or it will flatten everything.
Superhuman · Front · MissiveHTML codeSignature settings → the </> / source view.
HubSpot · Salesforce · ZendeskHTML codeUser profile → signature → source editor.
Mailchimp and other platformsHTML codePaste into a code block.