Dynamische Preisgestaltung wird als Algorithmusproblem diskutiert. Ein Elastizitätsmodell wählen, ein paar Leitplanken setzen, optimieren lassen.
In der Praxis versagt selten der Algorithmus. Es ist der Feed darunter. Ein Repricer, der auf einer veralteten Zahl handelt, einem falsch zugeordneten Produkt, oder einer Beobachtung aus dem falschen Markt, trifft eine selbstsichere, schnelle, falsche Entscheidung, und trifft sie in jedem Zyklus weiter, bis jemand die Marge bemerkt.
Der nützliche Ansatz, um über einen Feed mit Konkurrenzpreisen nachzudenken, ist deshalb nicht der eines Scraping-Jobs, der eine Tabelle füllt. Es ist ein Messsystem mit Frischegarantie, einem Konfidenzwert und einer Sicherheitsebene, die entscheidet, wann die Preis-Engine überhaupt darauf handeln darf.
Was “Echtzeit” tatsächlich bedeuten muss
Echtzeit ist ein Marketingwort. Die operative Frage ist enger gefasst: Wie veraltet darf eine Beobachtung sein, bevor es nicht mehr sicher ist, danach zu bepreisen?
Diese Zahl ist nicht universell. Sie ergibt sich daraus, wie schnell sich Ihre Konkurrenten tatsächlich bewegen, was man messen kann statt zu raten. In langsamen Kategorien kann der Preis eines Konkurrenten wochenlang stabil bleiben, und ein täglicher Feed ist tatsächlich echtzeit genug. In umkämpften Kategorien mit automatisierten Repricern auf beiden Seiten kann eine vier Stunden alte Beobachtung bereits falsch sein.
Daraus folgen zwei Dinge.
Staffeln Sie Ihren Katalog nach Volatilität, nicht nach Umsatz. Der Instinkt ist, die Topseller am häufigsten zu aktualisieren. Die richtige Regel ist, das zu aktualisieren, was sich am häufigsten bewegt, was sich mit den Topsellern überschneidet, aber nicht dieselbe Menge ist. Ein sich langsam bewegender Artikel mit hohem Umsatz braucht keine stündliche Erfassung.
Speichern Sie den Beobachtungszeitpunkt, und lassen Sie den Verbraucher entscheiden. Jede Zeile im Feed trägt, wann sie beobachtet wurde. Die Preis-Engine wendet ihre eigene Veraltungsschwelle an, statt darauf zu vertrauen, dass alles in der Tabelle aktuell ist. Diese eine Entscheidung verhindert den Großteil des Schadens, den ein verzögerter Crawl anrichten kann.
Die Pipeline in Reihenfolge
match -> collect -> validate -> normalise -> score -> serve
Die Stufen, die Leute überspringen, sind validate und score, und genau diese beiden machen den Feed sicher.
Matching kommt vor allem anderen
Ein Preisfeed, der die falschen Produkte vergleicht, produziert schlechtere Entscheidungen als gar kein Feed, weil er sie mit Überzeugung produziert.
Matchen Sie zunächst nach Standardkennungen, sofern vorhanden, GTIN, UPC, EAN oder MPN, dann nach normalisierter Marke und Modell, dann nach Attributen. Packungsgröße ist die klassische Falle: Ein Sechserpack und ein Einzelstück teilen sich fast jedes Attribut und oft auch den Titel, und die Bepreisung gegen das falsche bewegt Ihren Preis genau in die falsche Richtung.
Jedes gematchte Paar sollte einen Konfidenzwert tragen, und Paare mit niedriger Konfidenz sollten von der automatisierten Repreisung ausgeschlossen werden, selbst wenn sie für ein Dashboard mit menschlicher Aufsicht gut genug sind. Die ausführlichere Behandlung des Matching-Problems findet sich unter competitor assortment and catalog gaps.
Das gesamte Angebot erfassen, nicht die Zahl
Der angezeigte Preis ist ein Feld in einem größeren Angebot, und wenn man nur nach diesem allein bepreist, unterbietet man am Ende einen Konkurrenten, der nie tatsächlich günstiger war.
Erfassen Sie den Preis, jeden durchgestrichenen oder Referenzpreis, die Versandkosten und -schwelle, den Lagerstatus, die Verkäuferidentität und jedes Badge oder jeden Werbetext. Ein Konkurrent zum gleichen Preis mit kostenlosem Versand ist günstiger. Ein Konkurrent, der nicht auf Lager ist, ist diese Stunde kein Konkurrent. Ein Drittanbieter auf einem Marketplace ist meist nicht der Konkurrent, den Ihr Pricing-Komitee gemeint hat.
Promotions verdienen ihre eigene Behandlung, weil die meisten Mechanismen, die verändern, was ein Kunde zahlt, das Preisfeld nie berühren. Das wird in tracking competitor promotions and discount cycles behandelt.
Vor dem Feed validieren, nicht danach
Jede Beobachtung sollte eine Reihe günstiger Prüfungen bestehen, bevor sie in die Tabelle darf:
- Wurde die Seite als Produktseite gerendert, statt als Challenge, Weiterleitung oder soft 404?
- Ist die Anfrage aus dem Markt ausgetreten, den diese Zeile beansprucht?
- Liegt der Preis in einem plausiblen Band relativ zur jüngsten Historie für diesen Artikel?
- Stimmt die Währung mit dem Markt überein?
- Ist die Produktkennung auf der Seite diejenige, die wir angefordert haben?
Die Bandprüfung erfasst die teuerste Fehlerklasse. Ein Preis, der sich über Nacht um 60% verändert, ist gelegentlich echt und meist ein Parsing-Fehler, eine Währungsverwechslung oder eine Bundle-Seite. Markieren Sie ihn, halten Sie ihn von der automatisierten Preisgestaltung fern, und lassen Sie einen Menschen bestätigen.
Konfidenz bewerten, dann ausliefern
Der Vertrag des Feeds mit der Preis-Engine sollte explizit sein: Hier ist der Preis, hier ist, wann er beobachtet wurde, hier ist der Markt, hier ist, wie zuversichtlich wir sind, und hier ist, ob Sie automatisch danach handeln dürfen.
Ein einfaches Drei-Zustands-Signal reicht für die meisten Teams. Automatisch handeln, einem Menschen vorlegen, oder ignorieren. Die Konfidenz kombiniert Match-Qualität, Beobachtungsalter, Validierungsergebnisse und jüngste Volatilität für diesen Artikel.
Geografie ist Teil des Preises
Dieselbe Konkurrenzseite kann in verschiedenen Märkten unterschiedliche Preise, unterschiedliche Versandoptionen und unterschiedlichen Lagerstatus zeigen. Ein Feed, der von einem Standpunkt aus erfasst und zur Bepreisung mehrerer Märkte verwendet wird, importiert stillschweigend die Wettbewerbslandschaft eines Landes in alle anderen.
Hier hört die Erfassungsebene auf, ein Implementierungsdetail zu sein. Residential proxies mit Länder-Targeting sorgen dafür, dass der Feed jedes Marktes tatsächlich aus diesem Markt stammt. Beim Shifter-Gateway gehen Targeting und Session in die Anmeldedaten gegen p.shifter.io:443:
customer-USERNAME-country-de-sid-feed-de-08-ttl-600:PASSWORD
country-de legt den Markt fest, sid-feed-de-08 hält einen Exit über einen Kategorie-Walk hinweg, sodass die Preise innerhalb eines einzelnen Snapshots intern konsistent sind, und ttl-600 behält diese Adresse zehn Minuten lang bei. Mitten im Crawl zu rotieren ist der Weg, wie die Preise zweier Märkte in einem Snapshot landen.
Halten Sie die Nebenläufigkeit moderat und drosseln Sie bei Fehlern, anstatt durchzudrücken, wie in rate limiting and request throttling. Ein Feed, der Abwehrmaßnahmen auslöst, wird zu einem Feed mit Lücken, und Lücken in einem Preisfeed sind nicht neutral: Sie sind stillschweigend zugunsten der Artikel und Stunden verzerrt, die am schwersten zu erfassen waren.
Die Sicherheitsebene
Automatisierte Preisgestaltung braucht Bremsen, die außerhalb des Modells sitzen, denn ein Modell ist nur so vernünftig wie seine Eingaben.
Unter- und Obergrenzen pro Artikel. Cost-plus-Untergrenzen und ein maximaler Rabatt, durchgesetzt nach dem Modell, nicht innerhalb davon.
Grenzen für die Änderungsrate. Begrenzen Sie, wie weit sich ein Preis in einem Zyklus und an einem Tag bewegen darf. Eine korrekt aussehende Folge kleiner Bewegungen, angetrieben von einem schlechten Feed, ist immer noch ein Rennen nach unten.
Abdeckungsgates. Wenn weniger als ein definierter Anteil der verfolgten Konkurrenten in diesem Zyklus eine gültige Beobachtung geliefert hat, nicht neu bepreisen. Repreisung gegen eine dünne Stichprobe ist schlechter als Zurückhalten.
Ein Notausschalter, und jemand, der ihn verantwortet. Fehler bei der automatisierten Preisgestaltung summieren sich schnell. Die Fähigkeit, alle automatisierten Bewegungen mit einer Aktion einzufrieren, mit einem benannten Verantwortlichen, ist nicht optional.
Beachten Sie, dass das Abdeckungsgate davon abhängt, Ihre eigene Erfassung zu messen, nicht nur die Preise. Verfolgen Sie die Erfolgsrate pro Konkurrent pro Zyklus zusammen mit dem Feed selbst, unter Verwendung der Methode in testing proxy speed, success rate and location accuracy. Wenn sich die Marge bewegt, ist die erste Frage, ob sich der Markt geändert hat oder Ihre Abdeckung.
Was nach dem Livegang zu überwachen ist
Ein Preisfeed verschlechtert sich lautlos. Diese vier Metriken bringen es früh ans Licht:
| Metrik | Was sie Ihnen sagt |
|---|---|
| Frischeverteilung | Der Anteil des Katalogs innerhalb seiner Veraltungsschwelle, pro Markt |
| Erfassungserfolgsrate | Pro Konkurrent und pro Markt, sodass ein einzelnes ausfallendes Ziel sichtbar ist |
| Match-Konfidenz-Mix | Ob der Anteil niedrig-konfidenter Paare nach oben driftet |
| Validierungsablehnungsrate | Eine steigende Rate bedeutet meist, dass eine Seite ihr Markup geändert hat, nicht dass Preise seltsam wurden |
Alarmieren Sie bei den Deltas, nicht bei den Werten. Eine Validierungsablehnungsrate, die sich über Nacht verdoppelt, ist ein Parser-Problem, von dem Sie hören wollen, bevor die Preis-Engine auf das handelt, was durchkam.
FAQ
Wie oft sollte ein Feed mit Konkurrenzpreisen aktualisiert werden?
Schneller, als sich Ihre Konkurrenten bei den relevanten Artikeln bewegen, was Sie messen sollten statt anzunehmen. Staffeln Sie den Katalog nach beobachteter Volatilität und geben Sie das Erfassungsbudget dort aus.
Sollten Drittanbieter auf Marketplaces im Feed sein?
Verfolgen Sie sie, aber halten Sie sie als separate Serie und entscheiden Sie bewusst, ob sie in die Preislogik eingehen. Das Vermischen von Erstanbieter- und Marketplace-Angeboten erzeugt ein Wettbewerbsbild, gegen das niemand tatsächlich konkurriert.
Was ist die häufigste Ursache für einen schlechten automatisierten Preis?
Produkt-Fehlzuordnung, gefolgt von veralteten Beobachtungen, die als aktuell behandelt werden. Beides wird durch Felder verhindert, die der Feed bereits tragen sollte: Match-Konfidenz und Beobachtungszeitstempel.
Brauche ich einen separaten Feed pro Land?
Pro Markt, ja, erfasst aus diesem Markt. Ein Feed, der über Märkte hinweg wiederverwendet wird, wird im Land, aus dem er erfasst wurde, korrekt sein und andernorts zunehmend falsch.
Fazit
Ein dynamisches Preissystem ist ein Messsystem mit angehängter Entscheidungsebene, und die meisten seiner Fehler liegen in der Messhälfte. Matchen Sie, bevor Sie erfassen, erfassen Sie das gesamte Angebot statt nur die Zahl, validieren Sie jede Beobachtung, bevor sie ankommt, hängen Sie Frische und Konfidenz an jede Zeile, und lassen Sie die Preis-Engine sich weigern zu handeln, wenn der Feed es nicht hergibt.
Erfassen Sie jeden Markt aus diesem Markt, halten Sie Sessions über einen Snapshot hinweg kohärent, und überwachen Sie Ihre eigene Abdeckung ebenso genau wie die Konkurrenz. Die produktbezogene Sicht auf diese Arbeit finden Sie auf der Seite residential proxies for price monitoring, mit Preisen auf der pricing page.