Zum Hauptinhalt springen
Prüfen Sie mit GEO Score eine Seite, die ChatGPT zitieren soll. Der Score ist der Anteil dessen, was ein Mensch auf der Seite liest, einschließlich des Textes in ihren Bildern, den die ChatGPT-Suche in ihrer Kopie der Seite behält. direct gibt den Anteil an, den ChatGPT erhält, wenn es die Seite selbst öffnet, etwa wenn jemand ihm die URL gibt. Jedes Stück, das die ChatGPT-Suche nicht behält, kommt mit seiner Ursache, und analysis macht aus den Ursachen Korrekturen.

Eine Seite bewerten

Der Task wird angenommen und in die Warteschlange gestellt:
Lesen Sie das Ergebnis mit GET /v1/async/task/{id}, oder fügen Sie der Anfrage webhook.url hinzu und erhalten Sie es, sobald der Task fertig ist. Die meisten Seiten brauchen 1 bis 3 Minuten; fragen Sie alle 10 bis 15 Sekunden ab. Der Task funktioniert wie jeder andere asynchrone Task, und das Ergebnis steht in response. Das Anfrageschema steht in der API-Referenz.

Anfragefelder

Jedes andere Feld ergibt 400 VALIDATION_ERROR.

So wird eine Seite bewertet

  1. Zugriff. robots.txt wird für OAI-SearchBot, ChatGPT-User und GPTBot ausgewertet. Die Seite wird als jeder dieser Agenten und als Browser abgerufen, von einer US-Adresse, von der aus ChatGPT-User Seiten abruft.
  2. Was ein Mensch liest. Ein Browser in country rendert die Seite und scrollt bis zum Ende, und der Text in ihren großen Bildern wird Zeile für Zeile gelesen. Zeilen zum eigenen Thema der Seite werden zu Stücken. Menüs, Fußzeilen, andere Produkte, Kundenbewertungen, Schaltflächen und Werbung bleiben außerhalb des Scores.
  3. Was die ChatGPT-Suche behält. Ein Browser rendert die Seite als OAI-SearchBot, der Crawler, der die ChatGPT-Suche speist, von einer US-Adresse und lässt keine Datenanfrage nach außen. Die Kopie besteht aus dem Text des HTML, das der Server sendet, und dem Text, den die Skripte der Seite daraus zeichnen, samt verstecktem Text und Alt-Text der Bilder. Text in Bildern und Inhalte, die die Seite erst nach dem Öffnen lädt, fehlen darin, wie sie auch in der ChatGPT-Suche fehlen.
  4. Was ChatGPT beim Öffnen der Seite erhält. Das HTML, das ChatGPT-User erhält, wird so gelesen, wie der Reader von ChatGPT es liest: sein Text, versteckter Text und der Alt-Text der Bilder, ohne Skripte. Ein Bild zählt, wenn ChatGPT es öffnen und lesen kann: Das HTML gibt das Bild als src eines img an, als JPEG, PNG oder WebP, in einer Größe, in der der Text lesbar bleibt.
  5. Ob ChatGPT die Seite öffnet. Das produktive ChatGPT wird zweimal gebeten, die Seite zu öffnen. Seine Antworten werden nicht bewertet: Sie zeigen nur, ob es die Seite geöffnet hat.
  6. Einordnung jedes Stücks. Ein Stück ist read, wenn die Kopie der Suche es enthält, sonst missing mit seiner Ursache. direct ordnet es auf dieselbe Weise danach ein, was ChatGPT beim Öffnen der Seite erhält. Code entscheidet jedes Stück, daher erhält eine unveränderte Seite denselben Score.

Das Ergebnis lesen

Die OLIVE-YOUNG-Seite oben ergibt dieses Ergebnis, gekürzt auf die wichtigsten Felder:

score

Der Anteil der Stücke, die die ChatGPT-Suche behält, von 0 bis 100. Alle Stücke wiegen gleich. Der Score ist 0, wenn robots.txt die Seite aus der ChatGPT-Suche heraushält und wenn die Website den Crawler der ChatGPT-Suche ablehnt. reading.score enthält den Anteil, bevor robots.txt den Score auf 0 setzt.

direct

Was ChatGPT erhält, wenn es die Seite selbst öffnet, etwa wenn jemand ihm die URL gibt. direct.score ist der Anteil der Stücke im HTML, das ChatGPT-User erhält, und in den Bildern, die ChatGPT öffnen kann, und direct.read zählt diese Stücke. Konnte ChatGPT die Seite nicht öffnen, ist direct.score 0. Die beiden Scores gehen dort auseinander, wo eine Seite Text in Bilder schreibt oder mit Skripten zeichnet: Die ChatGPT-Suche behält keinen Text in Bildern und behält, was Skripte aus dem HTML zeichnen, während der Reader von ChatGPT Bilder öffnet, die er lesen kann, und keine Skripte ausführt. Eine Lebensmittel-Produktseite, deren Nährwerttabelle ein JPEG in voller Größe ist, erhielt 56 für die Suche und 93 beim direkten Öffnen.

access

search.refused ist true, wenn die Website den Crawler der ChatGPT-Suche ablehnt, was den Score bei 0 hält, und search.lines zählt die Zeilen der Kopie der Suche. blockedBy ist user_agent, wenn die Website den Agenten ChatGPT-User von jeder Adresse ablehnt, openai_addresses, wenn sie diesen Agenten von unserer Adresse bedient und die Adressen von OpenAI ablehnt, und site, wenn sie auch einen Browser ablehnt. robots nennt für jeden OpenAI-Agenten die entscheidende robots.txt-Zeile, noindex meldet eine noindex-Anweisung und wo sie gesetzt ist, und probes listet den Status jedes Abrufs.

reading.items[]

Ein Eintrag pro Stück: reading.locations zählt die Stücke nach where und zeigt, was zu beheben bleibt, sobald ChatGPT die Seite öffnen kann. causes[] gruppiert die fehlenden Stücke nach Ursache.

analysis

summary nennt den Score, das größte Problem und den Score nach Behebung der bestätigten Probleme (potential). direct sagt, was ChatGPT erhält, wenn es die Seite selbst öffnet, oder wer es am Öffnen hindert und wie man das behebt. Jeder Eintrag in issues[] enthält die Ursache (detail), die Korrektur (fix), die betroffenen Stücke (facts), Belege und die Punkte, die das Problem vom Score abzieht. Zugriffsprobleme, die den Score bei 0 halten, kommen zuerst, der Rest nach Punkten. basis ist confirmed: Unsere eigene Lesung der Seite (ihr HTML, ihre Renderings, ihre Bilder, robots.txt, HTTP-Antworten) zeigt das Problem. Der Text von analysis ist auf Englisch.

markdown

Die Seite, wie ein Mensch sie sieht, als Markdown, mit dem Text ihrer Bilder an der Stelle der Bilder. Der eigene Inhalt der Seite, den der Score prüft, steht unter ihren Überschriften und Bezeichnungen. Menüs, Bewertungen und die übrigen Teile um den Inhalt sind zu je einer Zeile zusammengefasst. Jedes Stück, das die ChatGPT-Suche nicht behält, ist an seiner Stelle mit _(missing: …)_ und dem Grund markiert, und die Kopfzeile nennt, wie viele Stücke ChatGPT beim Öffnen der Seite erhält. Kopfzeile und Markierungen stehen in der Sprache der Seite: Englisch, Koreanisch, Japanisch, Chinesisch, Spanisch, Französisch, Deutsch oder Portugiesisch, für jede andere Sprache Englisch. Eine deutsche Seite zeigt _(fehlt: …)_. Ein Ausschnitt der englischsprachigen OLIVE-YOUNG-Seite:

screenshot

Die ersten vier Bildschirme der Seite, wie ein Mensch sie sieht, als JPEG: ein Fenster von 1366×900, oben aufgenommen, nachdem die Seite bis zum Ende gescrollt wurde. url ist ihr eigener Zugriffsschlüssel und öffnet die Datei bis expiresAt, 30 Tage nach dem Task. Eine Seite, deren Bild nicht aufgenommen werden konnte, kommt ohne screenshot, und ein Bild, das nicht gespeichert werden konnte, hat status: "failed".

rendering

Die für KI-Agenten gerenderte Seite. Die Kopie ist das HTML, das der Browser eines Menschen gezeichnet hat, ohne Skripte und mit dem Text jedes Bildes in seinem Alt-Text, der Textalternative, die WCAG für ein Bild mit Text verlangt. rendering.score ist der Anteil der Stücke, die die Kopie in ihrem Text enthält: was ein KI-Agent erhält, dem die Kopie ausgeliefert wird, ohne ein Bild zu öffnen. rendering.read zählt sie, reading.items[].rendering markiert jedes Stück; die Kopie selbst ist nicht Teil des Ergebnisses. Die OLIVE-YOUNG-Seite oben enthält alle 55 Stücke in ihrer Kopie, ein Score von 100: den Text ihrer Inhaltsstoff- und FAQ-Bilder als Alt-Text und die Preise und Bewertungen, die ihre Skripte laden.
rendering fehlt, wenn kein Browser die Seite anzeigen konnte oder ihr gezeichnetes HTML zu groß ist.

Den Score richtig lesen

  • Die ChatGPT-Suche arbeitet mit einer Kopie, die ihr Crawler von der Seite gemacht hat: dem Text des HTML und dem, was Skripte daraus zeichnen, ohne den Text in Bildern und ohne das, was die Seite erst nach dem Öffnen lädt. Die Kopie stammt vom letzten Crawl, daher erreicht eine Änderung die ChatGPT-Suche erst, nachdem der Crawler die Seite erneut abgerufen hat.
  • Wenn ChatGPT eine Seite selbst öffnet, liest es das HTML, das der Server sendet. Es führt keine Skripte aus, liest bei Bildern den Alt-Text und öffnet ein Bild nur über den src des img, den dieses HTML angibt. OpenAI verwendet eine geöffnete Seite etwa 30 Minuten lang wieder.
  • Der Score ändert sich nur, wenn sich die Seite oder die Art ihrer Darstellung ändert. Von fünfzehn Seiten, je dreimal bewertet, schwankten zehn um höchstens 3 Punkte. Eine Seite, die bei jedem Besuch andere Teile zeigt, schwankt stärker.
  • GEO Score betrachtet, was ChatGPT von einer Seite hat. Welche Seiten die ChatGPT-Suche für eine Frage auswählt, verfolgen die GEO-Monitore.

Fehler und Abrechnung

Ein abgeschlossener Task kostet 10 Credits für die Seite und 5 für jedes Bild, dessen Text gelesen wird, höchstens 12 Bilder: images.read im Ergebnis. Ein Bild, das der Host verweigert oder das nicht gelesen werden konnte (images.unread), ist kostenlos. Hat Ihr Konto dasselbe Bild in den letzten 90 Tagen gelesen, wird diese Lesung wiederverwendet (images.reused), für 2 Credits. Beim Einreichen werden 70 Credits reserviert, das Höchste, was eine Seite kostet, und bei Abschluss wird berechnet, was der Task verbraucht hat. Ein fehlgeschlagener Task wird nicht berechnet. Siehe Credits und Limits.

Beim Einreichen abgelehnt

Authentifizierungs-, Parallelitäts- und Ratenfehler sind dieselben wie bei jedem Task. Siehe Fehler.

Fehlgeschlagene Tasks

Ein fehlgeschlagener Task hat status: "FAILED" und einen error-String, der mit seinem Code beginnt:

Nächste Schritte

Citation Analysis

Sehen, welche Quellen eine Antwort geprägt haben.

GEO-Monitore

Ihre Marke in KI-Engines nach Zeitplan verfolgen.