Mehrwährungs-Onlineshop: Warum JS-Lösungen SEO zerstören

In diesem Artikel: wie die Währungsumrechnung über JS funktioniert und warum dies ein Problem für SEO ist, was Googlebot sieht, wenn er Ihr Geschäft indiziert, wie sich die serverseitige Umrechnung unterscheidet, wie Sie einen Multiwährungs-Shop ohne organische Verluste einrichten.
Fallstudie: Ein Geschäft auf Tilda, Publikum in mehreren Ländern. Es scheint, als ob Sie ein JS-Währungsumrechnungs-Widget anschließen, die Preise im Browser des Benutzers neu berechnet werden – die Aufgabe ist gelöst. Aber wenn Sie in der Search Console nachsehen, stellen Sie fest, dass das organische Wachstum für ausländische Anfragen nicht zunimmt. Der Grund ist, dass die Suchmaschine nicht dasselbe sieht wie der Käufer.
Laut einer Studie zum grenzüberschreitenden Einkauf bevorzugen 92 % der Käufer, Preise in ihrer Landeswährung zu sehen, und jeder dritte Käufer bricht den Warenkorb ab, wenn der Preis nur in einer Fremdwährung angezeigt wird. Das klingt offensichtlich – aber interessant ist, wie die meisten Geschäfte diese Aufgabe lösen und warum die Lösung zu einem SEO-Problem wird.

Wie die JS-Konvertierung funktioniert

Die meisten Widgets und Skripte zur Währungsumrechnung funktionieren nach einem Schema: Die Seite wird mit Preisen in der ursprünglichen Währung geladen, dann ruft JS den Wechselkurs über eine API ab und rechnet die Zahlen direkt im Browser des Benutzers um.
Für den Käufer sieht das normal aus: Er hat die Seite aufgerufen und eine Sekunde später den Preis in Euro gesehen. Manchmal gibt es beim Laden ein kleines Flackern, manchmal nicht. Visuell funktioniert es.
Das Problem ist nicht, dass der Benutzer etwas nicht sieht. Das Problem ist, dass der Suchmaschinen-Crawler die Seite ganz anders sieht.

Was Googlebot sieht

Googlebot indiziert Seiten beim ersten Rendering. Laut Google Search Central kann das Rendern von JavaScript verzögert werden: Zuerst wird die HTML-Version der Seite indiziert, JS kann später oder gar nicht verarbeitet werden.
Das bedeutet, dass in den Suchergebnissen Preise in der ursprünglichen Währung – Rubel – angezeigt werden können, wenn der Shop ursprünglich russisch ist. Ein Nutzer aus Deutschland gibt eine Suchanfrage ein, sieht in den Ergebnissen „4500 ₽“, klickt darauf, und erst nach dem Laden der Seite wird der Preis in Euro umgerechnet.
Das sind gleich zwei Probleme auf einmal. Erstens: Der Snippet in den Suchergebnissen zeigt einen nicht lokalisierten Preis an – das reduziert die Klickrate. Zweitens: Wenn Sie Mikrodaten verwenden (schema.org/Product mit dem Feld price), werden diese im HTML mit der ursprünglichen Währung hinterlegt. Die Suchmaschine sieht die strukturierten Daten mit Rubel und zeigt sie genau so in den Rich Results an.
Wenn Sie beispielsweise Tilda verwenden, finden Sie im Seitenquelltext häufig Meta-Tags oder JSON-LD-Markup wie "price": "4500" und "priceCurrency": "RUB". Selbst wenn ein JS-Skript im Frontend die Anzeige auf „€45“ ändert, erfasst der Suchmaschinen-Crawler, der den ursprünglichen HTML-Code liest, genau den Rubel-Preis, was zu Fehlern bei der Preisanzeige in den Suchergebnissen führt.
Um sicherzustellen, dass die Suchmaschine genau die Währung sieht, die Sie erwarten, empfehlen wir, die Seite mit dem Google Rich Results Test zu überprüfen. Dieses Tool zeigt Ihnen, wie Google Ihre Mikrodaten in Echtzeit interpretiert.
Das Format der strukturierten Daten für Produkte, einschließlich der Felder für Preis und Währung, ist in der offiziellen Google-Dokumentation zu strukturierten Daten für Produkte ausführlicher beschrieben.

Warum das schlimmer ist, als es scheint

Angenommen, Sie bewerben eine Seite für den deutschen Markt. Im Google Merchant Center oder in den organischen Suchergebnissen erwartet der Käufer, den Preis in Euro zu sehen. Wenn Ihre Mikrodaten „4500 RUB“ angeben, ist das nicht nur unschön – Google zeigt Ihre Produkte möglicherweise nicht in den lokalen Shopping-Ergebnissen an.
Eine SEO-Strategie für einen bestimmten Markt setzt voraus, dass der Inhalt dieser Seite dem Publikum entspricht: Sprache, Währung, Kontext. Die JS-Konvertierung vermittelt die Illusion einer Lokalisierung, aber der indexierbare Inhalt bleibt in seiner ursprünglichen Form.

Server-Konvertierung: Wie es funktionieren sollte

Bei der Währungsumrechnung auf dem Server erhält der Browser des Benutzers bereits eine fertige Seite mit Preisen in der gewünschten Währung. Alles ist im Voraus berechnet, der Browser erhält fertiges HTML mit den richtigen Zahlen.
Googlebot sieht dasselbe wie der Käufer: den Preis in Euro, die korrekte Mikrodaten-Auszeichnung, das korrekte Snippet. Die Lokalisierung ist vollständig – für den Benutzer und für die Suchmaschine gleichzeitig.
Im Rahmen dieses Ansatzes wird der Wechselkurs aus einer zuverlässigen Quelle (z.B. einer Live-Wechselkurs-API) bezogen und serverseitig beim Ausliefern der Seite angewendet. Der Cache wird nach Zeitplan aktualisiert. Der Benutzer sieht beim Laden niemals ein „Flackern“.

Verkauft Ihr Geschäft in mehreren Ländern?

Multify konvertiert Preise serverseitig – Suchmaschinen sehen die korrekten Daten, und Käufer erhalten Preise in ihrer Währung ohne Flackern.

Wie Multify das Problem löst

Multify fungiert als Proxy-Schicht zwischen der Website und dem Benutzer. Wenn eine Anfrage von einem Benutzer aus Deutschland kommt, liefert der Server die Seite bereits mit neu berechneten Preisen in Euro aus. Der Kurs wird automatisch aktualisiert.
Dies ist nicht nur für SEO wichtig, sondern auch für die URL-Struktur. Die Sprachversion der Website ist unter /de/ oder de.yourdomain.com erreichbar, und unter dieser Adresse sieht Googlebot den korrekten deutschsprachigen Inhalt mit Preisen in Euro. Hreflang wird automatisch generiert – eine separate Konfiguration ist nicht erforderlich.
Der Unterschied zum JS-Ansatz ist grundlegend: Bei JS tun Sie so, als wäre die Website lokalisiert, bei der serverseitigen Konvertierung ist die Website tatsächlich lokalisiert – sowohl für Menschen als auch für Suchmaschinen.

Was tun, wenn Sie bereits eine JS-Konvertierung haben?

Wenn Sie derzeit ein Währungs-Konvertierungs-Widget verwenden, schauen Sie in der Google Search Console nach: Was sieht der Googlebot beim Indexieren Ihrer Produktseiten? Das Tool „URL-Prüfung“ zeigt den HTML-Code, den der Bot erhalten hat – prüfen Sie, ob die Preise in der richtigen Währung und die korrekte Mikrodaten vorhanden sind.
Wenn Sie die ursprüngliche Währung sehen, ist das keine Katastrophe, aber es bedeutet, dass der organische Traffic aus anderen Ländern nicht voll ausgeschöpft wird.

Möchten Sie, dass Googlebot die richtigen Preise sieht?

Wir zeigen Ihnen, wie es in Ihrem Shop funktioniert – wir richten eine Demo ein und prüfen es gemeinsam.

Häufig gestellte Fragen

Ignoriert Googlebot JavaScript immer?
Nein, aber es ist komplizierter, als man es sich wünschen würde. Google rendert JavaScript in einer separaten Warteschlange, was zu Verzögerungen führen kann. Bei sich schnell ändernden Daten wie Preisen bedeutet eine Verzögerung, dass ein veralteter Preis in den Suchergebnissen angezeigt wird.
Was ist mit Yandex?
Yandex rendert JavaScript ebenfalls, jedoch mit Einschränkungen. Für GUS-Märkte, wie Kasachstan, Belarus und Armenien, kann es vorkommen, dass der Bot beim ersten Crawling keine korrekten Inhalte erhält.
Wie kann ich überprüfen, in welcher Währung die Suchmaschine meine Preise sieht?
In der Google Search Console: „URL-Prüfung“, dann „Indexierte Seite ansehen“. Dort sehen Sie den HTML-Code, den der Googlebot erhalten hat. Achten Sie auf den Wert priceCurrency in den Mikrodaten des Produkts.
Wie zeige ich Preise in lokaler Währung an, ohne SEO zu verlieren?
Berechnen Sie die Preise auf dem Server neu, damit der Browser und der Suchmaschinen-Bot bereits den korrekten Preis und die korrekten Mikrodaten erhalten. Die vollständige Startreihenfolge ist in der Checkliste für mehrsprachige Shops auf Tilda zusammengefasst.

Wir verbinden Multify mit Ihrer Website

Ihre Antworten helfen uns zu verstehen, wie wir Ihre Website am besten verbinden können

Website-Typ
Anzahl der Seiten
Monatliche Website-Besucher
Bevorzugte Kontaktmethode *