Encore: Wie ein Designsystem bei 45 Plattformen aussieht

Die meisten Ratschläge zu Designsystemen gehen von einem Produkt auf ein oder zwei Oberflächen aus. Spotifys Encore musste auf Fernsehern, in Autos, auf Uhren und Lautsprechern funktionieren, und das Team hat veröffentlicht, was dabei schiefgelaufen ist. Die Lösung war nicht eine größere Komponenten-Bibliothek – sondern Layer und das offene Eingeständnis, dass sie zuvor eine Überkorrektur vorgenommen hatten.

Aktualisiert 2026-07-27

Unabhängige Analyse basierend auf den veröffentlichten Texten des Spotify Design-Teams und der öffentlichen Entwicklerdokumentation, geschrieben für Personen, die eigene Systeme aufbauen. Identity Forge ist nicht mit Spotify verbunden und wird nicht von Spotify unterstützt. Spotify und das zugehörige Logo sind Marken ihres Eigentümers.

Die Einschränkung, die die Struktur hervorbrachte

Im Jahr 2019 setzte die Spotify-Leitung sich das Ziel, Audio auf jedem Gerät konsistent verfügbar zu machen. Die vom Design-Team veröffentlichten Zahlen sind beeindruckend: 45 einzigartige Plattformen und über 2.000 Gerätetypen über 200 Marken hinweg. Jemand startet eine Playlist auf einem Wohnzimmer-Fernseher, setzt sie im Auto fort und greift am nächsten Morgen per Laptop darauf zu.

Das ist nicht einfach eine größere Version des üblichen Designsystem-Problems. Es ist ein anderes Problem. Ein Fernseher wird aus drei Metern Entfernung betrachtet, eine Uhr muss alles kondensieren, ein Desktop hat reichlich Platz und ein Auto hat rechtliche Einschränkungen bei der Interaktion. Keine einzelne Komponenten-Bibliothek kann all das bedienen, und keine Menge an Dokumentation kann dies erzwingen.

Konzentrische Layer statt einer flachen Bibliothek

Encore startete mit zwei Segmenten. Encore Consumer Mobile wurde als unglaublich flexibel beschrieben – ein riesiger Katalog stetig wachsender Komponenten für mobile Erlebnisse. Encore Web bediente eine breitere Palette von Webprodukten. Unter beiden lagen Design-Tokens, die grundlegende Entscheidungen wie Farbschemata und Typografie-Styles abdeckten.

Das veröffentlichte Modell ist konzentrisch. Das Fundament liegt im Zentrum. Web und Mobile liegen darüber als gleichberechtigte Subsysteme mit Plattform-Parität. Weiter außen liegen die spezialisierteren Subsysteme – Content Web Platform, Advertising Web, Consumer Mobile –, die jeweils stärker vom Kern abweichen.

VerantwortungConsumer
FoundationDesign-Tokens: Farbe, Typografie, Entscheidungen, die nicht variieren dürfenJedes Subsystem, transitiv
Web / MobilePlattformübergreifende Komponenten, als Paar mit Parität entworfenProduktteams auf dieser Plattform
Spezialisierte SubsystemeKomponenten, die spezifisch für eine Produktdomäne sindEin Produktbereich – Werbung, Content-Tooling, Consumer-App
Was jeder Ring verantwortet und wen er bedient.

Der Wert dieser Struktur liegt darin, dass Divergenz begrenzt und lokalisiert ist. Eine Komponente, die nur für Werbung benötigt wird, lebt im Advertising-Ring und kann nicht in die Consumer-App einsickern. Eine Farbentscheidung lebt im Fundament, wo sie nicht lokal überschrieben werden kann. Die Alternative – eine flache Bibliothek für alle – zwingt jeden spezialisierten Bedarf entweder dazu, in den Kern absorbiert zu werden (was diesen aufbläht), oder außerhalb des Systems gebaut zu werden – und genau dort sterben Designsysteme.

Das Pendel

Hier kommt der Teil, der in veröffentlichten Texten über Designsysteme selten vorkommt, weil es ein Eingeständnis ist. Bis 2022 kam das Team zu dem Schluss, dass das Pendel zu weit in Richtung Flexibilität ausgeschlagen war und eine Neukalibrierung notwendig sei.

Was passiert war erkennbar: Consumer Mobile war bewusst flexibel gestaltet, sodass die Produktteams immer mehr verfeinerte Komponenten anforderten – und Consumer Mobile stimmte immer wieder zu. Flexibilität, die als Feature beginnt, wird zur Verpflichtung: Das spezifische Bedürfnis jedes Teams wird zu einer weiteren Komponente, die das System verwalten muss, und der Katalog wächst schneller, als man ihn konsistent halten kann.

Dies ist ein Fehlermodus, vor dem die meisten Ratschläge zu Designsystemen nicht warnen, da diese meist von Personen geschrieben werden, die mit dem gegenteiligen Problem kämpfen – einem starren System, das niemand nutzt. Beide Fehler sind real. Ein System, das zu oft „Nein“ sagt, wird umgangen; ein System, das zu oft „Ja“ sagt, hört auf, ein System zu sein, und wird zu einem gemeinsamen Ordner.

Die Korrektur von Spotify ist der interessante Teil. Sie haben Consumer Mobile nicht eingeschränkt oder begonnen, Anfragen abzulehnen. Stattdessen stellten sie ein Team zusammen, um wiederverwendbare Komponenten für Encore Mobile zu entwickeln – und fügten so eine neue Ebene zwischen Consumer Mobile und dem Foundation-Layer ein. Die veröffentlichte Beschreibung des Zwecks ist präzise: Diese Ebene fungiert als erste Verteidigungslinie, reduziert die Anforderungen an Consumer Mobile, jede Komponente selbst bereitstellen zu müssen, und schafft gleichzeitig eine größere Plattform-Parität im restlichen System.

Die Lösung für ein Subsystem, das in Anfragen ertrinkt, bestand nicht darin, diese abzulehnen. Sondern darin, die darunterliegende Ebene aufzubauen, die diese Anfragen eigentlich hätte beantworten sollen.

Das definiert ein Governance-Problem als ein strukturelles Problem um. Wenn ein Subsystem Anfragen bearbeitet, die eigentlich nicht spezifisch für es sind, dann sind nicht die Anfragen das Problem, sondern die fehlende gemeinsame Ebene. Ein „Nein“ hätte die Teams dazu getrieben, außerhalb des Systems zu entwickeln. Durch das Hinzufügen der Ebene wurde die Arbeit im System gehalten.

Wie eine plattformübergreifende Komponente tatsächlich entworfen wird

Die Schilderung des Arbeitsprozesses durch das Team ist konkret genug, um sie zu kopieren. Die entscheidende Änderung, die sie nennen, ist, dass plattformübergreifende Komponenten nun von Anfang an als solche konzipiert werden und nicht erst im Nachhinein.

  1. 1

    Alle Plattformen an einen Tisch holen

    Vertreter von iOS, Android und Web kommen zusammen, bevor irgendetwas entworfen wird. Ihr Argument, warum dies notwendig ist, ist stichhaltig: Es ist selten, jemanden zu finden, der sowohl Experte für Web als auch für Mobile ist. Daher muss die Expertise zusammengeführt werden, anstatt sie vorauszusetzen.

  2. 2

    Jede Plattform prüft und skizziert, was für ihre Oberfläche einzigartig ist

    Der Desktop bietet mehr Platz. Fernseher sind aufgrund des Betrachtungsabstands anders. Eine Uhr erfordert, dass alle Informationen kondensiert werden. Diese Punkte werden als Fakten über die Oberfläche festgehalten, bevor über die Komponente diskutiert wird.

  3. 3

    Einigung über Begriffe, Zustände und Eigenschaftsinteraktionen

    Die Arbeitsgruppe definiert, wie Dinge benannt werden, welche Zustände existieren und wie Eigenschaften kombiniert werden. Dies ist der Schritt, der oft übersprungen wird – und genau deshalb landen zwei Plattformen am Ende bei einer Komponente, die zwar denselben Namen teilt, aber sonst nichts.

  4. 4

    Die Komponente gegen all diese Anforderungen gleichzeitig entwerfen

    Nicht die Version einer Plattform plus Anpassungen. Sondern eine Komponente, deren Varianten bereits bekannt waren, bevor sie gezeichnet wurde.

Schritt drei ist es wert, übernommen zu werden, unabhängig davon, wie viele Plattformen man betreut. Die meisten Fälle von Component Drift beginnen als Vocabulary Drift: Das „Secondary“ des einen Teams ist das „Ghost“ des anderen, der Disabled-Zustand des einen ist das Read-only des anderen – und bis es jemand bemerkt, sind beide bereits live.

Das andere Design-Dokument von Spotify

Wer nach dem Designsystem von Spotify sucht, findet als eines der ersten Ergebnisse die öffentlichen Design & Branding Guidelines auf der Entwicklerseite. Hier muss klar unterschieden werden: Das ist nicht Encore und auch kein Designsystem im herkömmlichen Sinne. Es ist ein Compliance-Dokument.

Die Struktur verrät es: Urheberkennzeichnung, Nutzung von Spotify-Inhalten, Durchsuchen von Inhalten, Verlinkung zu Spotify, Wiedergabeansichten, Anzeige von Entitäten, Nutzung des Logos, Nutzung der Farben, Logo- und Namensbeschränkungen, Schriftarten. Der angegebene Grund für die Regeln zur Urheberkennzeichnung ist, dass die über Spotify verfügbaren Inhalte vielen verschiedenen Rechteinhabern gehören. Daher muss jede Verwendung von Spotify-Metadaten – Künstler-, Album- und Titelnamen, Artwork, Audiowiedergabe – von der Spotify-Marke begleitet werden. Die Seite stellt klar, dass die Nutzung dieser Ressourcen die Annahme der Developer Terms of Service bedeutet.

EncorePartner Design Guidelines
ZweckKohärenz über die eigenen Oberflächen von Spotify hinwegLizenz-Compliance durch Drittanbieter
ZielgruppeSpotify-Designer und EngineersExterne Entwickler
Durchgesetzt durchAdoption, Review, ToolingNutzungsbedingungen
AussageSo baut man Spotify aufDas ist es, was Sie mit unserer Marke tun dürfen und was nicht
ÖffentlichNeinJa
Zwei Dokumente desselben Unternehmens mit völlig unterschiedlichen Aufgaben.

Diese Unterscheidung ist wichtig, wenn man etwas baut, das Inhalte oder Marken Dritter integriert. Diese Regeln sind vertraglich bindend, und „ohne das Logo sah es besser aus“ ist keine gültige Rechtfertigung. Es ist auch als Kategorie wichtig: Wenn Ihr Produkt von Produkten anderer Personen konsumiert wird, benötigen Sie möglicherweise sowohl ein solches Dokument als auch ein Designsystem – und das sind zwei völlig unterschiedliche Schreibaufgaben.

Ebenen, angewandt auf ein System, das ein Agent liest

Das konzentrische Modell lässt sich direkt auf Design-Richtlinien übertragen, die für AI Coding-Agents geschrieben werden. Es löst ein Problem, das auftritt, sobald ein Projekt mehr als eine Art von Oberfläche besitzt.

Ein typischer Fehler ist eine einzelne DESIGN.md, die versucht, eine Marketing-Website, einen Application Shell und eine dichte Datentabelle abzudecken. Ihre Regeln enden in Ausflüchten – „großzügiges Spacing, obwohl Tabellen dichter sein können“ – und eine vage Regel ist keine Regel. Das Modell muss entscheiden, und es entscheidet jedes Mal anders.

Die Schichtung funktioniert genau wie bei Encore:

# DESIGN.md          <- foundation: tokens, roles, prohibitions
                        applies everywhere, never overridden

# app/marketing/DESIGN.md
   Extends the root. Spacing scale shifted up one step.
   Hero type may use the display scale (48px+).
   Cards may use shadow elevation.

# app/dashboard/DESIGN.md
   Extends the root. Compact spacing (8-12px controls).
   Elevation is surface steps + hairline, never shadow.
   Table rows: 32px, no vertical padding above 8px.

Jede Datei ist innerhalb ihres Bereichs eindeutig definiert. Die Root-Datei enthält nur das, was sich wirklich nicht ändern darf – Farbroles, Typografie-Familien, Verbote – und die Leaf-Dateien enthalten die Entscheidungen, die legitim variieren dürfen. Ein Agent, der in app/dashboard/ arbeitet, liest zwei Dateien und erhält eine einzige, eindeutige Antwort anstatt einer Datei mit Vorbehalten.

Wir haben 299 DESIGN.md-Dateien stichprobenartig untersucht, die für das Lesen durch Agenten veröffentlicht wurden. 44 % enthielten nirgendwo einen konkreten Größenwert und 54 % stützten sich auf mindestens ein vages Adjektiv – „clean“ in 39 %, „modern“ in 36 %. Das ist das Problem der Unverbindlichkeit in Extremform: Eine Datei, die sich nie auf einen Wert festlegt, kann nicht mit sich selbst in Konflikt geraten, kann aber auch keine konsistente Schnittstelle erzeugen.

Die Design-Kits von Identity Forge sind in genau diesem Sinne Foundation-Layer: semantische Farbrollen für Light- und Dark-Mode, eine Typografie- und Spacing-Skala, Motive sowie eine explizite Liste mit Do's und Don'ts, serialisiert in einer DESIGN.md, die ein Agent ausliest. Kits durchstöbern oder lesen Sie, was eine DESIGN.md-Datei ist.

Was man von Encore lernen kann

Sie haben wahrscheinlich keine 45 Plattformen. Sie haben vielleicht drei Oberflächen, von denen zwei sich stillschweigend auseinanderentwickelt haben, und ein Team, das ständig nach einer Komponente fragt, die sonst niemand braucht. Das ist dasselbe Problem mit geringerer Amplitude, und die Lösungen von Encore lassen sich auch in diesem Maßstab anwenden.

Packen Sie das, was sich nicht ändern darf, in ein Fundament und machen Sie es wirklich unumstößlich. Lassen Sie spezialisierte Anforderungen in spezialisierten Ebenen existieren, anstatt sie in den Kern oder ganz aus dem System zu drängen. Wenn eine Ebene in Anfragen versinkt, suchen Sie nach der fehlenden Ebene darunter, bevor Sie mit Ablehnungen beginnen. Und entwerfen Sie für jede Oberfläche gleichzeitig, denn eine Komponente, die nachträglich angepasst wird, ist eine Komponente, die divergieren wird.

Kann ich das Spotify Encore Designsystem verwenden?

Nein. Encore ist intern und wird nicht als installierbares Paket oder als öffentliche Dokumentationsseite veröffentlicht. Öffentlich ist lediglich, dass das Designteam von Spotify darüber schreibt, wie es strukturiert ist und wie es sich entwickelt hat – daraus stammen alle Informationen in dieser Analyse.

Was ist der Unterschied zwischen Encore und Spotify's Design Guidelines?

Encore ist das interne Designsystem, das zum Bau der eigenen Produkte von Spotify verwendet wird. Die Design & Branding Guidelines auf developer.spotify.com sind Regeln für Drittentwickler, die Spotify-Inhalte integrieren – Attribution, Logo-Nutzung, Farb- und Namensbeschränkungen – und werden durch die Developer Terms of Service statt durch bloße Anwendung durchgesetzt.

Warum hat Spotify eine Ebene hinzugefügt, anstatt Komponenten hinzuzufügen?

Weil die Anfragen, die bei Encore Consumer Mobile eingingen, nicht tatsächlich spezifisch für Consumer Mobile waren. Eine neue Ebene zwischen diesem und dem Fundament erfasste diese gemeinsame Arbeit, reduzierte die Anforderungen auf das spezialisierte Subsystem und erhöhte gleichzeitig die Plattform-Parität. Das Ablehnen der Anfragen hätte Teams dazu getrieben, außerhalb des Systems zu bauen.

Benötige ich Ebenen, wenn ich nur ein einziges Produkt habe?

Nur wenn dieses Produkt Oberflächen mit tatsächlich unterschiedlichen Anforderungen hat – zum Beispiel eine Marketing-Website und ein dichtes Dashboard. Der Test ist, ob Ihre Regeln Vorbehalte enthalten. Eine Regel, die besagt „großzügiges Spacing, obwohl Tabellen dichter sein können“, sind zwei Regeln, die vorgeben, eine zu sein, und sie gehören in zwei verschiedene Dateien.

Was ist das Flexibilitäts-Pendel?

Ein Designsystem, das auf Flexibilität ausgelegt ist, zieht Anfragen nach immer spezifischeren Komponenten an, und deren Gewährung lässt den Katalog über den Punkt der Kohärenz wachsen. Ein System, das auf Strenge ausgelegt ist, wird stattdessen umgangen. Beides sind reale Fehlentwicklungen; Spotify hat öffentlich gemacht, dass sie auf die erste gestoßen sind und neu kalibrieren mussten, was die meisten Teams nicht tun.