System-Font-Stacks: Wann du keine Schrift laden solltest
Mach einen Screenshot vom selben Dashboard auf einem Mac und auf einem Windows-Laptop und leg sie nebeneinander. Der Mac rendert San Francisco, Windows rendert Segoe UI. Andere Schriftarten, andere Buchstabenbreiten, andere Zeilenumbrüche — und Beschwerden darüber sind so gut wie unbekannt. Viele erfolgreiche Produkte machen das ganz bewusst, und ihre Nutzer merken es fast nie.
Ein System-Font-Stack ist eine font-family-Deklaration, die sich auf die
native Oberflächenschrift jeder Plattform auflöst statt auf einen
heruntergeladenen Webfont — San Francisco auf Apple-Plattformen, Segoe UI auf
Windows, Roboto auf den meisten Android-Builds. Es wird keine Schriftdatei
angefordert, also wird Text sofort gerendert: null Ladezeit für Schriften,
kein schriftbedingtes Layout-Shift, in der Schrift, die der Leser ohnehin den
ganzen Tag sieht. Die Frage ist nicht, ob das funktioniert — das tut es
nachweislich —, sondern was es kostet und wann sich dieser Preis lohnt.
Dieser Artikel ist Teil unseres Typografie-Guides.
Wie sieht ein System-Font-Stack in CSS aus?
Die moderne Variante ist kurz:
body {
font-family: system-ui, sans-serif;
}
system-ui ist ein generisches Family-Keyword, das den Browser nach der
plattformeigenen UI-Schrift fragt; aktuelle Browser unterstützen es breit,
und MDNs font-family-Referenz
dokumentiert die Details. Die längeren Ketten, die dir in Codebasen noch
begegnen —
font-family: system-ui, -apple-system, "Segoe UI", Roboto,
"Helvetica Neue", Arial, sans-serif;
— sind größtenteils historisch. -apple-system und die explizit benannten
Plattformschriften sind älter als system-ui und dienen als Absicherung für
ältere Browser. Sie schaden nicht, aber für die meisten Produkte reicht heute
die Kurzform.
Was gewinnst du, wenn du keine Schrift lädst?
Vier Dinge, und keins davon ist klein:
- Null Ladezeit. Keine Anfrage, kein Warten, keine Schrift im kritischen Pfad.
- Kein schriftbedingtes Layout-Shift. Nichts trifft verspätet ein, also wird nichts ausgetauscht oder neu umbrochen. (Andere Ursachen für Layout-Shift bleiben dein Problem.)
- Natives Gefühl. Der Text passt zum umgebenden Betriebssystem — Menüs, Benachrichtigungen, Einstellungen —, was sich anfühlt wie „diese App gehört hierher“.
- Jede Sprache. Das Schriftsystem der Plattform deckt mehr ab, als es ein einzelner Webfont je könnte — ganz ohne zusätzliche Dateien für neue Schriftsysteme.
Es gibt einen intuitiven Grund, warum die native Schrift so gut funktioniert: Sie ist die vertrauteste Schriftart auf diesem Gerät. Der Leser hat sie seit Jahren in jedem Systemdialog gesehen, und Vertrautheit ist ein echter Vorteil für schnelles, angenehmes Lesen — Neuheit in einer Schriftart ist ein Preis, den der Leser zahlt, und die Systemschrift verlangt nichts davon.
Was gibst du auf?
Drei Dinge, und sie sind die Gründe, warum markenstarke Produkte weiterhin Schriften laden:
- Markenstimme. Dein Produkt sieht aus wie das Betriebssystem. Für ein internes Tool ist das ein Feature; für ein Produkt, dessen Typografie Teil seiner Identität ist, ist es eine Kapitulation.
- Plattformübergreifende Konsistenz. Derselbe Screen wird je nach Plattform in unterschiedlichen Schriften gerendert. Die klassische Falle trifft das Marketing: Screenshots und Dokumente, die auf einem Mac entstehen, zeigen eine Schrift, die die meisten Windows-Nutzer nie zu sehen bekommen.
- Kontrolle. Die Plattformschriften unterscheiden sich in Zeichenbreite und x-Höhe, also unterscheiden sich Zeilenlängen und Umbruchpunkte je nach Plattform. Eine Überschrift, die unter Segoe UI in eine Zeile passt, kann unter San Francisco umbrechen — du testest entweder jede Plattform durch oder gestaltest mit Puffer.
Sieh dir beide Seiten des Kompromisses an einem einzigen Schriftmuster an — ein charaktervoller Webfont im Überschriften-Slot über Roboto, der Schrift, die Android mitliefert, im Fließtext-Slot, in den Größen einer echten Skala. Die Überschrift trägt die Stimme, der Fließtext liest sich wie die Plattform. Diese Aufteilung ist die Hybrid-Strategie im Kleinen.

Wann ist ein System-Stack die richtige Wahl?
Ein praktikabler Entscheidungsrahmen:
- Interne Tools, Admin-Panels, Dashboards, MVPs — ein System-Stack ist oft die richtige Standardwahl. Lesegeschwindigkeit und null Wartungsaufwand zählen; Markenstimme meist nicht.
- Markenstarke Produkte — lade die Markenschrift zumindest für Überschriften. Typografie leistet dort Identitätsarbeit, und die Betriebssystem-Schrift kann das nicht.
- Der Hybrid — System-Stack für den Fließtext, ein gut gewählter Webfont für die Auszeichnung. Das ist die günstigste Markenstimme pro Kilobyte: Überschriften tragen den größten Teil der typografischen Identität einer Seite, während der Fließtext den größten Teil ihrer Bytes trägt.
Wie sieht der Hybrid in der Praxis aus?
Zwei Custom Properties und ein paar Regeln:
:root {
--font-display: "Space Grotesk", system-ui, sans-serif;
--font-body: system-ui, sans-serif;
}
body { font-family: var(--font-body); }
h1, h2, h3 { font-family: var(--font-display); }
Was es attraktiv macht, ist die Budget-Rechnung. Überschriften brauchen typischerweise zwei Schnitte — sagen wir 500 und 700 —, das sind zwei WOFF2-Dateien, zusammen meist ein paar Dutzend Kilobyte. Der Fließtext, der den Großteil des gerenderten Textes auf der Seite ausmacht, kostet nichts. Und der Fallback ist eingebaut: Bis die Display-Schrift eintrifft, werden Überschriften in der Systemschrift aus demselben Stack gerendert, sodass die Seite ab dem ersten Paint lesbar ist.
Eine ehrliche Einschränkung: Der Hybrid erbt den Konsistenz-Kompromiss für den Fließtext. Wenn dein Design darauf angewiesen ist, dass Absätze überall identisch umbrechen, ist ein System-Stack — ob hybrid oder nicht — das falsche Werkzeug.
Gestalte das System, bevor du die Dateien auswählst
Ob du zwei Schriften lädst, eine oder keine — das Typ-System muss trotzdem
gestaltet werden: Die Größen, Schnitte und Zeilenhöhen, die einer Seite
Hierarchie geben, sind Entscheidungen, die dir kein Font-Stack abnimmt — ein
System-Stack mit den Standard-Browsergrößen ist immer noch ungesetzt.
Bau die Skala auf einer neutralen Schrift der Systemklasse —
leg die Basisgröße, das Verhältnis, die Schnitte pro Stil und die
grundlinienbündigen Zeilenhöhen fest, dann exportiere die Tokens. Die
Family-Zeile in der Ausgabe kannst du auf system-ui zeigen lassen; alles
andere überlebt, welche Schrift auch immer jede Plattform rendert.