Markt
Preise
AnmeldenLoslegen
LeitfadenCSS und Web
CSS und Web

Design-Tokens: eine Quelle der Wahrheit für Farbe und Schrift

Eine Markenfarbe, die in vierzig Dateien steht, driftet auseinander. Ein Token lebt an einem Ort, und jede Plattform liest von dort. So strukturierst du Design-Tokens, benennst sie dauerhaft und bringst sie in Code und Designtools.

GradientlyVerifiziertes Gradiently-Konto·1. Oktober 2026·5 Min. Lesezeit
Cover: Topaz Temple · GR·N058·5B

Die Kurzfassung

  • Design-Tokens sind benannte, plattformneutrale Werte für Designentscheidungen wie Farben, Schriftfamilien, Größen, Abstände, Radien, Schatten und Animationszeiten.
  • Die meisten Token-Systeme nutzen drei Ebenen: Primitive Tokens enthalten Rohwerte, semantische Tokens beschreiben einen Zweck, und Komponententokens wenden Zwecke auf bestimmte Teile an.
  • Das Format der W3C Design Tokens Community Group speichert Tokens als JSON mit den Eigenschaften $value und $type und verweist mit geschweiften Klammern auf andere Tokens.
  • Werkzeuge wie Style Dictionary verwandeln eine Token-Datei in CSS Custom Properties, JavaScript sowie iOS- und Android-Ressourcen.
  • Dark Mode und mehrere Marken werden zu einer Frage des Austauschs der Werte hinter semantischen Tokens, während Komponenten unverändert bleiben.
Auf dieser Seite
So sieht ein Design-Token ausPrimitive, semantische und KomponententokensDesign-Tokens so benennen, dass sie haltenVon der Token-Datei zu CSS und AppsDark Mode und mehrere MarkenDesign-Tokens einführen

Design-Tokens sind benannte Werte für jede Designentscheidung, die eine Marke wiederholt: Farben, Schriften, Schriftgrößen, Abstände, Eckenradien, Schatten und Animationszeiten. Statt #5b21b6 in ein Stylesheet, eine Figma-Datei und eine iOS-App zu tippen, definierst du color.brand.700 einmal, in einer Datei, und erzeugst daraus das Format jeder Plattform. Änderst du das Token, aktualisiert sich jedes Produkt gleichzeitig. Diese eine Quelle der Wahrheit ist der ganze Sinn.

So sieht ein Design-Token aus

Ein Token hat einen Namen, einen Wert und einen Typ. Das Format der W3C Design Tokens Community Group schreibt sie als JSON, mit Eigenschaften, die mit einem Dollarzeichen beginnen, damit sie nicht mit Gruppennamen kollidieren.

json
{
  "color": {
    "violet": {
      "100": { "$type": "color", "$value": "#ede9fe" },
      "500": { "$type": "color", "$value": "#8b5cf6" },
      "700": { "$type": "color", "$value": "#6d28d9" },
      "900": { "$type": "color", "$value": "#4c1d95" }
    },
    "ink": { "$type": "color", "$value": "#14121f" },
    "paper": { "$type": "color", "$value": "#faf8ff" }
  },
  "font": {
    "heading": { "$type": "fontFamily", "$value": ["Fraunces", "Georgia", "serif"] },
    "body": { "$type": "fontFamily", "$value": ["Inter", "system-ui", "sans-serif"] }
  },
  "radius": {
    "control": { "$type": "dimension", "$value": { "value": 10, "unit": "px" } }
  },
  "duration": {
    "quick": { "$type": "duration", "$value": { "value": 160, "unit": "ms" } }
  }
}
Primitive Tokens im Format der Community Group. Gruppen lassen sich frei verschachteln; der Pfad, etwa color.violet.700, wird zum Namen des Tokens.
Die Farbtokens von oben als Farbfelder. Das sind Rohzutaten: Noch sagt nichts, welche davon ein Button oder eine Überschrift ist.

Primitive, semantische und Komponententokens

Eine flache Liste von Farben ist eine Palette, kein System. Die Struktur, die über Jahre hält, hat drei Ebenen, die jeweils auf die darunter verweisen. Komponenten berühren nie Rohwerte; sie fragen nach einem Zweck.

Primitivcolor.violet.700

Wert

#6d28d9

Ändert sich, wenn

Die Palette neu gestaltet wird
Semantisch

Beispielname

color.action.primary

Wert

{color.violet.700}

Ändert sich, wenn

Eine Rolle zu einer anderen Farbe wechselt
Semantisch

Beispielname

color.text.default

Wert

{color.ink}

Ändert sich, wenn

Dark Mode, eine neue Marke
Komponente

Beispielname

button.primary.background

Wert

{color.action.primary}

Ändert sich, wenn

Eine Komponente eine Ausnahme braucht
EbeneBeispielnameWertÄndert sich, wenn
Primitivcolor.violet.700#6d28d9Die Palette neu gestaltet wird
Semantischcolor.action.primary{color.violet.700}Eine Rolle zu einer anderen Farbe wechselt
Semantischcolor.text.default{color.ink}Dark Mode, eine neue Marke
Komponentebutton.primary.background{color.action.primary}Eine Komponente eine Ausnahme braucht
Verweise in geschweiften Klammern sind Aliase. Änderst du color.violet.700, folgt jedes Token, das darauf zeigt.
json
{
  "color": {
    "action": {
      "primary": { "$type": "color", "$value": "{color.violet.700}" },
      "primary-hover": { "$type": "color", "$value": "{color.violet.900}" }
    },
    "text": {
      "default": { "$type": "color", "$value": "{color.ink}" },
      "on-action": { "$type": "color", "$value": "{color.paper}" }
    },
    "surface": {
      "page": { "$type": "color", "$value": "{color.paper}" },
      "tint": { "$type": "color", "$value": "{color.violet.100}" }
    }
  }
}
Semantische Tokens beschreiben, wofür eine Farbe da ist. In dieser Ebene sollten Designer und Entwickler miteinander sprechen.

Viele Teams hören bei zwei Ebenen auf, primitiv und semantisch, und fügen Komponententokens nur dort hinzu, wo eine Komponente wirklich abweicht. So bleibt die Datei klein genug, um sie zu verstehen.

Design-Tokens so benennen, dass sie halten

Namen überleben Werte. Ein Token namens color.purple bricht an dem Tag, an dem die Marke zu Petrol wechselt; ein Token namens color.action.primary übersteht das. Benenne semantische Tokens nach ihrer Rolle und halte primitive Namen beschreibend für den Wert.

Namen, die schlecht altern

  • color.purple für Buttons verwendet
  • text.dark, das im Dark Mode hell ist
  • spacing.16 als Layoutregel verwendet
  • blue2, blueNew, blueFinal
  • hero.gradient.lisa, nach einer Person benannt

Namen, die halten

  • color.action.primary
  • color.text.default
  • space.section, das auf {space.16} zeigt
  • Eine nummerierte Skala wie blue.100 bis blue.900
  • gradient.hero mit seinen Stopps als Tokens

Wähle ein Muster, etwa Kategorie, dann Rolle, dann Variante, dann Zustand, und halte es in deinem Markenstyleguide fest. Einheitliche Benennung zählt mehr als die Frage, welches Muster du wählst.

Von der Token-Datei zu CSS und Apps

Die Token-Datei wird nicht so ausgeliefert, wie sie ist. Ein Build-Schritt verwandelt sie in das, was jede Plattform braucht. Style Dictionary ist das am weitesten verbreitete Open-Source-Werkzeug dafür, und andere lesen dasselbe Format. Für das Web sind das meist CSS Custom Properties.

css
:root {
  --color-violet-100: #ede9fe;
  --color-violet-700: #6d28d9;
  --color-violet-900: #4c1d95;
  --color-ink: #14121f;
  --color-paper: #faf8ff;

  --color-action-primary: var(--color-violet-700);
  --color-text-default: var(--color-ink);
  --color-surface-page: var(--color-paper);

  --font-heading: Fraunces, Georgia, serif;
  --radius-control: 10px;
  --duration-quick: 160ms;
}

.button {
  background: var(--color-action-primary);
  color: var(--color-paper);
  border-radius: var(--radius-control);
  transition: background var(--duration-quick) ease;
}
Erzeugte Ausgabe. Aliase werden zu var() Verweisen, sodass die semantische Ebene bis in den Browser erhalten bleibt. Siehe CSS-Variablen für Themes.

Nutzt du Tailwind v4, ist der @theme-Block selbst eine Token-Ebene: Jede --color-*-Variable wird zu Utilities. Tailwind Farben zeigt, wie du eine Token-Skala dort einbindest. Dieselbe Datei kann auch Swift-Konstanten und Android-Ressourcen erzeugen, und genau dort zahlen sich Tokens für Teams mit mehreren Plattformen aus.

Dark Mode und mehrere Marken

Weil Komponenten nur semantische Tokens lesen, ist ein Theme einfach ein anderes Set an Werten für diese Ebene. Der Dark Mode definiert color.text.default und color.surface.page neu; eine zweite Marke definiert color.action.primary neu. An den Komponenten ändert sich nichts.

css
@media (prefers-color-scheme: dark) {
  :root {
    --color-text-default: #e9e5f5;
    --color-surface-page: #0b0a14;
    --color-action-primary: var(--color-violet-500);
  }
}

[data-brand="harbour"] {
  --color-action-primary: #0f766e;
}
Zwei Überschreibungen, keine Änderungen an Komponenten. Auch Verläufe verdienen eigene dunkle Werte; Verläufe im Dark Mode erklärt, wie du sie abstimmst.

Tokens in Designtools

Figma Variables unterstützen Sammlungen und Modi, die sich sauber auf primitive und semantische Tokens sowie helles und dunkles Theme abbilden lassen. Behalte die Token-Datei als Quelle und synchronisiere ins Designtool, nicht umgekehrt, sonst widersprechen sich beide innerhalb eines Monats.

Design-Tokens einführen

  1. 1

    Bestand aufnehmen

    Sammle jede Farbe, Schriftgröße und jeden Abstand, die im Einsatz sind. Rechne mit Duplikaten, die sich um eine Hex-Ziffer unterscheiden.

  2. 2

    Primitive definieren

    Reduziere sie auf klare Skalen. Farbskalen in OKLCH aufzubauen hält die Stufen gleichmäßig; siehe OKLCH erklärt.

  3. 3

    Die semantische Ebene ergänzen

    Benenne Rollen: Text, Fläche, Rahmen, Aktion, Rückmeldung. Lass jede auf ein Primitiv zeigen.

  4. 4

    Den Build automatisieren

    Erzeuge CSS und App-Ressourcen im Build aus der Datei, nie von Hand.

  5. 5

    Es absichern

    Prüfe per Linter auf rohe Hex-Werte in Komponenten, damit neuer Code vom ersten Tag an Tokens nutzt.

Tokens halten das Produkt einheitlich, aber Marken driften auch in den Grafiken, die außerhalb entstehen: Beiträge, Folien, Banner. Ein Gradiently-Markenkit hält dieselben Entscheidungen fest, deine Farbpaletten, Überschrift- und Fließtextschriften, Logos und Stimme, sodass Designs aus dem Studio dazu passen. Und weil Gradiently in ChatGPT, Claude und anderen Assistenten funktioniert, die Remote-MCP-Server unterstützen, kann ein Assistent mit einem eingeschränkten API-Schlüssel markengerechte Designs aus demselben Arbeitsbereich erstellen. Markenkonsistenz behandelt die größere Gewohnheit.

Verbinde deinen KI-Assistenten

Lass Claude oder jeden MCP-Client Marks durchsuchen und Designs erstellen, die sich im Studio öffnen.

Entwicklerdokumentation lesen

Häufige Fragen

Was sind Design-Tokens?

Benannte Werte für Designentscheidungen wie Farben, Schriften, Abstände, Radien und Bewegung, gespeichert in einer plattformneutralen Datei und übersetzt in CSS, App-Code und Variablen im Designtool.

Was ist der Unterschied zwischen primitiven und semantischen Tokens?

Primitive Tokens enthalten Rohwerte, etwa color.violet.700. Semantische Tokens beschreiben einen Zweck, etwa color.action.primary, und zeigen auf ein Primitiv.

Sind Design-Tokens dasselbe wie CSS-Variablen?

Nein. Tokens sind die Quelle, gespeichert in einem neutralen Format wie JSON; CSS Custom Properties sind eine daraus erzeugte Ausgabe, neben Ausgaben für andere Plattformen.

Gibt es ein Standardformat für Design-Tokens?

Die W3C Design Tokens Community Group veröffentlicht ein JSON-Format mit $value, $type und Aliasen in geschweiften Klammern, das Werkzeuge wie Style Dictionary lesen können.

Wie gehen Design-Tokens mit dem Dark Mode um?

Komponenten lesen semantische Tokens, und ein dunkles Theme liefert andere Werte für diese Tokens, sodass Komponenten keine Änderungen brauchen.

Diesen Artikel teilen

Geschrieben von GradientlyVerifiziertes Gradiently-Konto

Das Team hinter Gradiently, einem Designtool rund um Marks: lebendige Farbverläufe, durch die alles, was du gestaltest, nach dir aussieht.

Unser Profil ansehen

Auf dieser Seite

So sieht ein Design-Token ausPrimitive, semantische und KomponententokensDesign-Tokens so benennen, dass sie haltenVon der Token-Datei zu CSS und AppsDark Mode und mehrere MarkenDesign-Tokens einführen

Diesen Artikel teilen

Als Nächstes in CSS und Web

CSS linear-gradient(): der vollständige Leitfaden

Weiterlesen

Alle Artikel zu CSS und Web
CSS und Web

Ein Theme mit CSS-Variablen bauen: hell, dunkel und Markenfarben

5 Min. Lesezeit

Themes gehen schief, wenn Farben danach benannt werden, wie sie aussehen, statt danach, was sie tun. Benenne die Rollen, verweise sie auf eine Palette, und Hellmodus, Dunkelmodus und eine zweite Marke werden zu je ein paar Zeilen.

CSS und Web

Tailwind-Farben: die Palette nutzen und erweitern

5 Min. Lesezeit

Die Standardpalette ist ein guter Anfang und ein schwaches Ende, weil Tausende Websites sie teilen. So funktionieren Tailwind-Farben in v4, und so fügst du eigene hinzu, ohne etwas kaputt zu machen.

Branding

Marken-Styleguide erstellen, den wirklich jemand nutzt

4 Min. Lesezeit

Die meisten Styleguides werden einmal geöffnet und vergessen. Die, die funktionieren, sind kurz, zeigen jede Regel und liegen dort, wo gestaltet wird. So schreibst du so einen.

Finde den Look, der nur dir gehört.

Jeder Mark ist ein lebendiger Hintergrund mit einem Besitzer. Probiere einen noch freien Mark und sichere dir deinen, wenn es sich richtig anfühlt.

Jetzt gestalten

Zertifikat prüfen

Gib eine Zertifikatsnummer oder den Code eines Marks ein, um zu sehen, wem er gehört.

Funktioniert mit ChatGPT und Claude

Bitte deine KI um ein Design. Sie macht es in deinem Mark, bereit zum Bearbeiten.

ChatGPTClaude
So verbindest du sie

Produkt

  • Markt
  • Erkunden
  • Preise
  • Zertifikate

Lernen

  • Leitfaden
  • Hilfe-Center
  • Neuigkeiten

Entwickler

  • Überblick
  • ChatGPT und Claude
  • API-Referenz
  • API-Schlüssel

Unternehmen

  • Über uns
  • Kontakt
  • Anmelden

Rechtliches

  • Nutzungsbedingungen
  • Datenschutz
  • Erstattungen
  • Mark-Schutz
  • Cookies
  • Alle Richtlinien
Fahr über die Buchstaben. Jeder trägt einen echten Mark.Tippe auf einen Buchstaben, um seinen Mark zu sehen.Ein Name. Zehn Marks darin.
© 2026 Gradiently