---
title: "Email Signature"
subtitle: "The one touchpoint where the brand ships as frozen constants, not tokens"
description: "How the brand holds together in the inbox: a generated, inbox-safe signature with a hosted logo, fixed card colour, and system-font fallback."
author: "Studio"
section: "Touchpoints"
layer: "core"
subsection: "Web"
order: 3
status: "published"
access: "team"
brand: "internal"
---

Every team member's signature comes from the generator, never a hand-built copy. Email is the one place the design system's tokens can't reach. Mail clients strip CSS variables and webfonts, so the generator freezes the brand into inbox-safe HTML that renders the same everywhere. The studio team owns the generator; each person owns their own details.

## Identity here

- **Logo**: the animated By Default mark ships as a hosted GIF, not the SVG; mail clients don't render inline SVG. Variants: [4.1 Logo](/brand/logo.html).
- **Colour**: the signature card sits on one fixed warm background. Email HTML can't read [4.2 Colour](/brand/color.html) tokens, so the value is frozen in the generator instead of chosen per signature.
- **Type**: no brand webfont survives an inbox. The signature falls back to a system sans by design; [4.3 Typography](/brand/typography.html) still governs everywhere the web font loads.

## Specs

| Element | Value | Format | Notes |
|---|---|---|---|
| Signature card | fixed warm background, 10px corners, 20px padding, max-width 950px | inline-styled HTML table | email HTML uses tables + inline styles, never CSS classes |
| Logo | 200×155, animated | GIF | hosted, fetched at render time, never inline SVG |
| Contact icons | 24×24 shown (48×48 source, 2× for retina) | JPG | email, website, LinkedIn, Instagram rows |
| Body type | Helvetica, Arial, sans-serif | – | system fallback; the brand webfont is stripped by mail clients |
| Disclaimer | 9px confidentiality notice | inline-styled table | on by default |

_Verified against the brand manifest's signature settings (`cms/brands/bydefault/brand.json`): 2026-07-05._

The card background, logo dimensions, and disclaimer come from the brand manifest at build time, so the signature can't drift from the brand. Change them in the manifest, never in a sent signature.

## Templates & assets

- **Signature generator**: the generator (linked under Tools below) builds the HTML; nobody hand-writes a signature.
- **Hosted assets**: the logo GIF and contact icons live on a permanent URL path (`/email/signature/`) so signatures already in the wild keep rendering; the git repo stays the source of truth.

<div class="grid cols-2 gap-m">
  <div class="asset-card">
    <div class="asset-card-preview asset-card-preview--light logo-preview">
      <img src="/assets/images/email/signature/animated-bydefault-logo.gif" alt="Animated By Default logo used in the signature">
    </div>
    <div class="asset-card-footer">
      <p class="asset-card-title">animated-bydefault-logo.gif, 200×155</p>
      <div class="asset-card-actions">
        <a class="button" data-size="small" data-icon-only href="/assets/images/email/signature/animated-bydefault-logo.gif" download data-tooltip="Download" aria-label="Download animated-bydefault-logo.gif">{{icon:download}}</a>
      </div>
    </div>
  </div>
</div>

## Don't

<div class="grid cols-2 gap-m">
  <div class="card dont-card">
    <img class="dont-card-media" src="/image/800x450" width="800" height="450" loading="lazy" alt="">
    <div class="dont-card-icon">{{icon:close-circled}}</div>
    <h4 class="card-title">Don't hand-build a signature</h4>
    <p class="card-description">The generator is the only source. A pasted-together copy forks the brand and drifts on the first colour or logo change.</p>
  </div>
  <div class="card dont-card">
    <img class="dont-card-media" src="/image/800x450" width="800" height="450" loading="lazy" alt="">
    <div class="dont-card-icon">{{icon:close-circled}}</div>
    <h4 class="card-title">Don't swap the GIF for an SVG or PNG</h4>
    <p class="card-description">Mail clients render neither reliably. The hosted GIF is the tested asset. Every other format breaks in someone's inbox.</p>
  </div>
  <div class="card dont-card">
    <img class="dont-card-media" src="/image/800x450" width="800" height="450" loading="lazy" alt="">
    <div class="dont-card-icon">{{icon:close-circled}}</div>
    <h4 class="card-title">Don't expect brand fonts in the inbox</h4>
    <p class="card-description">A signature that looks right only in your own client is broken for everyone else. Keep to the system fallback the generator sets.</p>
  </div>
</div>

## Tools

- [Email Signature](/tools/email-signature.html): generates the signature and copies it straight into Gmail, Apple Mail, or Outlook.

## Checklist

- [ ] Signature generated from the tool, not hand-edited
- [ ] Name and role correct; only the links you use are toggled on
- [ ] Pasted into the mail client, then a test sent to yourself
- [ ] Disclaimer kept unless there's a reason to drop it
