Dirty Data sind Daten, denen du für ihre Aufgabe nicht trauen kannst: Werte, die falsch, unvollständig, doppelt, widersprüchlich, veraltet oder im falschen Feld gespeichert sind. Im Produktkatalog sieht das so aus: zwei Produkte mit derselben EAN, ein Gewichtsfeld mit "N/A", Lieferanten-HTML in einer Beschreibung, ein Preis, den der Lieferant vor drei Monaten geändert hat, oder eine Bild-URL, die einen 404-Fehler liefert.
Die meisten Definitionen von Dirty Data sind für CRM-Datensätze geschrieben: doppelte Kontakte und alte E-Mail-Adressen. Dieser Beitrag bleibt bei Produktdaten. Du bekommst acht Arten von Dirty Data in Produktdaten, jeweils mit einem realistischen Beispiel, einem Test, der sie in einem Export findet, und der Lösung. Die allgemeine Methode, Fehler zu finden und zu korrigieren, erklären wir in unserem Lexikoneintrag zur Datenbereinigung; hier bleiben wir bei den konkreten Fällen.
Sechs Zeilen aus einer Lieferantendatei und was mit jeder nicht stimmt
Hier ein Auszug aus einer typischen Lieferantendatei für einen Shop mit Küchenzubehör. Niemand hat diese Zeilen absichtlich schlecht aussehen lassen: Jedes Problem darin kommt in echten Katalogen vor, oft in derselben Datei. Die EAN ist die Demonstrationsnummer von GS1, also gültig, aber keinem echten Produkt zugeordnet.
Eine Lieferantendatei, sechs Arten von Dirty Data
| 1 | KN-2040 | 9506000134352 | Chef's knife 20 cm | 0.21 kg | 39.95 | Nichts: die Referenzzeile |
|---|---|---|---|---|---|---|
| 2 | KN-2040 (Leerzeichen am Ende) | 9506000134352 | Chef knife 20cm black | 210 g | 39.95 | Dasselbe Produkt noch einmal; Einheit anders geschrieben |
| 3 | KN-2041 | 9.50600E+12 | Bread knife 22 cm | N/A | 34.95 | EAN in wissenschaftlicher Notation; Platzhalter beim Gewicht |
| 4 | KN-2042 | 950600013435 | Santoku 18 cm | 0,19kg | 0.00 | EAN eine Ziffer zu kurz; Dezimalkomma; Preis null |
| 5 | BD-1100 | 9506000134352 | Cutting board oak | 1.2 kg | 29.95 | EAN des Kochmessers auf ein Brett kopiert |
| 6 | BD-1101 | (leer) | Schneidebrett Eiche XL | 2.6 lbs | 44.95 | Deutscher Titel in einem englischen Katalog; imperiale Einheit |
Das ist kein Nischenproblem. Als wir uns rund 50 Kataloge im Moment ihres Imports in WISEPIM angesehen haben, vor jeder Anreicherung, hatte ein Viertel der Produkte keine Beschreibung, mehr als ein Drittel kein Bild und fast zwei Drittel steckten in keiner Kategorie. Zahlen und Methode findest du in What 50 product catalogs look like when they arrive in a PIM.
Produkte, denen beim Import das Nötigste fehlt
| Kategorie | Share of products |
|---|---|
| Keine Beschreibung | 25% |
| Kein Bild | 36% |
| In keiner Kategorie | 64% |
Acht Arten von Dirty Data in Produktdaten und der Test, der jede aufdeckt
Jeder Typ unten folgt demselben Muster: wie er aussieht, wie du ihn in einem CSV- oder Tabellenexport findest und wie du ihn so behebst, dass er behoben bleibt. Die Qualitätsdimensionen dahinter (Eindeutigkeit, Gültigkeit, Konsistenz, Aktualität) erklären wir in unserem Beitrag zu Datenqualitätsdimensionen.
1. Doppelte SKUs und geteilte EANs
Zeile 1 und 2 sind dasselbe Kochmesser. Die zweite SKU hat ein Leerzeichen am Ende, deshalb sieht ein einfacher Vergleich zwei Produkte. Andere Varianten desselben Problems: "kn-2040" in Kleinbuchstaben, ein Produkt, das von zwei Lieferanten unter zwei SKUs importiert wurde, oder ein Lieferant, der die EAN des Hauptprodukts auf jede Farbvariante kopiert. Zeile 5 zeigt den fiesesten Fall: eine echte, gültige EAN am falschen Produkt, die keine Formatprüfung je erkennt.
- So findest du es: Entferne Leerzeichen, schreib die SKU-Spalte klein und zähl dann, wie oft jeder Wert vorkommt (ZÄHLENWENN in einer Tabellenkalkulation). Mach dasselbe mit der EAN-Spalte. Jeder Wert über 1 ist eine Gruppe, die du prüfen musst.
- So behebst du es: Wähl den Datensatz, der bleibt (meist den, der mit Bestellungen und aktiven Angeboten verknüpft ist), übertrag eindeutige Werte darauf und archivier den anderen. Gib jeder Variante eine eigene GTIN. Der Leitfaden zur Deduplizierung erklärt Fuzzy Matching für ähnliche Titel.
In WISEPIM markiert der CSV-Import wiederholte SKUs, SKUs, die sich nur durch Leerzeichen unterscheiden, und SKUs, die sich ohne Beachtung der Groß- und Kleinschreibung wiederholen, bevor irgendetwas importiert wird. Nach dem Import gibt es im Bericht Data Quality (Datenqualität) das Panel Duplicate SKUs & EANs (doppelte SKUs und EANs), das Produkte gruppiert, die sich eine der beiden Kennungen teilen.
2. Von der Tabellenkalkulation zerstörte Barcodes
In Zeile 3 steht 9.50600E+12. Jemand hat die Datei in Excel geöffnet, und Excel liest einen Barcode als Zahl. Die Support-Seite von Microsoft bestätigt, dass Excel führende Nullen entfernt, große Zahlen in wissenschaftlicher Notation anzeigt und höchstens 15 signifikante Stellen behält. Eine 13-stellige EAN passt noch in diese 15 Stellen, also ist zunächst nur die Anzeige falsch. Der Schaden entsteht, wenn jemand die Tabelle wieder als CSV speichert: Der gerundete Wert vom Bildschirm kann in der Datei landen, und sobald in der CSV 9.50600E+12 steht, sind die letzten sieben Ziffern weg. Führende Nullen gehen schon beim Öffnen verloren: Eine 13-stellige GTIN, die mit 0 beginnt, kommt mit 12 Ziffern an und sieht wie ein anderer Code aus.
- So findest du es: Jede GTIN darf nur Ziffern enthalten, muss 8, 12, 13 oder 14 Stellen haben und die Prüfziffernberechnung bestehen. Alles mit einem E, einem Komma oder einem Dezimalpunkt fällt sofort durch. Füg eine Stichprobe in den kostenlosen EAN- und GTIN-Validator ein, um die Prüfziffer zu testen.
- So behebst du es: Versuch nicht, die Nummer aus 9.50600E+12 zu rekonstruieren; die Datei enthält die Ziffern nicht mehr. Bitte den Lieferanten um einen neuen Export, bei dem die Spalte als Text gespeichert ist, oder hol die Codes aus dem Quellsystem. Damit es nicht wieder passiert, öffne CSV-Dateien über Daten > Aus Text/CSV und stell die Barcode-Spalte auf Text, oder schalte die Konvertierungen unter Automatische Datenkonvertierung in den Excel-Optionen ab (Microsoft 365 und Excel 2024).
3. Einheiten, Dezimalzeichen und Formate, die nicht zusammenpassen
Schau dir die Gewichtsspalte an: 0.21 kg, 210 g, 0,19kg, 1.2 kg und 2.6 lbs. Ein Mensch liest alle fünf. Ein Filter, eine Versandkostentabelle oder ein Marktplatz-Import nicht. Dasselbe passiert bei Maßen (30x20x10, 30 x 20 x 10 cm, L30 B20 H10), bei Farben (Black, black, BLK, Zwart) und bei Größen (M, Medium, 38/40).
- So findest du es: Lass dir die unterschiedlichen Werte pro Attribut auflisten und sortier sie. Zehn Schreibweisen einer Farbe passen auf einen Bildschirm. Bei Zahlen zeigt ein Muster wie eine Zahl gefolgt von einer Einheit, welche Zellen beides in einem Textfeld mischen.
- So behebst du es: Speichere Zahl und Einheit in getrennten Feldern, wähl pro Attribut eine Basiseinheit und rechne den Rest um (ein Pfund sind genau 0,45359237 kg, also sind 2,6 lb 1,18 kg). Ersetze Farben und Größen im Freitext durch eine feste Liste erlaubter Werte. Unser Leitfaden zur Attribut-Standardisierung enthält Namens- und Einheitenkonventionen zum Übernehmen.
4. HTML-Fragmente und Lieferantenreste in Beschreibungen
Lieferantenbeschreibungen sind oft von einer Website oder aus einer Word-Datei kopiert. Sie kommen mit Tags wie span style="font-family:Arial", Entities für geschützte Leerzeichen, doppelt kodierten Ampersands (&) und Text, der nie für Kunden gedacht war: interne Artikelnummern, "Preis auf Anfrage", die Telefonnummer des Lieferanten oder eine Zeile wie "weitere Modelle auf unserer Website".
- So findest du es: Durchsuch die Beschreibungsspalte nach den Zeichen < und &, nach http, nach dem Namen des Lieferanten und nach Formulierungen wie "hier klicken". Zähl die Treffer pro Lieferant; meist verursacht eine Quelle den Großteil.
- So behebst du es: Leg fest, welches Markup deine Kanäle akzeptieren. Marktplätze und die meisten Feeds wollen reinen Text; dein eigener Shop erlaubt vielleicht eine kurze Liste von Tags (Absätze, Listen, Fettdruck). Entferne alles andere, dekodiere Entities einmal und lösch Verweise auf den Lieferanten. Halte einen sauberen Haupttext und gib jedem Kanal beim Export sein eigenes Format.
Zwei WISEPIM-Werkzeuge passen hier: Eine Quality-Guard-Regel kann prüfen, ob ein Feld HTML enthält oder reiner Text ist, und Content Logic kann HTML für einen Kanal aus einem Feld entfernen, während dein Webshop die formatierte Version behält. Für einmalige Bereinigungen funktioniert auch Find & Replace (Suchen und Ersetzen) in der Bulk-Bearbeitung mit regulären Ausdrücken.
5. Zwei Sprachen in einem Produkt
Zeile 6 hat einen deutschen Titel in einem englischen Katalog. Gemischte Sprachen schleichen sich ein, wenn ein Lieferant nur eine Sprache schickt, wenn ein Übersetzungsfeld mit einer Kopie des Quelltexts gefüllt wird, um eine Pflichtfeldprüfung zu bestehen, oder wenn ein Produkt einen englischen Titel und eine niederländische Beschreibung bekommt. Das hat Folgen: CSA Research fand heraus, dass 76 % der Online-Käufer lieber Produkte mit Informationen in ihrer eigenen Sprache kaufen und 40 % nie auf Websites in anderen Sprachen kaufen.
- So findest du es: Vergleiche jede Übersetzung mit ihrer Quelle; identischer Text heißt, dass nichts übersetzt wurde. Für eine schnelle Sprachprüfung durchsuchst du eine Sprachversion nach häufigen Wörtern einer anderen Sprache (der, und, mit in einem englischen oder niederländischen Feld).
- So behebst du es: Leg pro Feld eine Quellsprache fest, übersetz nur aus dieser Quelle und führ pro Sprache einen Status, damit ein nicht übersetztes Feld als fehlend auftaucht, statt vollständig auszusehen.
6. Platzhalter, die als echte Werte durchgehen
N/A, ein einzelner Bindestrich, TBD, 0, 999, test, siehe Beschreibung, Lorem ipsum, 1900-01-01, ein Bild namens no-image.jpg. Platzhalter sind schlimmer als leere Felder, weil Vollständigkeitsprüfungen sie als gefüllt zählen. Ein Gewicht von 0 macht ein 20-kg-Paket versandkostenfrei. Ein Preis von 0.00 wie in Zeile 4 kann das Produkt verschenken, wenn er einen Kanal erreicht.
- So findest du es: Führ eine Liste bekannter Platzhalter und durchsuch jedes Textfeld nach exakten Treffern. Bei Zahlen suchst du nach Nullen, runden Werten wie 999 oder 9999 und Ausreißern: Ein Kochmesser mit 3 kg in einer Familie, in der die anderen rund 0,2 kg wiegen, ist fast sicher ein Tippfehler oder eine verwechselte Einheit.
- So behebst du es: Mach aus Platzhaltern zuerst echte leere Werte, damit deine Berichte die tatsächlichen Lücken zeigen, und füll sie erst dann oder markier sie für den Lieferanten.
Der Bericht Data Quality in WISEPIM enthält die Karte Suspicious values (auffällige Werte), die Zahlen markiert, die weit vom Durchschnitt ähnlicher Produkte in derselben Produktfamilie abweichen (sie braucht mindestens 10 Produkte in einer Familie für eine Bewertung). Eine Quality-Guard-Regel mit der Bedingung is not one of (ist keines von) hält Werte wie N/A von da an aus einem Feld fern.
7. Veraltete Preise, Bestände und Spezifikationen
Daten altern. Der Lieferant hat die Preise zum 1. Januar erhöht, ein Produkt wurde eingestellt, zeigt aber noch einen Bestand von 999, der Akku eines Akkuschraubers wechselte von 2,0 Ah auf 4,0 Ah und die alte Angabe blieb in deinem Feed. Veraltete Preise sind auch ein Compliance-Problem: Google verlangt, dass der übermittelte Preis mit dem Preis auf deiner Landingpage und im Checkout übereinstimmt, und bittet dich, ihn bei jeder Änderung zu aktualisieren.
- So findest du es: Vergleiche deine Preise mit der neuesten Preisliste des Lieferanten, markier Angebotspreise, die höher als der reguläre Preis sind, und lass dir Produkte auflisten, die seit 90 Tagen niemand bearbeitet hat oder die zuletzt vor mehr als 30 Tagen an einen Kanal exportiert wurden.
- So behebst du es: Gib jedem schnell wechselnden Feld (Preis, Bestand, Verfügbarkeit) einen Verantwortlichen und eine Quelle und aktualisier es nach festem Zeitplan, statt dann, wenn es zufällig jemandem auffällt.
Die Karte Catalog freshness (Katalog-Aktualität) im Bericht Data Quality von WISEPIM listet Produkte, die nie geprüft oder exportiert wurden, Produkte, die seit über 30 oder 90 Tagen nicht aktualisiert wurden, und Produkte, die vor mehr als 30 Tagen an einen Kanal exportiert wurden.
8. Bildlinks, die kaputt, temporär oder falsch sind
Bildfelder sammeln ihren eigenen Schmutz: http-Links, die Browser in einem https-Shop blockieren, URLs mit Leerzeichen, Freigabelinks von Dropbox oder Google Drive, die eine Webseite statt eines Bildes liefern, Hotlinks zum Lieferanten, die brechen, wenn der Lieferant seine Website umbaut, eine Grafik "Foto folgt" oder das Foto der schwarzen Variante bei allen fünf Farben. Google sagt klar, dass das Hauptbild genau den Artikel zeigen muss und dass Platzhaltergrafiken wie "Coming soon" oder "Photo pending" nicht eingereicht werden sollen; außerdem sollen Leerzeichen und Symbole in Bild-URLs URL-kodiert sein.
- So findest du es: Ruf jede Bild-URL ab und notier Statuscode und Content-Type; alles außer einer 200 mit einem Bildtyp ist kaputt. Bilde Hashes der Dateien, um ein Bild zu finden, das bei vielen Produkten wiederverwendet wird.
- So behebst du es: Lad Bilder in einen Speicher herunter, den du kontrollierst, halte die URLs in einem Feld und häng an jede Farbvariante das richtige Foto.
Datenbereinigung in dieser Reihenfolge, damit du jeden Datensatz nur einmal anfasst
Die Reihenfolge zählt. Wenn du Beschreibungen übersetzt, bevor du Duplikate entfernst, übersetzt du dasselbe Produkt zweimal. Wenn du fehlende Gewichte füllst, bevor du Einheiten umrechnest, mischst du neue Gramm mit alten Kilogramm. Diese Abfolge funktioniert für die meisten Katalogbereinigungen:
Reihenfolge der Produktdatenbereinigung
Dirty Data aus der nächsten Lieferantendatei heraushalten
Einen Katalog einmal zu bereinigen ist ein Projekt; ob er sauber bleibt, hängt davon ab, was du hereinlässt. Drei Gewohnheiten erledigen den Großteil:
- Ein Datenvertrag pro Lieferant: die Spalten, die du erwartest, die Einheit für jede Zahl, erlaubte Werte für Farben und Größen, die Sprache und dass Barcodes als Text kommen. Schick ihn vor der ersten Datei, nicht nach der dritten schlechten.
- Validierung vor dem Import, nicht danach: Lehne Zeilen mit wiederholten SKUs, fehlerhaften EANs, negativen Preisen oder einem Angebotspreis über dem regulären Preis ab oder halte sie zurück, und zeig dem Lieferanten die Zeilennummern.
- Regeln am Ausgang: Ein Produkt, das eine Pflichtprüfung nicht besteht, sollte keinen Kanal erreichen. Unser Beitrag zum Aufbau eines Data-Quality-Frameworks behandelt Verantwortliche, Regeln und Prüfpunkte im Detail.
Listen erlaubter Werte helfen am meisten beim Eingang, weil sie eine neue Schreibweise einer Farbe stoppen, bevor sie sich ausbreitet. In WISEPIM legt ein Optionsset pro Attribut fest, was passiert, wenn ein Import einen Wert bringt, der nicht auf der Liste steht: ihn hinzufügen, ihn mit einer Prüfmarkierung hinzufügen oder das Produkt überspringen, bis der Wert ergänzt ist.
Wenn du sehen willst, wo dein eigener Katalog steht, bündelt der Bericht Data Quality in WISEPIM diese Prüfungen: doppelte SKUs und EANs, auffällige Werte, Katalog-Aktualität und den Zustand jedes einzelnen Felds, mit einem Qualitätsscore pro Produkt. Quality Guard macht aus den Korrekturen dann Regeln, damit derselbe Schmutz vor dem nächsten Export auffällt.

