Blog/Technology

Next.js App Router in der Produktion: Was wir nach 10 Kundenprojekten gelernt haben

18. Juni 202610 Min. Lesezeit

Der App Router ist seit Next.js 13.4 stabil und ist jetzt der Standard-Startpunkt für neue Projekte. Nach zehn Kundenprojekten damit — von einfachen Marketing-Sites bis zu mehrsprachigen SaaS-Dashboards — haben wir ein klares Bild davon, wo er liefert und wo er Probleme schafft.

Das Caching-Modell ist mächtig und verwirrend

Das Caching-Modell des App Routers ist das Wichtigste, das man verstehen muss, bevor man eine Zeile Code schreibt. Es ist auch die Quelle der verwirrendsten Bugs in der Produktion.

Es gibt vier Caching-Schichten:

  1. Request-Memoïsierung — dedupliziert identische fetch-Aufrufe innerhalb eines einzelnen Render-Baums
  2. Daten-Cache — persistiert fetch-Antworten zwischen Anfragen
  3. Full-Route-Cache — cached den gerenderten Output statischer Routen
  4. Router-Cache — clientseitiger Cache vorgeholter Route-Segmente

Was wir gelernt haben:

  • Taggen Sie jeden Cache-abhängigen fetch mit tags und verwenden Sie revalidateTag nach Mutationen
  • cache: 'no-store' ist für genuinlich dynamische Daten geeignet, nicht als Blanket-Lösung
  • Der Full-Route-Cache gilt nur für statisch generierte Routen
  • unstable_cache ist stabil genug für die Produktion trotz des Namens

Server- vs. Client-Komponenten: Die Entscheidung, die wir jedes Mal treffen

Komponenten sollten Server-Komponenten sein wenn:

  • Sie Daten fetchen
  • Sie auf server-only Ressourcen zugreifen (Datenbanken, Dateisystem, Umgebungsvariablen)
  • Sie keine Interaktivität und keine Browser-APIs enthalten

Komponenten sollten Client-Komponenten sein wenn:

  • Sie React Hooks verwenden (useState, useEffect, useContext)
  • Sie Browser-APIs benötigen (window, localStorage)
  • Sie Event-Handler haben, die im Browser laufen

Die praktische Regel: Drücken Sie die 'use client'-Grenze so tief wie möglich.

Performance-Gewinne aus dem App Router

Streaming. Der App Router unterstützt HTML-Streaming durch Reacts Suspense-Grenzen. Auf einem Kundenprojekt reduzierte das die Time-to-First-Meaningful-Paint von 2,8s auf 0,9s auf Mobile.

Paralleles Datenfetching. Server-Komponenten auf verschiedenen Ebenen des Baums fetchen Daten gleichzeitig. Ein Layout, das Benutzerdaten fetcht, und eine Seite, die Inhalte fetcht, laufen parallel.

Vercel vs. Self-Hosting: Die echten Tradeoffs

Was besser auf Vercel funktioniert: Edge Runtime, Bildoptimierung, ISR mit verteilter Cache-Invalidierung.

Was überall gut funktioniert: Standard-SSR, statische Generierung, Server-Komponenten (ohne Edge Runtime), alle Standard-API-Routen.

Für die meisten Kundenprojekte ist Vercel die richtige Wahl. Wir hosten selbst nur, wenn ein Kunde Anforderungen an den Datensitz (EU-only) hat oder Vercel-Preise bei Skalierung nicht funktionieren.

Wann wir noch zum Pages Router greifen

Legacy-Projekte. Das Migrieren einer großen Pages-Router-Codebase zum App Router ist erheblicher Engineering-Aufwand.

Teams, die mit dem App Router nicht vertraut sind. Für Projekte, bei denen der Kunde die Entwicklung nach dem Launch übernimmt.

Drittanbieter-Bibliotheks-Kompatibilität. Die meisten größeren Bibliotheken unterstützen jetzt den App Router, aber einige nicht.

Einfache Sites ohne Caching-Anforderungen. Eine fünfseitige statische Site profitiert minimal von der App-Router-Komplexität.

Die Muster, auf die wir uns geeinigt haben

Datenfetching lebt in Server-Komponenten oder Route-Handlers — nie in Client-Komponenten außer für nur clientseitige Daten.

Jeder fetch hat eine explizite Cache-Richtlinie.

'use client'-Dateien exportieren nur interaktive Komponenten.

Layouts fetchen gemeinsame Daten einmal — Benutzersitzung, Navigationsdaten und globale Konfiguration werden im Root-Layout gefetcht.

Error- und Loading-UI sind immer definierterror.tsx und loading.tsx auf jeder Route-Segment-Ebene.

Die ehrliche Zusammenfassung

Der App Router ist eine genuinliche Verbesserung für Anwendungen, die von seiner Architektur profitieren: Streaming, paralleles Datenfetching, granulares Caching.

Für statische Marketing-Sites ist die Verbesserung minimal. Der Pages Router funktioniert gut und ist einfacher. Entscheiden Sie auf Basis von dem, was Sie bauen, nicht was neu ist.


Bauen Sie in Next.js und stoßen auf App-Router-Komplexität? Starten Sie ein Gespräch — wir haben die meisten Fehlermodi durchgemacht.

Bereit, etwas zu starten?

Wir nehmen jeden Quartal eine begrenzte Anzahl von Projekten an. Erzählen Sie uns, was Sie bauen.

Projekt starten
— Mehr entdecken
Unsere Leistungen entdeckenWebdesign nach StadtWebdesign ZürichWebdesign WinterthurWebdesign ZugWebdesign FrauenfeldWebdesign AarauWebdesign Olten
— Weitere Beiträge
Technology9 Min. Lesezeit

React Native vs. Flutter 2026: Was sollte Ihr Startup wählen?

React Native und Flutter sind beide ausgereift. Die Wahl hängt nicht davon ab, welches besser ist — sondern von Ihrem Team, Ihrem Zeitplan und was Sie bauen. So entscheiden Sie.

29. Mai 2026Lesen
Technology8 Min. Lesezeit

Webflow vs. individuellem Code: Was Ihnen niemand über die langfristigen Kosten sagt

Webflow sieht beim Launch günstig aus. Individueller Code sieht teuer aus. Drei Jahre später kehrt sich die Rechnung um. Hier ist, was Agenturen Ihnen nicht sagen, bevor Sie unterschreiben.

27. Mai 2026Lesen