5 Performance-Tricks die deine Website sofort schneller machen
Letzte Woche rief mich ein Kunde an: "Unsere Website lädt ewig. Google sagt irgendwas von 'Core Web Vitals'. Können Sie da was machen?" Ich schaue mir die Seite an – 8,3 Sekunden Ladezeit. Autsch.
Zwei Tage später: 1,4 Sekunden. Kein Relaunch, kein neues Hosting, nur gezielte Optimierungen. Wie? Das zeige ich dir jetzt.
1. Bilder optimieren (der größte Hebel überhaupt)
Hier geht meistens das meiste schief. Ich sehe ständig Websites mit:
- 5MB großen Hero-Bildern (hochgeladen direkt aus der Kamera)
- PNG statt WebP
- Keine Lazy Loading
- Falsche Dimensionen (2400x1600px Bild für 400x300px Darstellung)
Was du sofort tun kannst:
Schritt 1: Komprimieren
Benutze TinyPNG oder Squoosh. Oft kannst du Bilder um 70-80% verkleinern ohne sichtbaren Qualitätsverlust.
Schritt 2: Moderne Formate
WebP statt JPEG/PNG spart nochmal 30% Dateigröße. Bei dem oben genannten Kunden haben wir alle Hero-Bilder von PNG zu WebP konvertiert: Von 4,2MB auf 680KB.
Schritt 3: Responsive Images
<!-- Falsch -->
<img src="hero-huge.jpg" width="400">
<!-- Richtig -->
<img
srcset="
hero-small.webp 400w,
hero-medium.webp 800w,
hero-large.webp 1200w
"
sizes="(max-width: 600px) 400px, 800px"
src="hero-medium.webp"
loading="lazy"
>
Real-World Beispiel:
E-Commerce-Kunde mit 150 Produktbildern. Vor Optimierung: 23MB Bilder-Download. Nach Optimierung: 3,1MB. Die Conversion-Rate stieg um 12% – einfach weil die Produktseiten schneller luden.
2. JavaScript und CSS aufräumen (weniger ist mehr)
Du kennst das: Da ist ein jQuery-Plugin für den Slider, ein Countdown-Script für die Landingpage, Analytics, Marketing-Pixel, Chatbot... Alles addiert sich.
Die Realitäts-Prüfung:
Öffne die Dev-Tools (F12) → Network → Reload. Sortiere nach Größe. Was siehst du?
Bei unserem Kunden:
- jQuery (89KB) – wurde nur für EIN Dropdown genutzt
- Alte Marketing-Pixel (3 Stück) von beendeten Kampagnen
- Font Awesome (320KB) – für 5 Icons
Was wir gemacht haben:
jQuery weg, Vanilla JS:
// Vorher: jQuery für ein simples Dropdown
$('.menu-toggle').click(function() {
$('.menu').slideToggle();
});
// Nachher: 3 Zeilen Vanilla JS
document.querySelector('.menu-toggle').addEventListener('click', () => {
document.querySelector('.menu').classList.toggle('open');
});
Gespart: 89KB
Font Awesome weg, Inline-SVG:
Statt die komplette Icon-Library zu laden, haben wir die 5 genutzten Icons als SVG direkt in den HTML eingebunden.
Gespart: 320KB
Alte Scripts entfernt:
Marketing-Pixel von Kampagnen, die seit 2 Jahren vorbei sind? Weg damit.
Gespart: 140KB
Gesamt: 549KB weniger JavaScript/CSS – das sind ca. 2 Sekunden weniger Ladezeit auf einem durchschnittlichen Handy.
3. Lazy Loading richtig einsetzen
Lazy Loading bedeutet: Inhalte werden erst geladen, wenn sie gebraucht werden. Klingt simpel, aber die meisten machen es falsch.
Was du lazy loaden solltest:
✅ Bilder unterhalb des Fold (alles was man scrollen muss)
✅ Videos und iFrames (YouTube-Embeds!)
✅ Kommentarsektionen
✅ Social Media Feeds
Was du NICHT lazy loaden solltest:
❌ Hero-Bild (Above the Fold)
❌ Logo und Navigation
❌ Kritische CSS und Fonts
Der YouTube-Trick:
Ein eingebettetes YouTube-Video lädt ~1MB an Daten – auch wenn niemand auf Play klickt.
Lösung: Fake-Thumbnail mit Click-to-Load:
<div class="video-container" onclick="loadVideo(this)">
<img src="video-thumbnail.jpg" loading="lazy">
<svg class="play-button"><!-- Play Icon --></svg>
</div>
<script>
function loadVideo(container) {
const iframe = document.createElement('iframe');
iframe.src = 'https://youtube.com/embed/VIDEO_ID?autoplay=1';
container.innerHTML = '';
container.appendChild(iframe);
}
</script>
Ersparnis pro Video: ~1MB, Ladezeit: -0,5 Sekunden
4. Server Response Time optimieren (Backend-Performance)
Schnelle Frontend-Optimierung bringt nichts, wenn dein Server 3 Sekunden braucht um die erste Response zu senden.
Typische Backend-Bremsen:
Datenbank-Queries:
Ein WordPress-Blog mit 50 Plugins? Da laufen oft 200+ Database-Queries pro Seitenaufruf.
Fix: Query-Monitoring einbauen und langsame Queries optimieren.
// Langsam: Bei jedem Request alle Posts laden
$posts = get_posts(['numberposts' => -1]);
// Schnell: Caching nutzen
$posts = wp_cache_get('all_posts');
if (!$posts) {
$posts = get_posts(['numberposts' => -1]);
wp_cache_set('all_posts', $posts, '', 3600);
}
Server-Location:
Dein Server steht in den USA, deine Kunden sind in Deutschland? Jeder Request braucht 200ms nur für die Verbindung.
Fix: CDN nutzen (Cloudflare, BunnyCDN) oder Server in EU hosten.
Real-World Impact:
E-Learning-Platform eines Kunden:
- Vorher: Server in USA, TTFB 1200ms
- Nachher: Hetzner in Deutschland + Cloudflare CDN, TTFB 89ms
Ergebnis: 1,1 Sekunden schnellere Ladezeit, 23% mehr Sign-Ups (A/B getestet).
5. Kritisches CSS inline, Rest asynchron
Das Problem: Browser laden CSS blockierend. Solange style.css nicht komplett geladen ist, wird nichts angezeigt. Bei großen CSS-Dateien (200KB+) kostet das wertvolle Sekunden.
Die Lösung: Critical CSS
Konzept:
- Extrahiere das CSS das für "Above the Fold" Content nötig ist
- Inline dieses CSS direkt im
<head> - Lade den Rest des CSS asynchron nach
Wie findet man Critical CSS?
Tools wie Critical oder Penthouse extrahieren automatisch das benötigte CSS.
Implementation:
<head>
<!-- Critical CSS inline -->
<style>
/* Nur das CSS für Above-the-Fold */
body { margin: 0; font-family: sans-serif; }
.hero { height: 100vh; background: blue; }
/* ... */
</style>
<!-- Rest asynchron laden -->
<link rel="preload" href="style.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
<noscript><link rel="stylesheet" href="style.css"></noscript>
</head>
Messbarer Impact:
- First Contentful Paint: -1,2 Sekunden
- Largest Contentful Paint: -0,8 Sekunden
- Google PageSpeed Score: +34 Punkte
Das Zusammenspiel: Vorher/Nachher
Zurück zu unserem Kunden vom Anfang. Was haben die Optimierungen gebracht?
Vorher:
- Ladezeit: 8,3 Sekunden
- PageSpeed Score: 34/100 (Mobile)
- Transferred: 5,8MB
- Requests: 127
Nachher:
- Ladezeit: 1,4 Sekunden
- PageSpeed Score: 92/100 (Mobile)
- Transferred: 890KB
- Requests: 23
Business Impact:
- Bounce Rate: -31%
- Average Session Duration: +2:14 Minuten
- Conversions: +18%
- Google Rankings: 12 Keywords in Top 3 (vorher: 2)
Tools zum Messen
Ohne Messung kannst du nicht optimieren. Diese Tools nutze ich täglich:
1. PageSpeed Insights
Der Standard. Zeigt Core Web Vitals und gibt konkrete Verbesserungsvorschläge.
2. WebPageTest
Detailliertere Analysen, Filmstrip-View, verschiedene Locations testbar.
3. GTmetrix
Gute Balance zwischen Detail und Übersichtlichkeit. Historische Daten verfügbar.
4. Chrome DevTools (F12 → Lighthouse)
Direkt im Browser, super für schnelle Checks während der Entwicklung.
Dein Action Plan
Wo anfangen? Hier deine Prioritätenliste:
Diese Woche:
- Alle Bilder durch TinyPNG jagen
- Nicht genutzte JavaScript/CSS-Files identifizieren und entfernen
- Lazy Loading für Bilder aktivieren
Nächsten Monat:
4. Server Response Time messen und ggf. Hosting wechseln
5. Critical CSS implementieren
6. CDN einrichten
Pro-Tipp: Fang mit Bildern an. Das hat bei 90% meiner Kunden den größten Impact bei geringstem Aufwand.
Brauchst du Hilfe?
Performance-Optimierung ist kein Hexenwerk – aber manchmal braucht man jemanden der weiß wo die Hebel sind. Wir bei Unified Digital Solutions machen kostenlose Performance-Audits.
Schick uns deine URL und wir sagen dir wo du am meisten rausholen kannst. Ohne Bullshit, nur konkrete Zahlen und Empfehlungen.