Heutzutage integriert Google verschiedenste Inhalte in die Ergebnislisten. Ohne prägnante Ergänzungen wie Videos, der Autorenverknüpfung und Bewertungssternen wird es immer schwieriger vom Suchenden in den Suchergebnislisten wahrgenommen und angeklickt zu werden.

In einem Artikel von Search Engine Land wurde dieses Thema kürzlich aufgegriffen. In diesem Artikel zeigen wir die Vorteile strukturierter Daten, sowie die Verwendung und Einbindung von Schema.org und dem Data Highlighter von Google. Jeder Webmaster soll die Vorteile erkennen und das Potential nutzen.

Mittels strukturierter Daten können Suchergebnisse, sogenannte Snippets, in den Suchergebnislisten erweitert und somit präsenter für Suchende dargestellt werden. Standardmäßig bestehen Snippets aus dem Seitentitel, der URL und der Meta-Beschreibung.

Bildschirmfoto 2013-11-25 um 17.18.02
Quelle: Google Suche, 11.11.2013

Rich Snippets hingegen beinhalten zusätzliche Informationen wie Videovorschau, Bewertungssterne und andere Elemente. Die drei Snippet Beispiele zeigen die erweiterten Suchergebnis-Anzeigen mit Videos oder Bewertungen. Diese unterscheiden sich klar vom normalen Suchergebnis und sind aufgrund zusätzlicher Informationen deutlich auffälliger.

Bildschirmfoto 2013-11-25 um 17.18.09
Bildschirmfoto 2013-11-25 um 17.18.16
Quelle: Google Suche, 11.11.2013

Aber was sind strukturierte Daten?

Vereinfacht kann man sich strukturierte Daten wie eine Art Tabelle vorstellen. Es gibt Spaltenbezeichnungen (Datentypen) und die jeweils zugeordneten Eigenschaften.

VornameNachnameBerufAlter
MaxMustermannMustermacher30
HansHuberHutmacher59

Diese Strukturierung bringt nicht nur Vorteile für die Suchmaschinen.
Auch Webmaster und Nutzer können profitieren.

Wie kann man davon profitieren?

Google kann Inhalte auf Webseiten crawlen, aber im Erkennen von Zusammenhängen zwischen Wörtern oder Phrasen besteht bei der Suchmaschine noch deutliches Verbesserungspotential. Mit der Strukturierung von Inhalten zeigt man Google, um welche Art von Daten es sich handelt. Außerdem erleichtert man Google das Crawling und verringert die Crawlzeiten, da die Inhalte bereits definiert und zugeordnet wurden.

Einen Vorteil im Ranking bringen strukturierte Daten laut Google jedoch nicht. Da ein Rich Snippet deutlich auffälliger als ein normales Suchergebnis ist, könnte sich möglicherweise auch die Click-Through-Rate erhöhen und somit mehr Besucher auf eine Seite locken.

Bei einer Googlesuche nach “Lichterkette Weihnachtsbaum”, wird einem unter anderem das Snippet von hse24.de angezeigt.

Bildschirmfoto 2013-11-25 um 17.17.43
Bildschirmfoto 2013-11-25 um 17.18.29
Quelle: Google Suche, 11.11.2013

Ein Vergleich dieser zweier Snippets zeigt deutlich, dass das erweiterte Snippet prominenter ist. Es hebt sich klar von anderen Ergebnissen ab.
Welche Möglichkeiten es gibt, Daten auszuzeichnen und wie diese implementiert werden, wird in den nächsten Abschnitten im Detail erläutert.

Seiteninhalte richtig strukturieren – aber wie?

Bevor man beginnt Daten zu markieren, ist es natürlich hilfreich zu wissen, welche strukturierten Daten Google nutzt. Aktuell können unter anderem folgende Inhaltstypen von Google als Rich Snippet(http://de.onpage.org/wiki/Rich_Snippets) angezeigt werden:

  • Rezepte
    Bildschirmfoto 2013-11-25 um 17.18.39
  • Veranstaltungen
    Bildschirmfoto 2013-11-25 um 17.18.43
  • Erfahrungsberichte
    Bildschirmfoto 2013-11-25 um 17.18.48
  • Personen
    Bildschirmfoto 2013-11-25 um 17.18.54

Eine komplette Auflistung aller möglichen Inhaltstypen ist in den Google Webmaster Tools zu finden.

Nun gilt es noch zu klären, wie die Seiteninhalte erweitert werden müssen, um ein Rich Snippet zu erzeugen.

Wie so oft gibt es mehrere Wege, um die Auszeichnung von Daten durchzuführen. Die drei bekanntesten Markup-Formate werden im folgenden an einem kurzen Beispiel veranschaulicht.

ohne Markup:

Bildschirmfoto 2013-11-25 um 17.35.19

Der Codeausschnitt stellt ein normales div-Tag dar. Dieses kann nun mittels der 3 bekanntesten Markup-Formate strukturiert und für Suchmaschinen aufbereitet werden.

Mikrodaten:
Bei der Verwendung von Mikrodaten werden bereits vorhandene HTML Elemente wie class, rel oder rev verwendet. Mikrodaten werden mit am häufigsten genutzt, um Daten für Suchmaschinen strukturiert aufzubereiten.

Bildschirmfoto 2013-11-25 um 17.38.55

Mikroformate:
Auch bei Mikroformaten werden bereits verfügbare HTML Elemente wie span oder div genutzt, um Informationstypen zu definieren.

Bildschirmfoto 2013-11-25 um 17.39.02

RDFa:
RDFa wird von der Organisation W3C empfohlen und dient der Einbettung von Zusatzinformationen in HTML bzw. XHTML Code. Auch hier werden die Elementinformationen von z.B. span oder div umschlossen.

Bildschirmfoto 2013-11-25 um 17.39.14

Da Google die Markup-Formate in Form von Schema.org empfiehlt, soll im folgenden hauptsächlich auf diese Art der Strukturierung eingegangen werden.

Was verbirgt sich hinter Schema.org?

Schema.org ist eine Möglichkeit, Seiteninhalte zu strukturieren und entstand aus
einer Initiative der Suchmaschinen Google, Bing, Yahoo sowie Yandex. Das Resultat war ein einheitliches Vorgehen, um Daten auszuzeichnen. Der große Vorteil von Schema.org ist, dass dieser Standard von mehreren Suchmaschinen unterstützt wird. Es ist also nicht nötig, sich für eine Suchmaschine zu entscheiden.

Ein Beispiel macht den Einsatz von Mikrodaten wohl am einfachsten verständlich.

Zunächst sollten die drei Hauptbestandteile der Auszeichnung erklärt werden:

  • itemscope = leitet die Auszeichnung ein
  • itemtype = definiert, um was es sich handelt (Person, Veranstaltung, Produkt)
  • itemprops = definiert verschiedene Eigenschaften des itemtypes

Eine Unterseite enthält Informationen zu einer Veranstaltung. Die Daten zu diesem Event sollen in den Suchergebnissen als Rich Snippet eingeblendet werden. Um dies zu erreichen, sollten folgende Schritte durchgeführt werden.

Zunächst sieht der HTML Code wie folgt aus.

Bildschirmfoto 2013-11-25 um 17.39.21

Eine Suchmaschine kann so nicht erkennen, dass es sich um eine Veranstaltung handelt, da sie den Zusammenhang der Inhalte nicht deuten kann.

Im ersten Schritt wird der HTML-Code um den itemscope erweitert. Wie oben beschrieben, leitet dieser die Auszeichnung der Daten ein.

Bildschirmfoto 2013-11-25 um 17.44.48

Unterhalb des öffnenden div-Tags stehen nun alle relevanten Daten zu dieser Veranstaltung.

Als nächstes sollte der Datentyp definiert werden. Unter http://schema.org/docs/full.html findet man eine Übersicht aller Datentypen. Nachdem der entsprechende Typ angeklickt wurde, integriert man die URL der sich öffnenden Seite wie folgt in den HTML-Code. In diesem Fall, einer Veranstaltung, handelt es sich um folgende URL:

Bildschirmfoto 2013-11-25 um 17.39.44

Eingefügt sieht der Seitenquellcode folgendermaßen aus:

Bildschirmfoto 2013-11-25 um 17.39.30

Die detaillierten Informationen zur Veranstaltung sollten ebenfalls ausgezeichnet werden. Eine Auflistung aller möglichen Eigenschaften ist immer unter der bei itemprop eingefügten URL zu finden.

Bildschirmfoto 2013-11-25 um 17.46.29

Wie man an gerade gezeigtem Beispiel sieht, erhöht sich die Menge des Quellcodes bereits bei der Auszeichnungen einer Veranstaltung deutlich. Um den Überblick nicht zu verlieren, sollte man den Quellcode nur schrittweise erweitern und regelmäßig die korrekte Anpassung des Codes mit dem Test-Tool für strukturierte Daten von Google überprüfen.

Bildschirmfoto 2013-11-25 um 17.19.09
Quelle: Google Webmaster Tools

Natürlich können mehr als nur Events ausgezeichnet werden. Eine Übersicht welche Datenarten strukturiert werden können, findet man auch unter http://schema.org/docs/full.html.

Andere Markup-Formate werden jedoch ebenfalls von Google unterstützt ( Außerdem werden Funktionsweise und Vorteile des Googleeigenen Data Highlighter beschrieben.

Der Data Highlighter – eine gute Alternative

Eine alternative und einfachere Deklarationsmöglichkeit stellt Google mit dem Data Highlighter zur Verfügung. Die Auszeichnung von Daten ist deutlich einfacher und schneller, als die oben beschriebene Variante mit Schema.org. Mit dem Tool von Google lassen sich auch ohne eingehende Programmierkenntnisse Daten auf der Webseite markieren und einer Datengruppe (Name, Datum, Beschreibung) zuordnen. Es ist lediglich das Markieren und Zuordnen der Daten durchzuführen. Der Data Highlighter versucht ähnliche Daten auf der Webseite zu identifizieren. Auf Wunsch kann man Google anweisen, die hinterlegte Strukturierung auf die komplette Webseite auszuweiten. Es ist jedoch davon abzuraten, sich ausschließlich auf die automatisierte Auszeichnung von Google zu verlassen, da die Markierung teilweise noch nicht optimal funktioniert.

Die Markierung kann in den Google Webmaster Tools angestoßen werden. Über “Darstellung der Suche” und “Data Highligter” kann der Data Highlighter gestartet werden.

Bildschirmfoto 2013-11-25 um 17.19.17
Quelle: Google Webmaster Tools

Nachdem die URL der betroffenen Seite eingetippt wurde, muss noch die Art des Datentyps gewählt werden. Außerdem kann eingestellt werden, ob eine oder mehrere Seiten von der Auszeichnung betroffen sind.

Bildschirmfoto 2013-11-25 um 17.19.21
Quelle: Google Webmaster Tools

Nach dem Bestätigen können die entsprechenden Seiteninhalte markiert werden.

Wie bei Schema.org können auch die mit dem Data Highlighter erweiterten Snippets mit dem Test-Tool für strukturierte Daten getestet und überprüft werden.

Fazit

Ein Großteil der im Web vorhandenen Webseiten nutzt das Potential strukturierter Daten aktuell nur wenig. Da Google immer mehr Wert auf die Strukturierung von Seiteninhalten legt, werden viele Webmaster zukünftig vermutlich nachziehen. Zur Zeit bietet die Auszeichnung von Daten noch die Chance, seinen Mitbewerbern einen Schritt voraus zu sein. Auch das Hummingbird Update von Google zeigt, dass strukturierte Daten in Zukunft noch wichtiger werden. Also ein guter Grund die dafür nötige Zeit zu investieren und sich durch auffällige Snippets abzuheben.

Bild seo concept © kraska – fotolia

Eine Website besteht aus vielen Einzelseiten. Je älter sie ist und je umfangreicher, umso komplizierter wird es, Zahl und Struktur aller Seiten im Auge zu behalten und Probleme darin zu finden. Technisch gesehen, erzeugt sogar jeder verwendete URL-Parameter in Kombination mit seinem Wert eine neue Seite. Gerade, wenn es dann darum geht, Stolpersteine aufzudecken und Optimierungen durchzuführen, hilft Handarbeit in Form von manuellen Analysen vielfach nicht weiter.

Gleichzeitig verlangt eine verstärkte Tendenz hin zu mobil verwendbaren Websites eine Beachtung aller möglichen Fallstricke, die die Ladezeiten von Seiten negativ beeinflussen. Nachdem nun die Telekom eine Datendrosselung ihrer DSL-Anschlüsse eingeführt hat, ist selbst die großflächige Verfügbarkeit schneller Internetverbindungen keine Ausrede mehr für langsame Websites – ganz abgesehen davon, dass Suchmaschinen wie Google ganz offiziell schnelle Websites bevorzugen.

Fragen zu diesem Thema laufen mir im SEO-Alltag deshalb regelmäßig über den Weg. Schließlich ist die technische Optimierung der eigenen Website einer der drei Grundpfeiler für die Optimierung – und vor allem etwas, was der Websitebetreiber i.d.R. selbst in der Hand hat. Zentrales Element technischer Analysen sind für mich nach wie vor eigene Crawls der Kundenwebsites. So finde ich relativ schnell Probleme, mit denen auch Suchmaschinencrawler auf diesen Websites konfrontiert werden.

Bekannte Tools, denen jeder SEOler regelmäßig begegnet, sind Xenu’s Link Sleuth, Microsofts IIS SEO Toolkit oder der Screaming Frog – alle kostenfrei oder sehr günstig verfügbar und für den alltäglichen Gebrauch durchaus hilfreich. Dennoch haben alle drei ihre speziellen Anforderungen und natürlich ihre Grenzen. Gerade bei extrem umfangreichen Websites begeben wir uns hier regelmäßig an das Limit der Möglichkeiten. Ich war deshalb sehr froh, dass ich kürzlich die Gelegenheit bekam, ein noch recht junges Tool zu testen, dessen Entwickler sich zum Ziel gesetzt haben, genau diese Grenzen nicht zuzulassen: strucr.com.

Grundsätzlich ist strucr.com in vier Varianten verfügbar. Eine kostenfreie Schnupperversion taugt zum Kennenlernen und erlaubt das Analysieren kleiner privater Websites. Geht es um eine Erweiterung des Umfangs sind nach oben fast keine Grenzen gesetzt:

Die unterschiedlichen Pakete von strucr.com

Dabei zielt strucr.com ganz klar auf den Einsatz im Enterprise-Bereich. Sämtliche Daten, die der Crawler erhebt, sind via API abrufbar und können so in eigene Tools und Auswertungen integriert und mit Daten aus anderen Anwendungen kombiniert werden. Ganz klar, dass die Entwickler von strucr.com deshalb enorme Anforderungen an die Qualität der Daten stellen. Bugs und Fehler dürfen hier einfach nicht passieren und müssen – sollten sie doch einmal auftreten – in kürzester Zeit behoben werden. Zur Qualitätssicherung muss der Crawler regelmäßige Tests gegen seine eigenen Bugs und natürlich seine Mitbewerber bestehen. Nach eigenen Aussagen, schaffen alternative Crawler gerade mal 65% dieser Tests.

Gleichzeitig liefert strucr.com den Großteil seiner Daten in absoluter Rohform und versucht Interpretationen weitestgehend zu vermeiden. Gegenüber einigen Wettbewerbern wirkt das zwar relativ plump und nicht so „hübsch“, hat aber den großen Vorteil, dass die Auswertung der Daten dem Kunden selbst überlassen bleibt, was gerade bei Verwendung der API sehr vorteilhaft ist. So können die gefunden Fehler im Kontext der Website selbst interpretiert werden. Es gibt einfach „Fehler“, die durchaus ihre Daseinsberechtigung haben. So kann beispielsweise eine große Anzahl an Seiten mit dem Meta-Tag robots=“noindex,nofollow“ für einen Shop typisch sein und sollte deshalb nicht zwangsläufig als negativ bewertet werden. Für ganz konkrete Fragestellungen oder zur Behebung komplexer Probleme sind die Entwickler hinter strucr.com übrigens auch gern bereit, weitere Features in ihren Crawler zu integrieren oder mit sehr speziellen Parametern zu crawlen.

Technisch steht hinter dem Tool eine solide IT-Infrastruktur, die bei dem Umfang der erhobenen Daten aber auch notwendig ist. Wer einmal versucht hat, die Website eines Onlineshops mit 200.000 Produkten und zahllosen Parametern (z.B. SessionIDs) mit einem der herkömmlichen Tools zu crawlen, wird – einen leistungsstarken PC vorausgesetzt – nach spätestens 12 Stunden verzweifelt sein. Im Agenturalltag passiert es mir in solchen Fällen nicht selten, dass zwischendurch entweder die IT des Kunden meine IP-Adresse blockiert oder mein Telefon klingelt und es Beschwerden hagelt. Im Gegensatz zu herkömmlichen Tools läuft strucr.com hingegen auf einem eigenen Server. Die Geschwindigkeit des Crawlvorgangs kann individuell abgestimmt werden. Um Einbrüche bei der Performance der gecrawlten Website zu vermeiden, kann und muss der Crawl daher mit der zuständigen IT-Abteilung abgestimmt werden.

Schauen wir uns aber mal die Auswertung, die strucr.com standardmäßig für einen Crawl liefert, beispielhaft anhand der Website eines relativ großen deutschen Reiseanbieters an. Die Basisfeatures verstehen sich fast von selbst und sind schnell erklärt:

  • Anzeige beim Crawl gefundener Fehler mit konkreter Fehlerangabe, URL und Ladezeit
  • Anzahl der gecrawlten Seiten, gefundenen Links und Ebenen, in denen die Seiten strukturell organisiert sind
  • Anzahl der Seiten sortiert nach Typ (z.B. Nofollow, External) und http-Status (z.B. 301/302-Weiterleitungen, 404-Fehler)
  • Gecrawlte Domains und Subdomains (intern und extern) mit Anzahl eingehender und ausgehender Links
  • Anzahl eingehender und ausgehender Links pro gecrawlter Seite

Darüber hinaus erhebt strucr.com weitere Daten und Reports, die im Hinblick auf eine umfassende Websiteoptimierung extrem hilfreich sind:

Seiten nach Ladezeit

Während des Crawls werden die reinen HTML Response Times der Seiten gemessen und aufgezeichnet. So lassen sich schnell Probleme bei der Seitengröße identifizieren und damit die Seiten gezielt auf Geschwindigkeit optimieren.

Aufschlüsselung der Seiten nach Antwortzeiten

Mein Crawl zeigt mir beispielsweise auf den ersten Blick, dass meine Website bei den Ladezeiten zwar schon ein ganz gutes Bild abgibt, ich aber gerade im 200-300ms-Bereich noch einige Ausreißer habe, die ich mir einmal ansehen sollte. Ein Klick auf den Eintrag liefert detaillierte Informationen zu den Seiten, um die es sich dabei handelt. Offensichtlich sind dies Seiten, bei deren Bereitstellung im CMS viele verschiedene Informationen, wie z.B. Buchungszeitraum, Verfügbarkeit, Anzahl der Personen usw., berücksichtigt werden. Das sollte ich mir mal näher anschauen und eventuell die Zahl der Abfragen verringern. Hier ist es übrigens gut, dass strucr.com die Daten nicht interpretiert, denn ich weiß ebenso, dass es sich um Seiten handelt, die ich mit „noindex, nofollow“ markiert habe. Diese Aufgabe hat für mich aus SEO-Sicht deshalb keine hohe Priorität. Im Hinblick auf Usability und User Experience hingegen, sollte ich hier bei Gelegenheit trotzdem aktiv werden.

Seiten mit Anmerkungen

In dieser Übersicht liefert strucr.com eine Liste mit Anmerkungen zu meinen Seiten und die Zahl der Seiten, die zum jeweiligen Kriterium passen.

Seiten aufgeschlüsselt nach Hinweisen

Die für mich aus SEO-Sicht besonders interessanten Hinweise habe ich gelb markiert. Hier sollte ich mir vor allem die Page Titles, Metadaten und Alt-Attribute anschauen, um meine Keywords besser einzusetzen und in den Suchergebnissen besser dazustehen. Gleichzeitig kann ich durch Auslagerung von CSS und Skripten sowie Größenangaben bei den Bildern bessere Ladezeiten bei meinen Seiten erreichen. Und nicht zuletzt sollte ich mir auch meine URL-Struktur einmal anschauen. Welche Fälle das genau betrifft, kann ich mir in diesem Report mit einem weiteren Klick auflisten lassen und zum Beispiel als Excel-Datei exportieren, die ich dann gezielt abarbeite. So brauche ich nur die Seiten anzufassen, die es wirklich betrifft.

Seiten und Content nach Level

Wie weit müssen Nutzer von der Startseite bis zu meinen wichtigsten Seiten bzw. meinem wichtigsten Content klicken? Diese Frage ist im Hinblick auf Usability und User Experience extrem wichtig, denn „verstecke“ ich meine wichtigsten Inhalte zu tief innerhalb meiner Websitestruktur, sind sie unter Umständen nicht auffindbar und bleiben deshalb unbeachtet.

Crawlbare Seiten nach Ebenen

Alle Urls nach Ebenen

Hier gibt es bei meiner Website nichts zu bemängeln. Nutzer werden auf den ersten Ebenen nicht mit Inhalten erschlagen, finden aber bei weitergehender Recherche mit wenigen Klicks auch umfangreichere Informationen. Wäre es anders, fände ich hier sicher gute Ansatzpunkte zur Verbesserung der internen Verlinkung.

Seiten mit hohem 2D-Rank

Zur Berechnung der Stärke einer Seite verwendet strucr.com zwei relativ leicht zu erhebende Werte: den PageRank, der von strucr.com selbst auf Basis der eingehenden Links pro Seite berechnet wird, und den sog. CheiRank, der auf der Anzahl ausgehender Links basiert. Der von strucr.com berechnete PageRank hat mit dem von Google bekannten Wert allerdings wenig zu tun. Lediglich das zugrunde liegende mathematische Rechenmodell ist gleich, ansonsten ist der Wert hier glücklicherweise von Google unabhängig. Aus der Kombination von Page- und CheiRank bekommt man schließlich ein gutes Bild seiner stärksten und wertvollsten Seiten. Tauchen in dieser Liste vorrangig URLs auf, die keinen Wert für das Unternehmensziel bzw. Ziel der Website haben, sollte man an der internen Verlinkung arbeiten.

Abschließende Worte

Wie bereits erwähnt, sind alle von strucr.com erstellten Listen und erhobenen Daten per API verfügbar und können ebenso als CSV, TSV oder Excel-Datei heruntergeladen werden. So steht einer individuellen Weiterverarbeitung nichts im Wege. Gerade für Agenturen oder große Unternehmen ergeben sich damit viele Möglichkeiten. Gleichzeitig sind Freigaben aller Crawls und Accounts über bis zu vier verschiedene Nutzerrollen möglich. So sind beispielsweise jederzeit Freigaben für Kunden oder andere Abteilungen möglich, die sich gern selbst ein Bild von den Daten machen möchten.

Die Einsatzbereiche von strucr.com sind vielfältig. Im Agenturbereich sind eine einmalige Verwendung für eine konkrete Analyse, aber auch ein dauerhafter Einsatz für laufende, vor allem Technik-bezogene Optimierungen denkbar. Gerade Agenturen mit starkem technischem Fokus bekommen hier über den Crawler hinaus einen Partner, dem kein Problem zu komplex ist. Ebenso vorteilhaft ist aber auch der Einsatz von strucr.com im Unternehmensalltag. Von der IT- bis zur E-Commerce- oder SEO-Abteilung können hier alle profitieren. Warum nicht gleich strucr.com im Deploymentprozess einbinden um Änderungen an der Website vor dem Live-Gang direkt auf Herz und Nieren zu testen?

 

Über den Autor:

André Scharf ist Senior SEO Account Manager bei LBi und Betreiber eines eigenen Blogs.

Unter den vielen Rankingfaktoren gibt es viele Faktoren die wichtig sind, aber auch welche, die weniger wichtig sind. Mit der Zeit kann es aber auch passieren dass bestimmte Faktoren an Wichtigkeit verlieren oder eben gewinnen. Beim PageSpeed war es so, denn er war lange Zeit ein ruhender Faktor, der kaum ernstgenommen wurde. Mit der Zeit hat er immer mehr an Bedeutung gewonnen und kann mittlerweile sogar für einen richtigen Rankingschub sorgen. Nicht umsonst stellt Google sogar das PageSpeed-Tool bereit und gibt sogar direkte Tipps, mit denen sich der PageSpeed verbessern lassen kann.

Weiterlesen

Ladezeiten eine WebseiteAus aktuellem Anlass habe ich beschlossen etwas zum Thema Ladezeiten zu schreiben. Wie einige sicher wissen crawlen wir mit unserem Strukturanalysedienst strucr.com meist große Webseiten und gehen dabei sehr tief. Oft sind die gecrawlten Webseiten in großen Bereichen extrem langsam. Teilweise ist die Performance an einigen Stellen so schlecht, dass mehrere Sekunden vergehen bis der HTML-Code ausgeliefert ist und ein Crawl mit einigen wenigen Requests die Seite spürbar langsamer werden lässt. Scheinbar ist die Performance der Webseite bei den meisten Firmen noch immer kein Thema.

Ladezeiten sollten ein Thema sein:

Argumentiert man bei Ladezeiten mit Usability, Ressourcenverbrauch oder möglichen Einnahmesteigerungen so stößt dies meist auf taube Ohren. Es geht aber bei der Performance von Webseiten auch darum Schreckensszenarien wie das folgende (frei erfunden) zu vermeiden:

Ein 13 jähriger Bengel hat sich über Ihre Webseite geärgert und möchte Sie dies spüren lassen. Da seine Ressourcen stark eingeschränkt sind überlegt er sich, wie genau er die Seite möglichst effizient lahmlegen kann. Er sucht sich also genau den Typ von Unterseiten heraus, die überdurchschnittliche Ladezeiten aufweisen, und ruft von diesen so viele wie möglich in kurzer Zeit ab. Ihre Seite geht wegen schlecht performender Unterseiten in die Knie obwohl für den Betrieb der Seite mehrere Server zur Verfügung stehen und der Angriff stümperhaft und gerade mal mit einer einzelnen DSL-Leitung durchgeführt wird.

Durch schlechte Ladezeiten droht also schnell mal ein kompletter Ausfall der Seite. Ladezeitenprobleme sind mitunter Sicherheitsprobleme und diese sollten eine hohe Priorität haben und mit ausreichend Ressourcen abgearbeitet werden.

Die Problemanalyse und Problembehebung:

Die Aufgabenstellung ist denkbar einfach. Zunächst müssen die langsamen Seiten identifiziert werden. Dafür kann entweder ein Crawler benutzt werden, der in der Lage ist die Antwortzeiten zu erfassen (z.B. strucr.com), oder aber man baut einfach ein simples Logging der Zeiten in den Code der Webseite ein. Sobald man eine langsame Seite gefunden hat, muss man sich im Detail anschauen was an der Seite langsam ist (Debugger nutzen) und dann Abhilfe schaffen.

Hier einige Optimierungsansätze:

  • Häufig haben Webseiten Probleme mit langsamen Datenbankabfragen. Oft lassen sich die Abfragen optimieren indem sie einfach anders geschrieben werden. Manchmal fehlen auch einfach nur die Indizes. Viele Datenbankserver sind darüber hinaus falsch konfiguriert und können daher Anfragen nicht performant beantworten.
  • Bei PHP-Seiten fehlt häufig ein sogenannter Opcode-Cache der den interprätierten Code zwischenspeichert. Der Code muss daher ständig neu übersetzt werden was zu deutlichen Verzögerungen führt.
  • Vereinzelt wird bei Seiten auf externe Daten zugegriffen anstatt diese lokal vorzuhalten oder zwischenzuspeichern.
  • Paginierte Inhalte sind oft nicht in der Seitenzahl beschränkt und damit auf den hinteren Seiten zwangsweise deutlich langsamer. Denn dort werden in der Regel die Inhalte datenbankseiting bis zu der betreffenden Seite vorbereitet und dann die entsprechende Anzahl Datensätze übersprungen. Auf der letzten Seite bedeutet das dann einen Full Table Scan auf einer temporären Tabelle. Ein Performance-Alptraum.
  • Statt den schnellen und optimierten Funktionen der Programmiersprache werden oft eigene Funktionen geschrieben die dann langsamer sind.

Und das Beste zum Schluss:

Verbesserte Usability, niedrigerer Ressourcenverbrauch oder möglichen Einnahmesteigerungen gibt es bei der Beseitigung des Sicherheitesproblems nun gratis mit dazu.

In den letzten Wochen und Monaten wurde der Klickraten-Vorteil durch Sternchenbewertungen von vielen SEOs heiß diskutiert. Seit der öffentlichen Anprangerung durch Arthur ist das Thema auch in öffentlichen Blogs und Foren. Ich zeige euch in diesem Artikel, wie ihr solche Bewertungen ganz einfach in eure WordPress-Artikel einbinden könnt.

Nachtrag: Bitte auch die Kommentare unter diesem Artikel bezüglich Manipulation durch Mitbewerber und Integration direkt ins Template (ohne Shortcode in jedem Beitrag) beachten.

Focus.de mit Sternen in den Google SERP für Tagesgeld.

Focus.de mit Sternen in den Google SERP für Tagesgeld

Weiterlesen

Bei der Analyse von Webauftritten durch unseren Struktur-Analysedienstes strucr (https://strucr.com/) fallen immer wieder ähnliche Probleme im Aufbau von Webseiten auf. Zwei der häufigsten Strukturfehler wollen wir hier vorstellen und dabei erklären, wie man diese beheben kann. Es handelt sich dabei um das Problem der schleichenden Indizierung bei zu hoher Seitentiefe und das Problem der unkontrollierten Vermehrung durch Filter und Sortierung.

Kennst du deine Seite?

Unser Service crawlt komplette Webangebote und macht die anschließend eingehenden Analysen zugänglich. Wir haben nun einige Seitenbetreiber gebeten, vor den Crawls Schätzungen bezüglich Seitenanzahl und Tiefe ihrer Seite abzugeben. Diese lagen jedoch in den meisten Fällen um mehrere hundert Prozent unter den tatsächlichen Werten. Auch und insbesondere wenn die Schätzungen aufgrund einer Site-Abfrage bei Google getätigt wurden.

Nach bald einem Monat Betrieb von strucr.com kann man daher feststellen: Die meisten Seitenbetreiber kennen ihre Seiten kaum und haben keine realistische Vorstellung von Größe, Struktur und auch den Problemen ihrer Webseiten.

Hohe Seitentiefe – schleichende Indizierung

Viele der gecrawlten Webseiten hatten Probleme mit einer sehr hohen Seitentiefe. Vom Startpunkt des Crawls (Level 0) lagen Seiten oft mehr als zehn Ebenen weit entfernt. Große Teile des Angebots sind damit für Besucher und Suchmaschinen sehr schwer oder gar nicht zu erreichen. Die Verteilung der Seiten innerhalb der ersten Ebenen sieht oft wie in folgendem Beispiel aus:

Prozentuale Anzahl der Seiten pro Level in Prozent.

Prozentuale Anzahl der Seiten die innerhalb der angezeigten Level erreicht werden in Prozent.

Die häufigsten Ursachen für eine sehr hohe Seitentiefe sind eine undurchdachte Paginierung sowie unzureichend differenzierte und oft zu tiefe Kategoriestrukturen. Dies führt oft zu einer schleichenden oder nur teilweisen Indizierung in den Suchmaschinen.

Schlechte Paginierung ist bei kleinen und großen Angeboten gleichermaßen häufig zu finden. Die im Beispiel verwendete Webseite etwa umfasst ca. 975.000 Unterseiten welche sich auf mehr als 300 Ebenen verteilen. An einigen Stellen ist die Paginierung so gestaltet, dass immer nur eine Seite weiter geblättert werden kann. Das Resultat ist die extrem hohen Levelanzahl.

Eine gute Paginierung sollte folgende Bedingungen erfüllen:

  • Es sollten sowohl benachbarte als auch entfernte Seiten verlinkt werden
  • Benachbarte Seiten sollten vollständig abgedeckt sein
  • Entfernte Seiten sollten punktuell verlinkt werden
  • Auf jeder Seite sollten andere entfernte Seiten verlinkt werden

Eine hohe Zahl an Seiten bei einer Paginierung ist darüber hinaus ein Indiz für eine unzureichend differenzierte Kategorisierung der Inhalte. Die Zahl der Seiten kann bei Listen auch begrenzt werden, sofern die Daten dies erlauben.

Unsere Crawls haben auch gezeigt, dass die letzen Seiten in sehr langen, paginierten Listen fast durchgängig schwerwiegende Performance-Probleme haben. Dies liegt vor allem an den Kosten die auf Datenbankseite beim Prozess der Sortierung und Filterung und anschließendem Limit entstehen. Mehr als 15 Sekunden Laufzeit sind hier nicht unüblich.

Hohe Seitenzahlen – unkontrollierte Vermehrung

Einige der gecrawlten Webseiten wiesen eine hohe Zahl an im Endeffekt unnötigen Seiten auf. Gerade Shops und Vergleichsseiten kommen sehr schnell zu einer extrem hohen Zahl an erreichbaren Seiten. In einem Fall etwa waren dies in Ebene 3 bereits mehr als eine Million, insgesamt wären unter der Domain mehrere Milliarden Seiten abrufbar gewesen.

Wir nennen dies das Problem der unkontrollierten Vermehrung.

Die häufigste Ursache für eine solche Vermehrung sind schlecht umgesetzte Listen, Filter und Sortierungen. Die als Beispiel genannte Seite umfasst lediglich etwa 20.000 Produkte, die sich aber innerhalb der Produktlisten nach Preis, Farbe, Hersteller und diversen Produktkriterien filtern und sortieren ließen. Alle diese Filter waren kombinierbar und alle Kombinationen ließen sich über eigenständige Urls abrufen.

Das Gegenrezept sind Filter, die mittels eines POST-Requests gesendet werden. POST-Requests haben aber zwei Nachteile:

  • Bei Betätigen des Back-Buttons im Browser kommt es zu einem Resubmit, vor den die Browserhersteller abschreckende Dialoge gestellt haben
  • POST-Request haben keine URL, können also weder gebookmarkt noch in den sozialen Medien geteilt werden

Die Lösung dieser Probleme bietet das PRG-Pattern (Post/Redirect/Get, http://en.wikipedia.org/wiki/Post/Redirect/Get): Die Filtereinstellungen werden per POST über das Formular übermittelt und in einer Session gespeichert. Dann erfolgt ein Redirect auf die Startseite der Liste. Die Startseite der Liste sowie mögliche Paginierungsseiten lesen die Filter- und Sortierungseinstellungen aus der Session aus und stellen die Ergebnisse dar.

Direkte Links auf die gefilterten oder sortierten Listen können über die alten GET-Requests realisiert werden welche die Settings in eine Session schreiben und auf die Liste weiterleiten.

Derartige Listen bringen eine Reihe von Vorteilen mit sich:

  • Die Zahl der Seiten reduziert sich stark
  • Es kann auf NoFollow-Links sowie auf das Canonical-Element verzichtet werden
  • Eingehende Links werden auf wenige wichtige Strukturseiten konzentriert
  • Die Ansicht für Benutzer die über eingehende Links kommen kann nach wirtschaftlichen Gesichtspunkten optimiert werden

Vlad hat auf seiner Geld 2.0 Website einen einfachen Tipp verraten, wie man mit ein paar CSS-Handgriffen die Performance der Google AdSense Werbung verbessern kann. Dabei meint Performance weniger die Höhe der Einnahmen, wobei diese aufgrund der Optimierung vielleicht auch leicht steigen könnten, sondern vielmehr die Zeit die es braucht bis der Webbrowser die Zielseite komplett aufgebaut und angezeigt hat.

Denn Webbrowser operieren in vielen Fällen seriell, stoppen den Seitenaufbau während der Ausführung von Javascripten (wie z.B. beim Google AdSense Code) oder unterbrechen sogar das Nachladen weiterer Seitenobjekte (Bilder, Scripte,CSS). Dadurch kommt es zu Verzögerungen im Seitenaufbau, was im schnelllebigen Internet den einen oder anderen Besucher verstimmen oder im schlimmsten Falle kosten kann. Um diesem Effekt entgegen zu wirken ist es besser, dass man das Script ans Ende der Seite verfrachtet. Wie man das am schlauesten macht, das kann man jetzt bei Vlad nachlesen.

Wahrscheinlich wird Google in näherer Zukunft nachlegen und auf asynchrones Nachladen des AdSense Codes umrüsten. Doch bis dahin sind elegante Tricks wie dieser zur AdSense Optimierung das Beste was man tun kann. Übrigens stammt der Tipp ursprünglich von Aaron Peters, bei dem neben dem Tipp auch noch die komplette Herleitung mit interessanten Zeit/Ablauf Diagrammen zu finden ist.