Projekt anfragen

Langsame Websites kosten Geld – das ist keine Meinung, das ist Fakt. Die Gute Nachricht: Wer eine Seite mit Joomla erstellt, der baut zunächst auf einem performanten System auf. Denn: Joomla selbst ist ein performantes, schlankes System – wenn man es richtig einsetzt.

In diesem Guide zeigen wir euch als Kölner Joomla-Agentur, was wirklich hinter langsamen Joomla-Websites steckt, wie ihr die Ladezeit systematisch verbessert und warum weniger oft mehr ist. Von Core Web Vitals über Caching bis hin zu Template-Entscheidungen – hier kommt alles, was ihr wissen müsst.

Was sind Core Web Vitals – und warum sind sie wichtig?

Core Web Vitals sind Googles offizielle Messwerte für die Nutzererfahrung einer Website. Seit dem Page Experience Update sind sie direkter Ranking-Faktor. Wer hier schlecht abschneidet, verliert sichtbare Positionen in den Suchergebnissen.

Largest Contentful Paint (LCP)

Der LCP misst, wie lange es dauert, bis das größte sichtbare Element – meist ein Bild oder eine Überschrift – vollständig geladen ist. Zielwert: unter 2,5 Sekunden. Alles über 4 Sekunden gilt als „schlecht" und sollte dringend angegangen werden.

First Input Delay (FID) / Interaction to Next Paint (INP)

Google hat den klassischen FID inzwischen durch den INP (Interaction to Next Paint) ersetzt. Dieser misst die Reaktionsfähigkeit der Seite auf Nutzereingaben – etwa einen Klick auf ein Menü oder ein Formularfeld. Zielwert: unter 200 Millisekunden.

Cumulative Layout Shift (CLS)

CLS misst visuelle Stabilität: Springt die Seite beim Laden um? Verschiebt sich ein Button, kurz bevor man ihn anklickt? Das ist nicht nur ärgerlich, sondern kostet euch Rankings. Zielwert: unter 0,1.

Einfluss auf Google-Rankings

Google hat klar kommuniziert: Core Web Vitals sind Rankingfaktor. Wer in allen drei Werten „Gut" erzielt, hat einen messbaren Vorteil gegenüber langsameren Konkurrenten – besonders in umkämpften Nischen und im lokalen Umfeld.

PageSpeed Insights richtig interpretieren

Das kostenlose Tool PageSpeed Insights zeigt euch Lab-Daten und – sofern vorhanden – echte Felddaten aus dem Chrome User Experience Report (CrUX). Schaut vor allem auf die Felddaten, nicht nur auf den Score. Ein Score von 90 bei schlechten Felddaten sagt wenig über die echte Nutzererfahrung.

Joomla Performance messen – bevor ihr optimiert

Vor der Optimierung kommt die Messung. Ohne Baseline wisst ihr nicht, was eure Maßnahmen gebracht haben bzw. ob Sie überhaupt etwas gebracht haben.

Google PageSpeed Insights

Einfach URL eingeben, Ergebnis analysieren. Achtet auf die Empfehlungen unter „Opportunities" – das sind die konkreten Stellschrauben. Wichtig: Testet Mobile und Desktop separat. Ein guter Desktop-Wert hilft euch dabei leider wenig weiter, denn für das Ranking ist ausschließlich der mobile Wert relevant.

Hier gehts zum Tool: PageSpeed Insights

Für Experten: Die Browser-Konsole

In Chrome oder Firefox öffnet ihr die DevTools (F12), wechselt zum Tab „Performance" oder „Lighthouse" und führt einen lokalen Audit durch. Besonders der Network-Tab ist Gold wert: Hier seht ihr, welche Ressourcen wie lange brauchen und was möglicherweise doppelt geladen wird.

Auch für Experten: Joomla Debug Tools

Joomla hat einen eingebauten Debug-Modus (Konfiguration → Server → Debug-System aktivieren). Er zeigt euch am Seitenende Datenbankabfragen, Speicherverbrauch und Ladezeiten. Ihr werdet überrascht sein, wie viele Datenbankabfragen manche Extensions verursachen – das ist oft der eigentliche Flaschenhals.

Joomla Caching richtig konfigurieren

Caching ist einer der effektivsten Hebel, um die Joomla Ladezeit zu optimieren. Joomla bietet dabei ein mehrstufiges Caching-System mit drei grundlegend verschiedenen Ansätzen – und es lohnt sich, die Unterschiede zu kennen, bevor ihr einfach alles aktiviert.

Die drei Caching-Typen in Joomla

Joomla unterscheidet zwischen Page Caching, View Caching und Module Caching. Diese arbeiten auf unterschiedlichen Ebenen und schließen sich teilweise gegenseitig aus.

Seitencache Plugin – die ganze Seite auf einmal

Das System – Seitencache Plugin ist der stärkste Hebel: Es cached die gesamte gerenderte Seite als statisches HTML, basierend auf der URL. Jeder Aufruf derselben URL liefert dann das gecachte HTML direkt aus – ohne Datenbankabfragen, ohne PHP-Rendering.

Um den Page Cache (dt. “Seitencache”) zu nutzen, müsst ihr diesen über die System-Einstellung aktivieren: 

System → Verwalten→ Plugins → System – Seitencache → aktivieren

screenshot seitencache plugin

Wichtige Einschränkungen:

Page Caching funktioniert ausschließlich für nicht eingeloggte Besucher (Gäste). Seiten mit dynamischen Inhalten wie Warenkorb, Login-Bereich oder sessionabhängigen Inhalten dürfen nicht gecached werden. Das Ändern eines Beitrags leert den Page Cache nicht automatisch – das müsst ihr manuell tun unter System → Wartung → Cache leeren.

Praxistipp: Im Advanced-Tab des Page Cache Plugins könnt ihr gezielt Menu Items oder URLs vom Caching ausschließen. So cached ihr statische Seiten vollständig, während Shop- oder Login-Bereiche ausgenommen bleiben. Seid hier aufmerksam, denn das Caching dieser Seiten führt zu Problemen in der Benutzung, und damit im Zweifelsfall zu ausbleibenden Anfragen von potenziellen Interessentinnen.

“Normales Caching” – Komponenten und Module gezielt cachen

Normales Caching cached jeweils nicht die gesamte Seite, sondern gezielt die Ausgabe einzelner Komponenten-Views und Module. Komponenten-Ansichten sind meist die Hauptausgabe einer Seite, beispielsweise ein Artikel oder ein Kategorieblog. Wichtig zu wissen: Für jedes Modul bzw. jede Komponenten-Ausgabe wird eine separate Cache-Datei abgelegt.

regular caching

Aktivieren: System → Globale Konfiguration → System-Tab → Zwischenspeicher → AN – Normales Caching

Anschließend könnt ihr zudem pro Modul unter Inhalt → Site Module → Modul auswählen → Erweitert Tab festlegen, ob das Modul gecacht wird (Use Global) oder nicht (No Caching).

modul caching exclude

Wichtig zu wissen: das Komponenten- und Modul-Caching und das Page-Caching ergänzen sich. Ist z.B. ein bestimmtes Modul auf der Startseite eingebunden, wird erst für dieses Modul ein Cache-Eintrag erzeugt und dann für die gesamte Startseite ein weiterer Eintrag. Rufen Nutzer nun eine weitere Seite auf, auf der das Modul eingebunden ist, kann hier der Modul-Cache verwendet werden und der Eintrag für den Seitencache wird umso schneller erzeugt.

Erweitertes Caching – mehr Cache für Gäste

Erweitertes Caching wird über dasselbe Auswahlfeld aktiviert, wie auch das normale Caching. Der große Unterschied zwischen den beiden Varianten: Sofern erweitertes Caching aktiviert wurde, wird nicht jedes Modul einzeln gespeichert, sondern das gesamte Modulset dieser Seite in der entsprechenden Reihenfolge der Module.

Die beiden Joomla Caching-Varianten in der Praxis

Doch was bedeutet das für dich als Seitenbetreiber in der Praxis? Den Unterschied kann man am besten an einem Beispiel erklären:

Folgendes Setup:

  • Auf der Startseite werden die Module A und B geladen
  • Auf der Unterseite Leistungen werden die Module A, B und C geladen
  • Wir gehen davon aus, dass Nutzer:innen zunächst die Startseite besuchen und von da aus auf die Seite Leistungen navigieren.

Normales Caching: Durch den Aufruf der Startseite werden die Module A und B in den Cache gespeichert. Beim Aufruf der Seite Leistungen werden diese beiden Module aus dem Cache geladen und nur Modul C muss “nachgeladen” werden. Wir haben also einen Performance-Vorteil.

Erweitertes Caching: Der Aufruf der Startseite Cached das Modul-Set: A - B. Beim Aufruf der Seite Leistungen wird jedoch das Set A - B - C benötigt. Sofern dieses nicht exakt so im Cache abgelegt ist, werden alle drei Module regulär geladen.

Der Cache wird dabei in beiden Fällen immer dann befüllt, wenn ein beliebiger Besucher der Website eine Inhaltsseite aufruft. 

Das bedeutet in der Praxis: Normales Caching ist der “sichere Anker” und für eine Vielzahl von Websites die performantere Lösung. Erweitertes Caching spielt seine Stärken nur auf sehr traffic-starken Seiten aus, da hier die Chance größer ist, dass das benötigte Modul-Setup bereits im Cache vorhanden ist. 

Unsere Empfehlung als Agentur: Mit “normalem Caching” macht man nichts falsch und die Performance verbessert sich merklich. Achte jedoch darauf, dass interaktive Elemente wie bspw. Formulare nicht gecached werden.

Cache-Handler: Datei, Redis oder Memcached?

Einzustellen unter: System → Globale Konfiguration → System-Tab → Cache-Speicher

Joomla unterstützt verschiedene Caching-Engines. File ist der Standard und funktioniert überall ohne zusätzliche Server-Konfiguration – Cache-Dateien landen im Ordner /cache/. Redis ist deutlich schneller als dateibasiertes Caching und empfohlen für größere oder traffic-starke Sites. Memcached ist eine ebenfalls sehr gute Alternative zu Redis. 

Wer Redis oder Memcached auf dem Server zur Verfügung hat, sollte das unbedingt nutzen. 

Browser-Caching via .htaccess konfigurieren

Browser-Caching ergänzt das serverseitige Joomla-Caching: Statische Ressourcen wie CSS, JS und Bilder werden im Browser des Besuchers gespeichert und bei erneuten Besuchen nicht neu heruntergeladen. 

Fügt folgende Konfiguration in eure .htaccess ein um ein solides Setup zu hinterlegen:


    ExpiresActive On
    ExpiresDefault "access plus 1 month"

    ExpiresByType text/html               "access plus 0 seconds"
    ExpiresByType text/xml                "access plus 0 seconds"
    ExpiresByType application/xml        "access plus 0 seconds"
    ExpiresByType application/json       "access plus 0 seconds"
    ExpiresByType application/rss+xml    "access plus 1 hour"
    ExpiresByType application/atom+xml   "access plus 1 hour"
    ExpiresByType image/x-icon           "access plus 1 week"
    ExpiresByType image/vnd.microsoft.icon "access plus 1 week"
    ExpiresByType application/manifest+json "access plus 1 week"
    ExpiresByType image/gif              "access plus 1 month"
    ExpiresByType image/png              "access plus 1 month"
    ExpiresByType image/jpeg             "access plus 1 month"
    ExpiresByType image/webp             "access plus 1 month"
    ExpiresByType image/svg+xml          "access plus 1 month"
    ExpiresByType text/css               "access plus 1 year"
    ExpiresByType application/javascript "access plus 1 year"
    ExpiresByType text/javascript        "access plus 1 year"
    ExpiresByType font/ttf               "access plus 1 year"
    ExpiresByType font/otf               "access plus 1 year"
    ExpiresByType font/woff              "access plus 1 year"
    ExpiresByType font/woff2             "access plus 1 year"
    ExpiresByType application/font-woff  "access plus 1 year"



    
        Header set Cache-Control "max-age=31536000, public, immutable"
    

    
        Header set Cache-Control "max-age=0, private, no-store, no-cache, must-revalidate"
    

Die .htaccess-Datei findet ihr auf eurem Webspace im obersten Ordner der Joomla Installation (Root). Ihr könnt sie mit einem einfachen Text-Editor editieren. 

Bilder für Joomla optimieren

Bilder sind häufig einer der größte Performance-Killer – und gleichzeitig einer der einfachsten Hebel.

WebP-Format nutzen

WebP ist ein modernes Bildformat und wurde speziell für den Einsatz im Web entwickelt. Es bietet bei gleicher oder besserer Qualität deutlich kleinere Dateigrößen als JPG oder PNG. Unser Tipp: Konvertiert vorhandene Bilder nach Möglichkeit in das WebP-Format. 

Ihr nutzt YOOthemePro für eure Website? Dann keine Sorge, denn YOOthemePro übernimmt diesen Part für euch auf Wunsch automatisch (mehr dazu unten).

Lazy Loading für Bilder aktivieren

Stellt euch vor, ihr betretet ein riesiges Buffet – aber ihr nehmt euch nicht sofort alles auf einmal auf den Teller, sondern nur das, was ihr gerade seht und essen möchtet. Genau nach diesem Prinzip funktioniert Lazy Loading bei Bildern.

Ohne Lazy Loading lädt der Browser beim Öffnen einer Seite alle Bilder auf einmal – auch die, die sich ganz unten auf der Seite befinden und der Besucher vielleicht nie zu sehen bekommt. Das kostet unnötig Zeit und Bandbreite, besonders auf mobilen Geräten.

Mit Lazy Loading werden Bilder erst dann geladen, wenn der Nutzer beim Scrollen in die Nähe des jeweiligen Bildes kommt. Das Ergebnis: Die Seite lädt initial schneller, der Besucher sieht sofort den oberen Bereich – und Bilder weiter unten folgen genau dann, wenn sie gebraucht werden.

Lazy Loading im JCE-Editor einstellen

Wenn ihr Bilder über den JCE-Editor in eure Joomla-Artikel einfügt, könnt ihr Lazy Loading direkt beim Einfügen des Bildes aktivieren. Im Bild-Dialog des JCE-Editors findet ihr unter den erweiterten Einstellungen die Option, das Laden-Verhalten des Bildes zu steuern. Setzt dort das Attribut „loading" auf „lazy" – fertig. Das ist eine einfache Einstellung, die sich bei jedem neu eingefügten Bild lohnt.

jce lazy

Lazy Loading in YOOtheme Pro

In YOOtheme Pro ist Lazy Loading bereits standardmäßig aktiviert – das ist eine der Stärken des Frameworks. Alle Bilder, die ihr über den YOOtheme Page Builder einfügt, werden automatisch nachgeladen.

Möchtet ihr für ein bestimmtes Bild das Lazy Loading deaktivieren – zum Beispiel für das Hero-Bild ganz oben auf der Seite, das der Besucher sofort sehen soll – müsst ihr das explizit einstellen. In den Bildeinstellungen des jeweiligen Elements findet ihr die Option „Bild sofort laden". Klickt ihr diese an, wird das Bild direkt beim Seitenaufruf geladen und nicht erst beim Scrollen.

yootheme lazy

Ein wichtiger Hinweis dazu: Das Hero-Bild oder ein anderes prominentes Bild im initial sichtbaren Bereich sollte immer sofort geladen werden. Denn genau dieses Bild beeinflusst euren LCP-Wert (Largest Contentful Paint) – und damit direkt euer Google-Ranking. Lazy Loading ist hier also kontraproduktiv und sollte für solche Bilder deaktiviert werden.

Responsive Images: Das richtige Bild für jedes Gerät

Ein Bild, das auf einem großen Desktop-Monitor wunderbar aussieht, hat oft eine Auflösung von 1.500 Pixeln Breite oder mehr. Wenn dasselbe Bild auf einem Smartphone geladen wird, dessen Display vielleicht nur 400 Pixel breit ist, passiert etwas Unnötiges: Der Browser lädt trotzdem das riesige Originalbild – und zeigt es dann verkleinert an. Das ist, als würdet ihr ein komplettes Lexikon bestellen, nur um einen einzigen Begriff nachzuschlagen.

Die Lösung heißt Responsive Images. Dabei werden vom selben Bild mehrere Versionen in unterschiedlichen Größen bereitgestellt – zum Beispiel eine kleine Version für Smartphones, eine mittlere für Tablets und eine große für Desktop-Bildschirme. Der Browser erkennt automatisch, welches Gerät gerade genutzt wird, und lädt genau die passende Version – nicht mehr und nicht weniger.

Technisch funktioniert das über das sogenannte srcset-Attribut im HTML-Code. Ihr müsst das als Nicht-Entwickler nicht im Detail verstehen – wichtig ist: Wer seine Website professionell aufsetzt, sollte sicherstellen, dass diese Technik zum Einsatz kommt. Sie spart Mobile-Nutzern erheblich Datenvolumen, reduziert die Ladezeit auf Smartphones spürbar und verbessert damit sowohl die Nutzererfahrung als auch das Google-Ranking.

In der Praxis lässt sich das in Joomla auf verschiedenen Wegen umsetzen (bspw. über den “Responsive”-Tab des JCE-Manager) oder über sauber entwickelte Templates wie YOOtheme Pro, das Responsive Images von Haus aus unterstützt, oder durch entsprechende Konfiguration im Rahmen einer professionellen Website-Entwicklung.

Kurz zusammengefasst: Jedes Gerät bekommt genau das Bild, das es braucht – nicht mehr, nicht weniger. Das ist gut für eure Besucher, gut für eure Ladezeiten und gut für euer Ranking.

YOOtheme: Bildkomprimierung aktivieren

Wenn ihr das YOOtheme Pro Template nutzt – unsere klare Empfehlung, dazu gleich mehr – aktiviert unbedingt die eingebaute Bildoptimierung. YOOtheme kann Bilder automatisch komprimieren, ins WebP-Format konvertieren und wie beschrieben als Lazy-Load ausliefern – direkt out of the box, ohne zusätzliche Extension.

Die gesuchte Option in diesem Fall heisst “Next-Gen Bilder”. Ihr findet diese unter Einstellungen -> Erweitert.

yootheme nextgen

JavaScript und CSS optimieren

Dieser Abschnitt richtet sich vor allem an Entwickler und technisch versierte Website-Betreiber. Die Optimierung von JavaScript und CSS ist kein Bereich, in dem man mal eben schnell ein paar Einstellungen anpassen sollte – falsch gemacht kann es dazu führen, dass die Website im schlimmsten Fall gar nicht mehr korrekt dargestellt wird oder wichtige Funktionen nicht mehr funktionieren.

Wer sich hier nicht sicher ist: Lieber einmal einen Experten fragen, als stundenlang auf Fehlersuche zu gehen. Unnötiges JavaScript blockiert den Browser beim Rendern, und CSS, das nicht verwendet wird, bläht das Stylesheet unnötig auf. Beides kostet Ladezeit – aber die Lösung erfordert ein solides Verständnis davon, wie eine Website technisch aufgebaut ist und welche Ressourcen wirklich gebraucht werden.

Wer eine sauber entwickelte Joomla-Website mit einem schlanken Template wie YOOtheme Pro betreibt, hat hier übrigens oft weniger Handlungsbedarf als gedacht. Denn ein gutes Fundament reduziert den Optimierungsbedarf in diesem Bereich von vornherein erheblich.

Defer / Async Loading über den Webasset Manager

Joomlas eingebauter Web Asset Manager (seit Joomla 4) ermöglicht feingranulares Laden von JS-Dateien. Mit defer und async können nicht-kritische Skripte nach dem Rendern der Seite geladen werden. Das entlastet den kritischen Rendering-Pfad erheblich.

Critical CSS inline

CSS, das für das initiale Rendern der Seite oberhalb des Folds benötigt wird, sollte direkt im Head-Bereich als Inline-CSS eingebettet sein. So wird der erste sichtbare Bereich sofort gerendert, ohne auf externe Stylesheets zu warten.

Unser ehrliches Urteil zu Pagespeed-Erweiterungen

Erweiterungen wie JCH Optimize versprechen, CSS und JS automatisch zu kombinieren und zu minifizieren. In der Theorie klingt das gut. In der Praxis haben wir bei djumla die Erfahrung gemacht: solche Extensions machen auf gut aufgesetzten Seiten oft mehr Probleme als gelöst werden. Konflikte mit Templates, kaputte Layouts, schwer zu debuggende Fehler – der Mehrwert ist gering, die Komplexität bei der Fehlersuche hoch. Wer seine Seite von Anfang an sauber aufsetzt, braucht solche Tools (in unseren Augen) nicht.

Hosting und Server-Optimierung

Das beste Joomla-Caching hilft nicht, wenn der Server selbst ein Flaschenhals ist.

Aktuelle PHP-Version verwenden

PHP 8.4 oder 8.5 sind signifikant schneller als ältere Versionen. Prüft euren Hoster und stellt auf die aktuellste stabile(!) Version um. Das allein kann die Server-Antwortzeit um 20 bis 30 Prozent reduzieren – ohne eine einzige Zeile Code zu ändern.

Ein netter Bonus: Hoster bieten den Support für veraltete PHP-Versionen meist nur gegen eine zusätzliche Gebühr an. Ein regelmäßiger Check kann sich also gleich doppelt lohnen!

HTTP/2 oder HTTP/3

HTTP/2 ermöglicht paralleles Laden mehrerer Ressourcen über eine einzige Verbindung. HTTP/3 (QUIC) geht noch einen Schritt weiter und reduziert die Latenz besonders auf mobilen Verbindungen. Prüft, ob euer Hoster HTTP/2 oder HTTP/3 unterstützt – die meisten modernen Webhoster tun das.

Gzip /Compression

Komprimierung sorgt dafür, dass HTML, CSS und JavaScript vor der Übertragung an den Browser quasi „zusammengepackt" werden – ähnlich wie ein ZIP-Archiv. Der Browser entpackt die Daten beim Empfang automatisch wieder. Das reduziert die Übertragungsgröße deutlich und beschleunigt die Ladezeit spürbar.

screnshot gzip

Den einfachsten Einstieg bietet Joomla direkt von Haus aus: Unter System → Globale Konfiguration → Server-Tab findet ihr die Option „Gzip-Seitenkomprimierung". Aktiviert ihr diese, komprimiert Joomla die ausgelieferten Seiten automatisch mit Gzip – ohne dass ihr etwas am Server oder an der .htaccess anfassen müsst. Das ist die unkomplizierteste Lösung und für die meisten Websites völlig ausreichend.

Joomla-Extensions auf Performance prüfen

Zu viele oder schlecht entwickelte Extensions sind in unserer Agenturerfahrung die häufigste Ursache für langsame Joomla-Sites. Das klingt zunächst vielleicht überraschend – schließlich sollen Extensions ja den Funktionsumfang erweitern und das Leben leichter machen. Aber die Realität sieht oft anders aus.

Nach mehr als 20 Jahren Joomla-Erfahrung können wir eines mit Überzeugung sagen: Nur in den seltensten Fällen ist das Joomla-Kernsystem selbst das Problem. Joomla ist von Haus aus ein schnelles, effizientes CMS. Was Websites ausbremst, sind fast immer schlecht entwickelte Dritterweiterungen – Extensions, die zu viele Datenbankabfragen erzeugen, unnötige externe Ressourcen laden oder schlicht nicht sauber programmiert sind. Deshalb gilt als oberste Regel: Prüft immer zuerst, ob eine Funktion wirklich eine Extension braucht – oder ob sie sich nicht mit Joomla-Bordmitteln lösen lässt. Ihr werdet überrascht sein, wie viel Joomla von Haus aus kann.

Langsame Extensions identifizieren

Für technisch versierte Nutzer: Aktiviert den Joomla-Debug-Modus unter System → Globale Konfiguration → Server-Tab → Debug-System. Am unteren Ende jeder Seite seht ihr dann detaillierte Informationen zu Datenbankabfragen, Speicherverbrauch und Ladezeiten. 100 oder mehr Datenbankabfragen pro Seitenaufruf? Dann gibt es definitiv einen Flaschenhals, den es zu finden gilt.

Für alle anderen gilt: Wenn eure Website spürbar langsamer wird, nachdem ihr eine neue Extension installiert habt, ist das kein Zufall. Testet im Zweifel, indem ihr die Extension deaktiviert und schaut, ob sich die Ladezeit verbessert.

Zusätzlich lohnt ein Blick in den Network-Tab der Browser-Konsole (F12 in Chrome oder Firefox). Dort seht ihr, welche externen Skripte und Ressourcen geladen werden – und ob vielleicht eine Extension heimlich Verbindungen zu Drittservern aufbaut, die niemand bestellt hat.

Boardmittel nutzen, bevor ihr eine Extension installiert

Viele Funktionen, für die reflexartig eine Extension installiert wird, lassen sich mit etwas Know-how direkt mit Joomla-Bordmitteln umsetzen. Kontaktformulare, Weiterleitungen, Zugriffsrechte, mehrsprachige Inhalte – das alles beherrscht Joomla von Haus aus, ohne dass eine einzige zusätzliche Extension nötig ist.

Fragt euch vor jeder Installation: Brauche ich das wirklich? Gibt es eine native Lösung? Eine Extension mehr bedeutet immer auch mehr Code, mehr potenzielle Konflikte, mehr Sicherheitsrisiko und mehr Wartungsaufwand. Weniger Extensions bedeuten in der Regel mehr Performance – und ruhigere Nächte.

Extension-Anzahl konsequent reduzieren

Stellt euch vor jeder neuen Extension drei ehrliche Fragen:

  • Ist diese Funktion wirklich notwendig – oder ist es ein Nice-to-have?
  • Gibt es eine leichtgewichtigere Alternative oder eine Bordmittellösung?
  • Rechtfertigt der Mehrwert die zusätzliche Last auf der Website?

Funktionen wie „Artikel liken", Social-Sharing-Buttons oder eingebettete Kommentarsysteme klingen auf den ersten Blick nett. In der Praxis laden sie jedoch häufig externe Skripte von Drittanbietern nach – und die könnt ihr weder kontrollieren noch optimieren. Oft bringt das Weglassen solcher Features mehr als jede technische Optimierung.

Spezialfall: JCE-Editor

Technischer Hinweis für JCE-Nutzer: Wenn ihr den JCE-Editor einsetzt, lohnt es sich, die Mehrspalten-Styles im JCE System-Plugin zu deaktivieren – sofern ihr keine mehrspaltige Layoutbearbeitung direkt im Editor benötigt. Das Plugin lädt zusätzliche Ressourcen, die in den meisten Setups schlicht nicht gebraucht werden. Eine kleine Stellschraube mit messbarem Effekt.

Ihr seid euch nicht sicher, ob ihr die Mehrspalten-Styles-Plugin braucht? In den meisten Standard-Setups lautet die Antwort: nein. Im Zweifel einfach deaktivieren, die Seite testen – und bei Bedarf wieder aktivieren.

Spezialfall: RS!Forms und YOOtheme

Dieser Hinweis richtet sich an alle, die RS!Forms und YOOtheme Pro gemeinsam einsetzen – ein in der Joomla-Welt sehr verbreitetes Duo.

Das Problem: Beide Erweiterungen nutzen das UI-Framework UIkit. Wenn nicht richtig konfiguriert, laden beide UIkit unabhängig voneinander – das bedeutet, UIkit wird doppelt in die Seite geladen. Das klingt nach einem kleinen technischen Detail, hat aber zwei unangenehme Folgen: Die Seite lädt langsamer als nötig, und es können Darstellungsfehler auftreten, die schwer zu debuggen sind.

rsforms yootheme

Die Lösung ist einfach, aber nicht offensichtlich: In der globalen Konfiguration von RS!Forms (oder je Formular) muss die UIkit-Ausgabe deaktiviert werden, damit YOOtheme die einzige Quelle für UIkit bleibt. Wenn ihr dieses Setup nutzt und euch nicht sicher seid, ob das bei euch korrekt konfiguriert ist – lasst es einmal von einem Experten prüfen. Es ist eine kleine Einstellung mit spürbarem Effekt.

Template-Optimierung: Das Fundament entscheidet

Man kann noch so viel rund um Caching, Bilder und Server optimieren – wenn das Template selbst performancetechnisch ein Desaster ist, wird es nichts. Manche Templates laden Dutzende von Drittanbieter-Bibliotheken, Bootstrap-Versionen, jQuery-Varianten und proprietäre Slider-Bibliotheken. Das ist keine Basis für eine schnelle Website.

Unsere klare Empfehlung: YOOtheme Pro

Wir setzen bei djumla seit Jahren auf YOOtheme Pro – und das aus gutem Grund. YOOtheme ist nicht nur ein Template, sondern ein komplettes Page-Builder-System, das nur das lädt, was wirklich gebraucht wird, eingebaute Bildoptimierung und WebP-Unterstützung bietet, auf UIkit basiert – einem schlanken, modularen Framework – und durch seinen visuellen Builder Entwicklung und Performance vereint.

Für alle, die das Maximum aus YOOtheme herausholen möchten, gibt es in den erweiterten Template-Einstellungen noch eine weitere interessante Stellschraube: Bootstrap – das CSS-Framework, das Joomla für eigene Ausgaben wie Login-Formulare oder die integrierte Suche benötigt – kann dort gezielt deaktiviert werden. Das macht dann Sinn, wenn auf der betreffenden Seite keine nativen Joomla-Ansichten eingesetzt werden. Im selben Bereich lässt sich übrigens auch das automatische Laden von Next-Gen-Bildformaten konfigurieren.

Technischer Hinweis: Deaktiviert Bootstrap in YOOtheme nur dann, wenn ihr sicher seid, dass keine Joomla-eigenen Komponenten-Ausgaben auf eurer Website zum Einsatz kommen. Wer zum Beispiel das Joomla-Login-Modul, die integrierte Suche oder andere native Joomla-Ansichten nutzt, sollte Bootstrap aktiv lassen – sonst kann es zu Darstellungsfehlern kommen. Im Zweifel lieber einmal einen Experten fragen, bevor ihr hier Änderungen vornehmt.

Ein gutes Template ist das Fundament jeder performanten Joomla-Site. Hier zu sparen oder ein kostenloses Template aus zweifelhafter Quelle einzusetzen, rächt sich früh – denn kein noch so ausgefeiltes Caching kann ein aufgeblähtes Template retten.

Monitoring und Wartung

Stellt euch vor, ihr kauft ein neues Auto, fahrt damit vom Hof – und schaut nie wieder unter die Haube. Kein Ölwechsel, kein Reifendruck, keine Inspektion. Irgendwann wird es Probleme geben. Mit einer Website ist es genauso. Performance ist kein Projekt, das man einmal abschließt und dann abhakt. Es ist ein kontinuierlicher Prozess, der regelmäßige Aufmerksamkeit braucht.

Die gute Nachricht: Mit den richtigen Tools und einem kleinen festen Zeitbudget im Monat habt ihr alles im Griff – auch ohne technisches Expertenwissen.

Uptime-Monitoring: Wisst ihr, wenn eure Website nicht erreichbar ist?

Die grundlegendste aller Performance-Fragen lautet: Ist meine Website überhaupt online? Klingt banal, ist aber ernster als man denkt. Server können abstürzen, Hosting-Probleme können auftreten, ein fehlerhaftes Update kann die Seite zum Absturz bringen – und wenn niemand davon erfährt, läuft die Website möglicherweise stundenlang nicht, während potenzielle Kunden ins Leere klicken.

Tools wie UptimeRobot (in der Basisversion kostenlos) überwachen eure Website rund um die Uhr und schicken euch sofort eine E-Mail oder eine Push-Nachricht aufs Smartphone, wenn etwas nicht stimmt. Die Einrichtung dauert keine zehn Minuten – und es ist eine der wertvollsten Maßnahmen, die ihr für eure Website treffen könnt.

Regelmäßige Audits: Einmal im Monat, 15 Minuten

Ihr müsst kein Entwickler sein, um den Zustand eurer Website regelmäßig zu prüfen. Legt euch einfach einen monatlichen Kalender-Termin an – 15 Minuten reichen völlig aus.

Ruft PageSpeed Insights auf, gebt eure URL ein und schaut, wie sich eure Werte im Vergleich zum Vormonat entwickelt haben. Haben sie sich verschlechtert? Dann ist irgendetwas passiert – vielleicht ein Plugin-Update, ein neues Bild ohne Komprimierung oder eine neu installierte Extension. Haben sie sich verbessert? Dann wisst ihr, dass eure Maßnahmen wirken.

Google Search Console: Googles ehrliches Feedback

Die Google Search Console ist ein kostenloses Tool von Google, das euch zeigt, wie Google eure Website wirklich bewertet – nicht auf Basis von Laborwerten, sondern auf Basis echter Nutzerdaten aus dem echten Alltag.

Unter dem Bereich „Core Web Vitals" seht ihr auf einen Blick, welche Seiten eurer Website Google als „Gut", „Verbesserungswürdig" oder „Schlecht" einstuft. Das ist keine theoretische Messung – hier fließen echte Nutzererfahrungen von echten Besuchern ein. Wenn Google hier Seiten als problematisch markiert, hat das direkten Einfluss auf euer Ranking in den Suchergebnissen.

Die Search Console kostenlos einzurichten und gelegentlich einen Blick hineinzuwerfen sollte ohnehin für jeden Website-Betreiber Pflicht sein – egal ob technisch versiert oder nicht. Wer hier regelmäßig schaut, hat einen echten Vorteil gegenüber Mitbewerbern, die blind fahren.

FAQ: Joomla Performance – die häufigsten Fragen

Warum ist meine Joomla-Website langsam?

In den meisten Fällen sind es nicht Joomla selbst, sondern zu viele oder schlecht entwickelte Extensions, ein aufgeblähtes Template oder ein schwaches Hosting. Aktiviert den Debug-Modus und analysiert die Datenbankabfragen.

Welches Caching-Plugin ist das beste für Joomla?

Joomla bringt von Haus aus ein leistungsfähiges Caching-System mit. Das Page Cache Plugin in Kombination mit Browser-Caching via .htaccess ist für die meisten Sites völlig ausreichend. Für High-Traffic-Sites empfehlen wir Redis als Cache-Handler.

Wie aktiviere ich Gzip in Joomla?

In der Joomla-Konfiguration unter System → Globale Konfiguration → Server → Gzip-Komprimierung aktivieren.

Brauche ich ein CDN für Joomla?

Ein CDN lohnt sich vor allem dann, wenn eure Zielgruppe geografisch verteilt ist oder ihr viele statische Assets ausliefert. Für lokale Websites, zum Beispiel für Kölner KMU, ist ein gutes Hosting in Deutschland völlig ausreichend.

Wie optimiere ich Joomla für Mobile?

Nutzt Responsive Images mit srcset, aktiviert Lazy Loading, reduziert JavaScript auf das Minimum und testet konsequent mit dem Mobile-Report in PageSpeed Insights. Ein mobiloptimiertes Template wie YOOtheme Pro ist dabei die Grundvoraussetzung.

Erfahrungen aus der Praxis: Was wir bei djumla täglich sehen

Nach Jahren als Joomla-Agentur in Köln können wir eines klar sagen: Joomla ist kein Performance-Problem. Es ist ein schnelles, effizientes CMS – wenn man es respektvoll behandelt.

Was wir jedoch immer wieder sehen:

  • Zu viele Extensions: Jede Extension, die installiert wird, kostet Ladezeit, Speicher und Datenbankabfragen. Oft werden Extensions für Funktionen installiert, die man mit ein bisschen Know-how auch nativ in Joomla umsetzen könnte. Weniger ist hier definitiv mehr.
  • Schwache Templates:  Ein Template, das Bootstrap 3, jQuery 1.x, einen proprietären Slider und fünf weitere Bibliotheken lädt, ist kein Template – es ist ein Problem. 
  • Schlecht entwickelte Individualentwicklungen: Custom Erweiterungen, die bei jedem Seitenaufruf 200 Datenbankabfragen erzeugen, sind leider keine Seltenheit. Hier hilft nur Code-Review und Refactoring.

Und der vielleicht wichtigste Rat aus unserer Praxis: Lieber einmal einen Experten fragen als tagelang selbst im Dunkeln tappen. Eine Website mit schlechter Performance kostet jeden Tag Geld – durch schlechtere Rankings, höhere Absprungraten und verlorene Conversions. Das gilt besonders im E-Commerce-Umfeld, wo jede Sekunde Ladezeit direkt den Umsatz beeinflusst.

Ihr habt Fragen zu eurer Joomla-Performance oder wollt wissen, wo bei eurer Website der Schuh drückt? Wir von djumla aus Köln schauen gerne gemeinsam drauf. 

Jetzt Kontakt aufnehmen und kostenloses Erstgespräch vereinbaren.

Mehr Wissen aus der Praxis

Barrierefreie Joomla-Websites: Der Praxisleitfaden für Seitenbetreiber

Zur Case Study

Joomla Kontaktformular Spam verhindern: Die besten Lösungen von reCAPTCHA bis ALTCHA

Zur Case Study