Analyse starten
Messung · 9. September 2026

Was diese Seite über sich selbst weiß

Jedes Mandat bekommt von uns eine Messung mit Belegen. Diese Seite ist dieselbe Messung — nur auf uns selbst angewendet. Mit allen Befunden, die dabei herauskamen — auch dem, den die fertige Report-Seite über sich selbst geliefert hat.

Stand

Gemessen am 9. September 2026 gegen die live ausgelieferte Seite unter julianweisel.de, nicht gegen einen lokalen Ordner. Punktzahlen sind der Median aus drei Lighthouse-Läufen im Handy-Modus (Einzelläufe der Ladezeit: 92 · 94 · 94). Die übrigen Werte stammen aus einem eigenen Prüflauf im echten Browser bei 390 px Breite.

01Warum es hier kein Vorher gibt

Bei einem Mandat steht in diesem Bericht links die alte Seite und rechts die neue. Diese Seite hat keine alte Fassung — sie wurde nie umgebaut, sie ist gewachsen. Ein Vorher-Nachher wäre also erfunden, und erfundene Zahlen sind genau das, was wir sonst anderen ankreiden.

Also steht hier der Ist-Stand mit seinen Schwellen: was die Seite heute leistet, wo die Grenze liegt, ab der es gut heißt, und was sie nicht schafft. Vier Befunde sind rot. Drei davon haben dieselbe Ursache.

02Was gemessen wurde

Die Balken sind gezeichnet, nicht getippt: Jede Zahl steht als Text daneben und wird von Vorlesewerkzeugen genauso vorgelesen — der Balken ist nur die Abkürzung fürs Auge.

Punktzahlen — mehr ist besser

Lighthouse, Handy, Median aus 3 Läufen0 bis 100
Ladezeit94 / 100
Barrierefreiheit100 / 100
Technik73 / 100
Auffindbarkeit100 / 100

Der senkrechte Strich markiert 90 — ab dort gilt ein Wert bei Google als gut. Warum die Technik bei 73 steht, steht unter Befund 1 und 2; die Ursache liegt nicht im Code dieser Seite.

Ladeverhalten — weniger ist besser

Jede Zeile hat ihre eigene SkalaStrich = Schwelle
Bis der Hauptinhalt stehtSkala 0–5 s · Schwelle 2,5 s2,15 s
Springt das Layout beim LadenSkala 0–0,25 · Schwelle 0,10,001
Blockierte BedienzeitSkala 0–600 ms · Schwelle 200 ms191 ms
Server-AntwortzeitSkala 0–600 ms · Schwelle 200 ms66 ms
Seitengewicht, alles zusammenSkala 0–600 KB · 19 Dateien261 KB

Die blockierte Bedienzeit liegt mit 191 ms nur neun Millisekunden unter der Schwelle — das ist die Zeile, die als nächste kippt. Die 66 ms sind am Server gemessen. Sechs Abrufe von einem Wohnanschluss aus streuten dagegen zwischen 59 und 609 ms — das ist die Leitung dorthin, nicht der Server. Deshalb steht hier der Median und nie ein Einzelwert: Wer den schlechtesten Abruf zitiert, schickt einen Betrieb wegen der eigenen WLAN-Qualität zum Hoster-Wechsel.

Was die 261 KB ausmacht

ArtDateienGrößeAnmerkung
Schriften463 KBSelbst gehostet, deshalb kein fremder Server
Skripte760 KBDer größte Hebel, wenn wir kürzen wollen
Bilder257 KBPorträt und Logo — mehr sind es nicht
Stile248 KBEin Stylesheet für 123 Seiten
Das HTML selbst128 KBKomprimiert ausgeliefert

Daraus gerechnet (SWDM3): rund 0,13 g CO₂ je Aufruf. Kein Selbstzweck — ein Nebenertrag des geringen Gewichts.

03Was gut ist und bleibt

Das steht bewusst vor den Befunden. Ein Bericht, der nur Fehler zählt, ist ein Verkaufsprospekt — und beim Umbauen zerstört man am zuverlässigsten das, was vorher unbemerkt funktioniert hat. Vierzehn Werte sind gut, und sie zu halten ist Teil der Arbeit.

04Die Befunde, mit Beleg

Jeder Befund steht hier mit der Stelle, an der er sichtbar wird — Konsolenmeldung, Quelltextzeile oder Messwert. Ohne Beleg ist ein Befund eine Behauptung.

Handeln Befund 1 · der teuerste

Die Zugriffsmessung läuft seit dem Einschalten nicht

Cloudflare fügt sein Analyse-Skript automatisch am Rand in jede ausgelieferte Seite ein — es steht dafür nicht im Quelltext. Unsere eigene Sicherheitsrichtlinie erlaubt Skripte aber nur von einer festen Liste, und static.cloudflareinsights.com steht nicht darauf. Der Browser weist das Skript ab, bevor es startet.

Beleg · Browser-Konsole beim Messlauf
Loading the script 'https://static.cloudflareinsights.com/beacon.min.js/…'
violates the following Content Security Policy directive:
"script-src 'self' 'unsafe-inline' https://challenges.cloudflare.com
 https://www.googletagmanager.com https://*.google-analytics.com
 https://app.cal.com"

Zwei Seiten, die beide recht haben, und niemand hat sie miteinander bekannt gemacht: Der Schalter im Cloudflare-Konto ist an, die Regel in _headers ist streng — und beides zusammen ergibt eine Messung, die nie eine Zahl geliefert hat.

Was es kostet Keine Zugriffszahlen aus dieser Quelle — und in der Technik-Wertung zwei von drei Abzügen. Das ist der Unterschied zwischen 73 und 100.
Handeln Befund 2

Drei veraltete Schnittstellen — keine davon aus unserem Code

Lighthouse zieht in der Technik-Wertung fünf Gewichtspunkte für veraltete Browser-Schnittstellen ab. Alle drei Meldungen stammen aus derselben Datei — und die gehört Cloudflares Bot-Erkennung, nicht dieser Seite.

Beleg · Lighthouse, Abschnitt „Uses deprecated APIs“
The Shared Storage API is deprecated …
StorageType.persistent is deprecated …
The Protected Audience API is deprecated …

  Quelle (alle drei):
  /cdn-cgi/challenge-platform/scripts/jsd/main.js
Warum das trotzdem hierher gehört Ein Besucher merkt nichts davon, und der Code lässt sich nicht ändern — er kommt vom Netzbetreiber. Änderbar ist nur der Schalter, der ihn einspielt. Genau deshalb steht er unten in der Maßnahmenliste und nicht in der Ablage.
Handeln Befund 3

Ein Cookie wird vor der Einwilligung gesetzt — und es ist nicht unseres

Beim bloßen Aufruf der Startseite, ohne jeden Klick, liegt genau ein Cookie im Browser — in fünf von fünf Aufrufen mit frischem Browserprofil nachgestellt. Es kommt aus derselben Ecke wie Befund 2.

NameGesetzt vonLäuft bisZweck
cf_clearanceCloudflare, am Rand09.09.2027Merkt sich, dass der Besucher die Bot-Prüfung bestanden hat

Das ist kein Tracking. Es misst nichts, es folgt niemandem über Seiten hinweg, und als Sicherheitsfunktion ist es nach § 25 Abs. 2 TDDDG ohne Einwilligung zulässig. Der Fehler liegt woanders: In der Datenschutzerklärung kommt es nicht vor — null Treffer. Wer ein Cookie setzt, muss es benennen, auch ein notwendiges.

Der Zusammenhang Befund 1, 2 und 3 haben dieselbe Wurzel: Schalter im Cloudflare-Konto, die jemand einmal angehakt und nie wieder angesehen hat. Das ist der eigentliche Befund dieser Messung — und es ist derselbe Fall, den wir bei Mandanten regelmäßig finden.
Handeln Befund 4

16 zu kleine Antippflächen — davon elf echte

Gemessen bei 390 px Breite: 16 bedienbare Elemente sind schmaler oder flacher als 44 px. Der Rohwert ist aber nicht der Befund — fünf davon sind Verweise mitten im Satz, und dafür gibt es in WCAG 2.5.8 eine ausdrückliche Ausnahme. Bleiben elf.

ElementAnzahlGemessenEinordnung
Menüpunkte im Ausklapper433 × 36 pxDer eigentliche Befund — beide Maße zu klein
Rechtszeilen im Menüfuß263 × 21 px · 38 × 21 pxHalbe Höhe — der zweite Befund
„Analyse starten“ im Menü142 × 47 px2 px zu schmal — kosmetisch
„Alle 13 Rechner ansehen“1193 × 42 px2 px zu flach — kosmetisch
Knöpfe im Cookie-Hinweis2126 × 40 px4 px zu flach — und ausgerechnet hier zählt der Fehlgriff
„Zum Inhalt springen“1139 × 40 pxErscheint nur bei Tastaturbedienung
Verweise mitten im Satz516–17 px hochAusnahme nach WCAG 2.5.8 — kein Befund
Der Punkt, an dem es wehtut Vergrößert wird die Fläche, nicht die Schrift. Und die vier Menüpunkte mit 33 × 36 px sind der Weg durch die ganze Seite — wer dort danebentippt, landet auf einer Seite, die er nicht wollte.
Beobachten Befund 5

87 % — was eine KI von der Startseite sieht

GPTBot, ClaudeBot und PerplexityBot führen kein JavaScript aus. Sie lesen das rohe HTML und kommen kein zweites Mal wieder. Was erst im Browser entsteht, existiert für sie nicht. Gemessen wird das, indem man die tragenden Wörter der sichtbaren Seite im ausgelieferten HTML sucht.

Die fehlenden 13 % haben zwei Ursachen, und die erste ist die ärgerliche: Das Zitatband oben auf der Startseite wird vom Browser zusammengesetzt. Aus 30 hinterlegten Fragen werden bei jedem Aufruf acht gemischt eingesetzt — im HTML steht keine einzige.

Beleg · Gegenprobe an der ausgelieferten Startseite
$ curl -s --compressed https://julianweisel.de/ | grep -c "händisch"
0
$ curl -s --compressed https://julianweisel.de/ | grep -c "Entschuldigung"
0

Im Browser sichtbar, im HTML nicht auffindbar:
  „Warum machen wir Dinge noch händisch, die Software längst kann?“
  „Verschicke ich den Link mit Stolz oder mit einer Entschuldigung?“
  „Geben wir Rabatte nur, um den Auftrag nicht zu verlieren?“

Die zweite Ursache ist harmlos: Auch der Cookie-Hinweis wird im Browser gebaut. Dass „Ablehnen“ und „Akzeptieren“ nicht im HTML stehen, ist keinem Leser und keiner Maschine ein Verlust.

Ehrlich dazugesagt Der Wert schwankt von Lauf zu Lauf, weil das Band jedes Mal andere acht Fragen zieht. 87 % ist eine Momentaufnahme, kein Fixpunkt — die Ursache dahinter ist es sehr wohl.
Beobachten Befund 6

Zwei geprüfte Profile — der Anker ist dünn

Im Betriebs-Schema stehen zwei bestätigte Profile. Daran erkennt eine Antwortmaschine, dass Google-Eintrag, Netzwerkprofil und Website denselben Menschen meinen.

Beleg · aus dem ausgelieferten HTML
"sameAs": [
  "https://www.linkedin.com/in/hijulian/",
  "https://www.google.com/maps/place/?q=place_id:ChIJtUwQtWhtd2oRsZ5pcgvQkPw"
]

Zwei ist wenig, aber jeder weitere Eintrag muss ein echtes, erreichbares Profil sein. Ein Link auf eine Plattform-Startseite ohne Profilnamen zählt nicht — er macht die Angabe schlechter, nicht länger. Und ein Kanal kommt hier nie dazu: Es gibt kein Twitter/X, also steht auch keines drin.

Entschieden Befund 7

Keine antippbare Telefonnummer — weil es keine gibt

Die Prüfung sucht einen tel:-Verweis und findet keinen. Bei einem Handwerksbetrieb wäre das der teuerste Einzelbefund überhaupt — hier ist es eine Entscheidung: Auf dieser Seite steht nirgends eine Telefonnummer, auch nicht im Impressum. Erreichbar sind wir per E-Mail und über das Formular, und § 5 DDG verlangt einen schnellen elektronischen Weg, keine Rufnummer.

Warum es trotzdem rot gemessen wird Eine Messung kann „fehlt“ nicht von „so gewollt“ unterscheiden. Genau dafür steht neben jeder Zahl ein Mensch, der sie einordnet — sonst produziert ein Bericht Maßnahmen gegen Entscheidungen.
Messfehler Befund 8 · gegen uns selbst

„FAQ nicht ausgezeichnet“ war falsch — der Prüfer sah nur eine Seite

Der Lauf meldete: keine ausgezeichneten Frage-Antwort-Paare. Das stimmt für die Startseite — dort gibt es keine. Nachgesehen, wo die Fragen tatsächlich stehen:

Beleg · /fragen, im ausgelieferten HTML
"@type": "FAQPage"     →  vorhanden
"@type": "Question"    →  12 Stück
Sichtbare Aufklapper   →  12 Stück
                          ────────────
                          12 von 12 ausgezeichnet

Die Prüfung hat also nicht die Seite bewertet, sondern sich selbst — sie schaute nur auf die Startseite und nannte das Ergebnis einen Befund. Der Prüfer ist nachgeschärft, er sieht jetzt auch die Unterseiten an. Frage-Antwort-Paare haben von allen Schema-Arten die höchste Zitierwahrscheinlichkeit; ein falscher Alarm an dieser Stelle hätte teuer werden können.

Beobachten Befund 9 · diese Seite hier

Beim ersten Laden springt diese Seite — die Startseite tut es nicht

Beim Nachmessen der fertigen Seite kam heraus: 0,110 Layoutsprung (Median aus drei Läufen), Schwelle ist 0,1. Die Startseite liegt bei 0,001. Der Unterschied ist der Aufbau: Dort steht jeder Abschnitt in einer bildschirmhohen Fläche, hier läuft der Text durch. Wenn die Seite kurz nach dem Zeichnen die Sprache tauscht, ändert der lange Absatz oben seine Zeilenzahl — und alles darunter rutscht.

Beleg · Lighthouse, größter Einzelsprung
0,1044   section.rep   „AS OF · Measured on 9 September 2026 …"
0,0049   .stand-banner p
0,0003   .analyse-cta-float
         ─────────────────────────────────────────────
         0,110 gesamt · Schwelle 0,1 · Startseite 0,001

Zwei Drittel des Sprungs waren vorher schon weg: Die Startseite lädt ihre beiden Hauptschriften vor, diese Seite tat es nicht — bis der Tausch von Ersatz- auf echte Schrift jeden Absatz umbrach (0,283 vor dem Vorladen, 0,110 danach). Der Rest ist der Sprachtausch.

Warum das hier steht und nicht stillschweigend verschwindet Ein Bericht, der Sprünge als Befund abbildet und den eigenen verschweigt, ist keiner. Der saubere Weg ist, die Sprache festzulegen, bevor gezeichnet wird — das betrifft jede zweisprachige Seite hier und ist deshalb keine Änderung an dieser einen. Sie steht auf der Liste.

05Gefunden werden, wenn niemand mehr sucht

Immer mehr Menschen tippen ihre Frage nicht bei Google ein, sondern fragen eine KI. Die Antwort nennt zwei, drei Betriebe — und wer nicht dabei ist, taucht gar nicht auf. Vier Dinge entscheiden darüber, und drei davon erklärt sonst niemand.

Eine Auskunft statt zwölf

Jede Seite trägt maschinenlesbar, wer hier arbeitet. Steht das auf zwölf Seiten zwölfmal ohne gemeinsame Kennung, sieht eine Antwortmaschine zwölf verschiedene Betriebe und zitiert im Zweifel keinen. Hier gibt es eine Definition mit fester Kennung, alle Unterseiten verweisen darauf. Über die Bestandsprojekte gemessen ist das die Ausnahme, nicht die Regel — eine Seite im Portfolio kam auf zehn Definitionen und null Kennungen.

KI-Crawler führen kein JavaScript aus

Das ist der Satz, an dem die meisten modernen Seiten scheitern: Was erst der Browser zusammenbaut, sieht ein KI-Crawler nie. Er liest rohes HTML und kommt nicht wieder. Deshalb ist die Kennzahl aus Befund 5 die zentrale — und deshalb ist ein hübscher Rechner, der erst im Browser entsteht, für eine Antwortmaschine eine leere Seite.

llms.txt — ehrlich eingeordnet

Diese Seite hat eine /llms.txt, und sie wird beim Bauen erzeugt statt von Hand gepflegt — eine zweite Datei, die man nachziehen muss, läuft nach dem ersten Umzug auseinander. Was sie nicht ist: ein Sichtbarkeits-Werkzeug. Der überwiegende Teil aller llms.txt wird nie abgerufen, Google liest sie nicht. Sie zählt für Werkzeuge, die gezielt darauf zugreifen — nicht für Zitierungen. Wer sie als Reichweiten-Maßnahme verkauft, verkauft eine Behauptung ohne Beleg.

Nichts erfunden

Im Schema dieser Seite steht keine Sternebewertung und keine Preisspanne — beides ließe sich in zwei Minuten hinschreiben und würde in Suchergebnissen gut aussehen. Erfundene strukturierte Daten sind aber schlimmer als fehlende: Google straft sie ab, und eine KI gibt sie als Tatsache weiter. Was hier steht, ist belegt oder es steht nicht da.

Und die Frage, die wir uns selbst noch nicht beantwortet haben

In der robots.txt steht ein Content-Signal: Suchindex, KI-Abruf und KI-Training sind drei getrennte Erlaubnisse, und das gilt zugleich als Rechtevorbehalt nach § 44b UrhG. Die dritte davon ist eine echte Abwägung — ein KI-Crawler holt tausendfach mehr Seiten, als er Besucher zurückschickt. Wer aber gar nicht im Trainingsmaterial vorkommt, ist der Maschine womöglich unbekannt. Diese Entscheidung gehört dem Betrieb, nicht dem Dienstleister.

06Was daraus folgt

Nach Wirkung sortiert, nicht nach Aufwand.

07Was noch zu klären ist

Drei Punkte sind keine Aufgaben, sondern Entscheidungen — und Entscheidungen gehören nicht in eine Maßnahmenliste, sondern in ein Gespräch.

Dieselbe Messung für deinen Betrieb

Was hier steht, ist kein Sonderfall für die eigene Seite — es ist der Bericht, den jedes Mandat bekommt: gemessen, belegt, mit dem Guten vor den Befunden und ohne eine einzige Zahl, die wir nicht selbst nachgesehen haben.