Vergleich Static Site Generation vs. Server-Side Rendering – Edge-CDN gegen Server-Rack

    SSR oder Pre-Rendering? Was wir für Mykeythai gegen unseren Standard-Ansatz geprüft haben

    17. Mai 20264 min Lesezeit
    Till Freitag

    TL;DR:Für eine Villa-Plattform wie Mykeythai bleibt Pre-Rendering der richtige Default. SSR nur dort, wo es wirklich dynamisch werden muss – Verfügbarkeit, Anfragen, Agent-Portal."

    Till Freitag

    Kontext: Am 13. Mai hat Lovable Discoverability released – inklusive echtem Server-Side-Rendering über TanStack Start. Direkt danach haben wir uns mit dem Mykeythai-Team zusammengesetzt und die Frage gestellt: Stellen wir um? Hier ist die Antwort.

    Die Ausgangslage

    Mykeythai ist eine kuratierte Villa-Plattform für Thailand: Villa-Detailseiten, Destination-Hubs, Things-to-do, ein Journal, SEO-Landingpages, Agent-PDFs. Klassisches Content-lastiges Travel-Setup mit punktueller Dynamik (Verfügbarkeit, Anfragen, Preisabfragen).

    Bisher läuft die Seite – wie alle unsere Builds – auf unserer Playwright-SSG-Pipeline: React-SPA, zur Build-Zeit pro Route zu statischem HTML gerendert, JSON-LD und Meta-Tags injiziert, auf das Edge-Netz deployed.

    Mit dem Lovable-Release stand plötzlich ein echter SSR-Pfad zur Verfügung. Also: prüfen.

    Der Kurzvergleich

    Pre-Rendering / SSGServer-Side Rendering (SSR)
    GeschwindigkeitSehr schnellOft langsamer
    Hosting-KostenGeringHöher
    SkalierungEinfachAufwendiger
    SEOSehr gutSehr gut
    Core Web VitalsMeist besserSchwankender
    Dynamische InhalteSchlechterSehr gut
    CachebarkeitExzellentKomplexer
    FehleranfälligkeitGeringHöher
    TTFBSehr niedrigHöher
    Hydration-ProblemeWenigerHäufiger

    Auf dem Papier liest sich das wie eine klare Sache. In der Praxis hängt es komplett am Use-Case.

    Warum Mykeythai SSG-affin ist

    Schauen wir uns an, was die Seite ausmacht:

    • Villa-Detailseiten – ändern sich vielleicht wöchentlich
    • Journal-Artikel – pro Artikel ein Publish-Event
    • Destination-Hubs – kuratierte Inhalte, selten geupdatet
    • Things-to-do – redaktionell gepflegt
    • Areas / Regionen – statische Inhalte
    • SEO-Landingpages – auf Suchintention optimiert, stabil
    • About / Brand – ändert sich quartalsweise

    Das ist Lehrbuch-Content für Pre-Rendering. Inhalte ändern sich nicht sekündlich, SEO und Performance sind wichtiger als Echtzeit-Daten, jede einzelne Seite hat eine klare URL und eine klare Suchintention.

    Genau deshalb wirken Referenzen wie Plum Guide, Le Collectionist oder Airbnbs SEO-Landingpages so schnell: aggressives Static Rendering plus globales CDN. Niemand rendert eine Villa-Detailseite live auf einem Node-Server, wenn der Inhalt 99 % der Zeit identisch ist.

    Wo SSR trotzdem Sinn ergibt

    Es gibt Bereiche, in denen statisches Rendering nicht reicht:

    • Eingeloggte Dashboards – pro Nutzer unterschiedlich
    • Personalisierte Inhalte – z. B. „Empfohlen für dich"
    • Live-Verfügbarkeiten – Kalender, Buchungsslots
    • Suche & Filter mit vielen Kombinationen
    • Dynamische Preise – Saison, Belegung, Promotion
    • User-spezifische Daten – Agent-Portale, gespeicherte Favoriten

    Für Mykeythai betrifft das konkret: Verfügbarkeitskalender, Anfrageformulare, Preisabfragen, Agent-Portal, Suche/Filter, eventuell Live-Wetterdaten.

    Die Architektur, für die wir uns entschieden haben

    Statt „alles SSR" oder „alles SSG" haben wir die Seite in zwei Zonen aufgeteilt:

    Pre-Rendered (SSG)

    /                       → Home
    /villas/[slug]          → Villa Detail
    /journal/[slug]         → Journal-Artikel
    /destinations/[slug]    → Destination Hubs
    /things-to-do/[slug]    → Aktivitäten
    /areas/[slug]           → Regionen
    /lp/[slug]              → SEO-Landingpages
    /agents/pdf/[id]        → Agent-PDFs
    /about, /brand          → Brand-Seiten

    → Build-Time-Rendering, JSON-LD injiziert, auf Edge ausgeliefert. TTFB < 50 ms weltweit.

    Dynamisch (SSR / Edge-Functions / Client)

    /api/availability       → Kalender, Edge-Function
    /api/inquiry            → Anfrageformular, serverless
    /api/pricing            → Preisabfrage, Edge
    /agent/portal/*         → SSR (Auth-gated)
    /search                 → Client-side mit Edge-Suche

    → Nur diese Routen brauchen einen lebenden Server. Der Rest bleibt statisch.

    Das ist die Dynamic-Islands-Logik: 95 % der Seite ist statisch, kleine interaktive Inseln (Kalender, Preisbox) laden ihre Daten clientseitig nach. Kein Grund, eine komplette Villa-Detailseite per SSR zu rendern, nur weil unten ein Verfügbarkeitskalender hängt.

    Der typische Fehler im Lovable/Vercel/Supabase-Stack

    Wir sehen in Audits regelmäßig das gleiche Muster: Projekte rendern unnötig viel per SSR. Die Symptome sind immer dieselben:

    • höhere TTFB
    • weiße Screens beim Laden
    • doppelte Requests (SSR + Client-Refetch)
    • „Page disappears and reloads" nach Hydration
    • inkonsistente Cache-Control-Header
    • schlechtere Lighthouse-Werte trotz starker Hardware

    Das deckt sich mit Beobachtungen, die das Mykeythai-Team auf anderen Plattformen schon gemacht hatte: kurzfristig weiße Seite, erneutes Laden, inkonsistente Caching-Header. Klassische Symptome für SSR + Client-Hydration-Mismatches, unnötige Runtime-Requests oder Streaming-Edge-Mismatches.

    Mit dem Lovable-Release ist SSR jetzt zwar einfach verfügbar – aber das macht es nicht automatisch zur richtigen Wahl.

    Warum das auch für GEO / AI-Search zählt

    LLMs und AI-Crawler (ChatGPT, Perplexity, Claude, Google AI Overviews) bevorzugen stabile, schnelle, sofort verfügbare HTML-Inhalte. Sie warten nicht auf Hydration. Sie folgen keinen useEffect-Ketten. Sie sehen, was im ersten Response steht.

    Wir haben das mit Log-Evidenz untermauert: drei Monate Edge-Logs zeigen, dass GPTBot, ClaudeBot und PerplexityBot praktisch kein JavaScript ausführen – sie lesen ausschließlich das initiale HTML. Die vollständige Auswertung steht in GPTBot, ClaudeBot, PerplexityBot: Was AI-Crawler bei Prerendering wirklich sehen.

    Pre-Rendering ist hier strukturell im Vorteil: vollständiges HTML, deterministisch, mit JSON-LD im <head>. Genau das, was wir in unserer SEO-Master-Strategy als Default behandeln und was wir auch im Vibe Coding SEO Guide ausführlich beschreiben.

    Die Entscheidung für Mykeythai

    Wir bleiben beim Pre-Rendering-Default und ergänzen punktuell:

    1. Alle Content-Routen weiterhin via Playwright-SSG (unverändert)
    2. Verfügbarkeit / Preise als Edge-Function mit clientseitigem Aufruf
    3. Agent-Portal als isolierte SSR-Route (Auth-gated, separater Bundle)
    4. Suche clientseitig gegen eine Edge-Suche (Typesense / Algolia / Cloudflare)

    Damit halten wir Core Web Vitals oben, Hosting-Kosten unten und Crawler-Output sauber – ohne auf dynamische Funktionen zu verzichten, wo sie wirklich gebraucht werden.

    Take-aways für andere Projekte

    • SSR ist kein Upgrade. Es ist ein Trade-off. Mehr Dynamik, mehr Komplexität, höhere Kosten, mehr Fehlerquellen.
    • Default sollte SSG sein. Erst wenn ein konkreter Use-Case statisches Rendering bricht, SSR ergänzen.
    • Denk in Zonen, nicht in „die ganze App". Die meisten Seiten sind zu 95 % statisch.
    • Lovable macht beides einfach. Das Release ist gut – aber die Architektur-Entscheidung musst du trotzdem treffen.

    Wer gerade vor der gleichen Frage steht: Wir zeigen die Pipeline live bei TokenMade in Hamburg – inklusive der Mykeythai-Architektur als Case.

    👉 Kostenloses SEO-Audit für deine Vibe-Coding-App →

    TeilenLinkedInWhatsAppE-Mail

    Verwandte Artikel

    Lovable App mit strukturiertem HTML, sichtbar für Google, ChatGPT und Perplexity
    13. Mai 20266 min

    Lovable SEO/AEO: Jede App ab Tag 1 für Google und ChatGPT sichtbar

    Lovable bringt Server-Side-Rendering, Pre-Rendering für Bestands-Apps, Semrush direkt im Builder-Chat und einen On-Deman

    Weiterlesen
    Prerendering-Pipeline-Visualisierung: SPA, Playwright, Schema.org und Edge-Deploy
    29. April 20263 min

    Prerendering: Wie aus einer React-SPA eine Google-freundliche Seite wird

    React-SPAs sind für Crawler unsichtbar. Prerendering löst das – ohne Next.js, ohne SSR-Server. So funktioniert unsere Pl

    Weiterlesen
    GPTBot, ClaudeBot und PerplexityBot lesen statisches HTML aus einem Edge-Server – Log-Evidenz-Visualisierung
    17. Mai 20265 min

    GPTBot, ClaudeBot, PerplexityBot: Was AI-Crawler bei Prerendering wirklich sehen

    Wir haben drei Monate Edge-Logs ausgewertet: Wer crawlt wirklich, wer rendert JavaScript, und wer verlässt sich komplett

    Weiterlesen
    Rakete aus Code-Elementen startet durch Suchergebnisseiten mit Lighthouse Score 100
    14. April 20265 min

    Vibe Coding & SEO: Warum KI-generierte Apps unsichtbar bleiben – und wie wir das lösen

    Lovable, Bolt, v0 – Vibe Coding Tools erzeugen SPAs, die Google nicht sieht. Unser Playbook macht sie SEO-ready: SSG, Sc

    Weiterlesen
    AI Website Builder Vergleich – Framer, Webflow AI, Wix AI, Durable und Lovable-Stack im SEO-Test
    10. April 20265 min

    AI Website Builder im Vergleich: Framer vs. Webflow AI vs. Wix AI vs. Durable vs. Lovable-Stack

    Fünf Wege zur Website im SEO-Vergleich: Framer, Webflow AI, Wix AI, Durable – und der Lovable + GitHub + Vercel-Stack. W

    Weiterlesen
    Abstrakte isometrische Illustration eines leuchtenden Exoskelett-Rahmens, der mehrere kleine AI-Cores in Sandbox-Kammern einfasst
    26. Juni 20264 min

    Agent Harness als Kategorie: Warum der Harness das neue Produkt ist

    Der Harness — Skills, Sandbox, Subagents, Memory, Channel-Routing — ist die eigentliche Produktebene über dem Modell. Ei

    Weiterlesen
    Cloudflare und Vercel im direkten Vergleich – zwei Edge-Plattformen, zwei Philosophien
    4. Juni 20265 min

    Cloudflare vs. Vercel – Was nutzt man wann?

    Vercel oder Cloudflare? Beide hosten deine moderne Web-App am Edge – aber sie verfolgen grundverschiedene Strategien. Wi

    Weiterlesen
    Entscheidungsbaum: Lovable Cloud allein vs. zusätzliches Headless CMS für eine Lovable-Site
    3. Juni 20264 min

    Brauchst du überhaupt ein CMS, wenn du mit Lovable baust?

    Lovable hat eine Datenbank, einen Editor und Git-Integration. Brauchst du da überhaupt noch ein klassisches CMS? Ein ehr

    Weiterlesen
    Headless Browser rendert SPA-Seiten als statisches HTML für Suchmaschinen
    14. April 20265 min

    Playwright SSG Tutorial: So machst du Lovable Apps für Google sichtbar

    SPAs sind für Suchmaschinen unsichtbar. Mit Playwright kannst du jede Lovable App in statisches HTML rendern – automatis

    Weiterlesen