Interne Verlinkung mit Embeddings

Wie wir hunderte übersehene SEO-Potenziale aufgedeckt haben

von Dirk Pache

SEO / LLMO / GEO > Interne Verlinkung mit Embeddings

Ein Mann, der am Computer etwas tippt, Seitenansicht. Im Hintergrund sind verschwommen Menschen, die ebenfalls am Comuputer arbeiten.

Vor ein paar Wochen sind wir auf einen Artikel von Moz gestoßen, der eine ziemlich clevere Methode beschreibt: Interne Verlinkung mit Embeddings.

Unser erster Gedanke: "Klingt komplex."
Unser zweiter: "Aber das Potenzial ist riesig."

Also haben wir die Methode getestet – zunächst auf unserer eigenen Website, dann bei einem Kundenprojekt. Das Ergebnis? Hunderte übersehene Verlinkungsmöglichkeiten, obwohl wir dachten, bereits gründlich gearbeitet zu haben.

Noch besser: Die Methode hat nicht nur fehlende Links aufgedeckt, sondern auch Keyword-Kannibalisierungen sichtbar gemacht und geholfen, eng verwandte Konzepte besser voneinander abzugrenzen.

In diesem Artikel zeigen wir Ihnen Schritt für Schritt, wie Sie dies auch für Ihre Website umsetzen können – inklusive der Stolperfallen, die wir durchlaufen mussten.

Warum Embeddings ein Game-Changer für interne Verlinkung sind

Die meisten SEOs arbeiten bei interner Verlinkung mit Keyword-Matching: "Wo kommt das Wort 'SEO' vor? Da könnte ich verlinken."

Das Problem: Semantisch verwandte Inhalte werden übersehen, wenn sie nicht die exakt gleichen Keywords verwenden.

Die Lösung: Vektoreinbettungen (Vector Embeddings) analysieren die semantische Ähnlichkeit von Inhalten – nicht über Keywords, sondern über mathematische Repräsentationen des Texts.

Konkret bedeutet das:

  • Ein Artikel über "KI im Marketing" wird als verwandt erkannt zu "ChatGPT für Unternehmen" – auch ohne identische Keywords
  • Die Ähnlichkeit wird über Cosine Similarity gemessen (Wert zwischen 0 und 1)
  • Je höher der Wert, desto ähnlicher der Content

Das Ergebnis: Sie finden Verlinkungspotenziale, die Sie mit klassischen Methoden niemals entdeckt hätten.

Was Sie brauchen

Bevor es losgeht, hier die Tool-Liste:

  • Screaming Frog SEO Spider (mit Custom JavaScript Feature)
  • OpenAI API Key (für die Vektoreinbettungen)
  • Python-Skript von Britney Muller (Google Colab)
  • Google Sheets oder Excel

Die gute Nachricht: Sie müssen kein Python-Experte sein. Das Skript macht die ganze Arbeit für Sie.

Schritt für Schritt-Anleitung

Schritt 1: OpenAI API Key besorgen

Gehen Sie auf die OpenAI Website und erstellen Sie einen API Key.
Wichtig: Sie brauchen eine bezahlte Version. Die kostenlose Version funktioniert nicht für diesen Zweck.

Screenshot der OpenAI Seite

Schritt 2: Screaming Frog konfigurieren

Hier wird's technisch – aber keine Sorge, wir führen Sie durch jeden Schritt.

Konfigurationsdatei laden
Zur Vereinfachung haben wir eine fertige Screaming Frog Konfigurationsdatei zum Download erstellt. Laden Sie die Datei herunter und benennen Sie um in "new9-28-2025-vector-embeddings.seospiderconfig"


So importieren Sie die Datei in Screaming Frog:

  1. Screaming Frog öffnen
  2. Gehen Sie zu Configuration > Profiles > Load
  3. Wählen Sie die .seospider Datei aus
Screenshot aus Screaming Frog: File > Import klicken

OpenAI API Key eintragen

  1. Öffnen Sie in Screaming Frog: Configuration > API Access > OpenAI
  2. Fügen Sie Ihren API Key ein
  3. Klicken Sie unten rechts auf Connect

Custom JavaScript für Embeddings einrichten

Jetzt kommt der wichtige Teil:

  1. Gehen Sie zu Configuration > Custom > Custom JavaScript
  2. Klicken Sie auf "Add from Library"
  3. Wählen Sie: "(ChatGPT) Extract embeddings from page content" > OK

Wichtiger Hinweis: Sie müssen auch hier Ihren OpenAI API Key im JavaScript-Code eintragen, selbst wenn Sie die Konfigurationsdatei geladen haben.

Screenshot aus Screaming Frog: Configuration > Custom JavaScript

Test-Crawl durchführen
Bevor Sie die ganze Website crawlen: Testen Sie erst eine einzelne URL!

Crawlen Sie eine Test-URL

  1. Prüfen Sie im Tab "Custom Extraction", ob Zahlen erscheinen
  2. Wenn ja: Alles läuft, Sie können die komplette Website crawlen

Troubleshooting: Falls Sie einen insufficient_quota Error bekommen:

  • Stellen Sie sicher, dass Sie ein kostenpflichtiges OpenAI-Konto nutzen
  • Prüfen Sie Ihr API Budget unter OpenAI Usage Settings
  • Setzen Sie ein monatliches Limit von mindestens 10 USD

Schritt 3: Die entscheidenden CSV-Dateien exportieren

Nach dem Crawl exportieren Sie zwei Dateien:

Export: All Inlinks

  1. Gehen Sie zu Bulk Export > Links > All Inlinks
  2. Speichern Sie die Datei als all_inlinks.csv

Was steht drin? Jeder einzelne interne Link deiner Website – bei größeren Sites kann diese Datei auch mal 50+ MB groß werden.

Screenshot aus Screaming Frog: Bulk Export > Links > All Inlinks

Export: Custom JavaScript (Embeddings)

  1. Gehen Sie zu Custom JavaScript
  2. Nutzen Sie den Filter "(ChatGPT ) Extract embeddings from page content"
  3. Exportieren Sie die Datei als custom_javascript_all.csv

Was steht drin? Die Vektoreinbettungen für jede gecrawlte URL.

Screenshot aus Screaming Frog: Custom JavaScript > Extract embeddings

Schritt 4: Python-Skript ausführen (ohne Python-Kenntnisse!)

Jetzt kommt das Python-Skript von Britney Muller zum Einsatz. Es automatisiert die komplette Datenaufbereitung.

Google Colab Skript von Britney Muller

So gehen Sie vor:

  1. Öffnen Sie das Skript in Google Colab
  2. Klicken Sie oben auf "Kopie erstellen" (damit Sie eine eigene Version haben)
  3. Klicken Sie auf den "Play"-Button
  4. Scrollen Sie nach unten zu "Choose Files"
  5. Laden Sie zuerst all_inlinks.csv hoch
  6. Laden Sie dann custom_javascript_all.csv hoch
  7. Warten Sie, bis das Skript durchläuft
  8. Laden Sie die Ergebnis-Dateien herunter:
    internal_link_opportunities.xlsx (Excel-Version mit Formatierung)
    internal_link_opportunities.csv (CSV-Version)

Hier sehen Sie den Bereich, wo sie Ihre csv-Dateien hochladen:

Screenshot von Python und der unteren Stelle, wo man die cvs-Dateien hochlädt
Klicken Sie auf das Bild, um die Großansicht zu öffnen

Die Stolperfalle: Englische Spaltennamen!

Hier kommt jetzt die entscheidende Info für deutschsprachige Screaming Frog Nutzer:

  • Das Python-Skript erwartet englische Spaltennamen
  • Screaming Frog liefert in der deutschen Version deutsche Namen

Die Lösung:
Öffnen Sie die Datei all_inlinks.csv und ändern Sie die Spaltenüberschriften manuell:

Deutsch (Screaming Frog) Englisch
Quelle Source
Ziel Destination
Link Position Link-Position

Speichern Sie die Datei, laden Sie sie erneut ins Python-Skript hoch – und dann läuft alles glatt durch.

Schritt 5: Die Ergebnis-Tabelle verstehen

Jetzt haben Sie Ihre Excel-Datei mit allen internen Verlinkungspotenzialen. So lesen Sie sie:

Spalte Englisch
Target URL Die Zielseite, um die es geht
Links to Target URL Alle Seiten, die bereits auf die Target URL verlinken
Related URL 1-5 Die 5 semantisch ähnlichsten Seiten (nach Cosine Similarity)
URL X links to A? "Exists" = verlinkt bereits / "Not Found" = Verlinkungspotenzial!

Das erhalten Sie: Vorschau der Ergebnis-Tabelle

Ausschnitt aus der Ergebnis-Tabelle: Alle Spalten
Klicken Sie auf das Bild, um die Großansicht zu öffnen

Schritt 6: Verlinkungen strategisch aufbauen

Jetzt wird's praktisch. So gehen Sie vor:

Priorisierung nach Traffic

  • Nicht alle Seiten haben die gleiche Priorität. Starten Sie mit Ihren Traffic-stärksten Seiten.
  • Warum? Weil diese den größten SEO-Hebel haben:
    • die haben bereits Rankings
    • die haben bereits Autorität
    • die ausgehenden Links geben mehr "Link Juice" weiter

Tool-Tipp: Exportieren Sie aus Ihrer Webcontrolling Software (Google Analytics, etracker, matomo etc.)  Ihre Top 100 Seiten nach Traffic und gleichen Sie sie mit Ihrer Ergebnis-Tabelle ab.

Verlinkungen natürlich einbauen
❌ Nicht so:
"Hier ist ein Link zu unserem Artikel über Stockfotos."


✅ Besser so:
"Neben kostenlosen Stockfoto-Quellen sollten Sie auch die rechtlichen Aspekte bei der Nutzung beachten – besonders im Social Media Kontext."

Faustregel: Der Ankertext sollte beschreiben, was der Nutzer auf der Zielseite findet.

Bonus: Was wir darüber hinaus gelernt haben

1. Keyword-Kannibalisierung wird sichtbar

Wenn mehrere Seiten eine extrem hohe Cosine Similarity (>0,90) haben, behandeln sie wahrscheinlich das gleiche Thema.
Praxis-Tipp: Prüfen Sie, ob Sie diese Seiten zusammenlegen oder klarer differenzieren sollten.

2. Content-Gaps werden offensichtlich

Wenn eine wichtige Seite nur wenige semantisch ähnliche Inhalte hat, fehlt Ihnen möglicherweise Supporting-Content.
Beispiel: Eine Produktseite ohne Tutorial-Artikel, FAQ oder Use Cases.

3. Die Methode funktioniert auch mehrsprachig

Wenn Sie mehrsprachige Websites betreuen: Die Vektoreinbettungen funktionieren sprachübergreifend – allerdings sollten Sie sie pro Sprache getrennt analysieren.

Ressourcen & Downloads

Fragen? Lassen Sie uns reden.

Wir haben diese Methode mittlerweile bei einem Dutzend Kundenprojekten eingesetzt – von lokalen Dienstleistern bis zu B2B-Unternehmen mit komplexen Content-Strukturen.
Sie brauchen Unterstützung bei der Umsetzung? Melden Sie sich bei uns!

Ich möchte einen kostenlosen Beratungstermin buchen

Wer schreibt hier?

Dirk Pache - der erste Mitarbeiter der Firma ...

Gründer und Inhaber
Bekennender 96 Fan, Freund von Wortspielen, Kalauern und weiteren Synonymen

Mehr erfahren ...

Dirk Pache: Gründer und Inhaber