Personalisieren und testen mit Croct
Marketer verwalten Experiences und Experimente im Dashboard (app.croct.com). Ihre Aufgabe als Agent ist es:
- Planen: Das Ziel des Benutzers in eine Experience umsetzen (wer / wo / was) und, wenn er einen Nachweis wünscht, ein Experiment (Hypothese, Ziel, Aufteilung, Varianten).
- Code einbinden: Sicherstellen, dass jeder gezielte Bereich ein Slot ist, die Conversion als
goalCompleted-Ereignis getrackt wird und die für die Zielgruppe benötigten Daten erfasst werden. - Zielgruppe schreiben: Eine CQL-Bedingung. Für Syntax über die hier genannten Rezepte hinaus laden Sie die Skill
croct-cql. - Ergebnisse interpretieren: Lesen Sie die Dashboards mit den dokumentierten Schwellenwerten; rufen Sie niemals einen Gewinner aus, den das Dashboard nicht unterstützt.
Sagen Sie dem Benutzer nicht, dass Code-Änderungen erforderlich sind, um ein Experiment zu starten, zu ändern oder zu beenden. Sobald der Slot und das Ziel existieren, ist alles andere Konfiguration.
Mentales Modell
| Konzept | Was es ist | Regeln |
|---|---|---|
| Experience | Inhalt, der einer Zielgruppe in einem oder mehreren Slots angezeigt wird | Definiert durch wer (Zielgruppen), wo (Slots), was (Inhalt). Mehrere Zielgruppen erlaubt; geben Sie jeder mit Inhaltsgruppen ihren eigenen Inhalt. |
| Zielgruppe | Eine CQL-Bedingung, die gegen den aktuellen Kontext des Benutzers ausgewertet wird | Kann alle Benutzer oder ein enges Segment ansprechen. |
| Priorität | Einzigartiger Rang pro Experience | Wenn sich Zielgruppen im selben Slot überschneiden, gewinnt die Experience mit höherer Priorität. Keine Gleichstände. |
| Experiment | Ein A/B/n-Test innerhalb einer Experience | Eines pro Experience zu einer Zeit. Erbt die Zielgruppe und Slots der Experience. 2 bis 5 Varianten. |
| Primäres Ziel-ID | Die Conversion, die das Experiment optimiert | Muss mit der goalId eines getrackten goalCompleted-Ereignisses übereinstimmen. |
| Traffic-Aufteilung | % der berechtigten Benutzer, die am Experiment teilnehmen | Der Rest sieht den Inhalt der Experience. |
Wer sieht was für einen bestimmten Slot:
| Benutzer | Sieht |
|---|---|
| Nicht in der Zielgruppe einer Experience | Standard-Inhalt des Slots |
| In der Zielgruppe, nicht dem Experiment zugeteilt | Inhalt der Experience |
| In der Zielgruppe, zugeteilt | Inhalt der zugewiesenen Variante |
| Entspricht mehreren Experiences im selben Slot | Die mit der höchsten Priorität |
Die Zuweisung ist deterministisch: Die Besucher-ID wird mit dem Experiment-Key gehasht, sodass ein Neuladen niemals die Variante wechselt. Die Exposition wird automatisch getrackt. Bei identifizierten Benutzern ist die Benutzer-ID der Zuweisungsschlüssel, sodass die Variante ihnen über Geräte hinweg folgen kann (anonyme Benutzer nicht).
Entscheiden, was gebaut werden soll
| Der Benutzer möchte... | Bauen Sie |
|---|---|
| Unterschiedlichen Inhalt für ein bekanntes Segment | Experience mit einer Zielgruppe, kein Experiment |
| Beweisen, dass eine Änderung funktioniert, bevor sie ausgerollt wird | Experience (oft „alle Benutzer") + Experiment |
| Text, Bilder, Layout oder einen Abschnitt testen | Inhalts-Experiment auf einem Slot (eine URL, wenn möglich serverseitig gerendert) |
| Testen, wohin ein Link führt | CTA-Experiment: Der Slot hält das Link-Ziel |
| Ein Element ein- oder ausblenden (Promo-Banner) | Code-seitig evaluate/useEvaluation nur für feste Logik, die ein Entwickler besitzt; andernfalls ein Slot mit einem booleschen Attribut plus einer Experience, damit Marketer kontrollieren, wer es sieht. Siehe die Evaluierungsregel der Skill croct-integrate-sdk |
| Funktionalität oder einen Ablauf testen, nicht sichtbaren Inhalt | Feature-Flag-Experiment: Ein Slot mit einem booleschen Attribut, serverseitig verzweigt |
| Zwei wirklich getrennte Seiten testen (neu aufgebaute Seite, andere Vorlage, Landingpage eines anderen Tools) | Redirect-Experiment. Bevorzugen Sie Inhalts-Experimente, wenn sich nur der Inhalt unterscheidet |
| Mehrere Schwellenwerte oder Segmente in einer Kampagne (kostenloser Versand nach Bundesland) | Eine Experience, mehrere Zielgruppen, Inhaltsgruppen |
| Eine Kampagne, die zu einer festgelegten Zeit startet, pausiert oder fortgesetzt wird | Zeitplanung (Add-on), optional in der Zeitzone der Zielgruppe |
Implementierungs-Checkliste
Jede Experience oder jedes Experiment benötigt diese im Code, bevor es konfiguriert wird:
- Ein Slot für jeden Bereich, der sich ändert. Wenn fehlend:
npx croct@latest add slot <slot-id>@1und rendern Sie ihn mit dem SDK (siehe die Skillscroct-use-cliundcroct-integrate-sdk). Ohne Slot kann keine Experience den Bereich ändern. - Ein
goalCompleted-Ereignis für die Conversion (erforderlich für Experimente). Die Ziel-ID muss mit der primären Ziel-ID des Experiments übereinstimmen. Wenn das Ziel neu ist, liefern Sie es vor dem Start des Experiments aus. - Umfangreichere Conversion-Ereignisse, wenn relevant:
orderPlaced,leadGenerated,userSignedUpbefüllen zusammen mit dem Ziel Widgets für Umsatz, Leads und Registrierungen. - Die Daten, die die Zielgruppe liest. UTM-Parameter, Standort und Sitzungsdaten sind automatisch; Rezepte basierend auf Beiträgen, Interessen, Bestellungen, Leads oder Registrierungen erfordern das Tracken dieser Ereignisse (siehe die Skill
croct-track-events). - Benutzeridentifikation, wenn Varianten geräteübergreifend konsistent bleiben müssen.
Ziel verfolgen
// components/HomeHero.tsx (React; @croct/plug-next ist identisch mit 'use client')
import type {ReactElement} from 'react';
import {useContent, useCroct} from '@croct/plug-react';
export function HomeHero(): ReactElement {
const {content} = useContent('home-hero@1');
const croct = useCroct();
function handleClick(): void {
croct.track('goalCompleted', {
goalId: 'hero-cta-click',
});
}
return (
<div>
<h1>{content.title}</h1>
<p>{content.subtitle}</p>
<a href={content.button.link} onClick={handleClick}>{content.button.label}</a>
</div>
);
}
// Reines JavaScript
import croct from '@croct/plug';
croct.track('goalCompleted', {goalId: 'sign-up'});
Das Ereignis akzeptiert auch optionale value und currency ({goalId: 'signup', currency: 'USD', value: 50}). In serverseitig gerenderten PHP-Stacks tracken Sie im Browser mit dem Template-Helper (@croct ... @endcroct in Blade, {% apply croct %} ... {% endapply %} in Twig).
Tracken Sie das Ziel dort, wo die Conversion tatsächlich stattfindet, im Browser. Tracken Sie es bei einem Redirect-Experiment auf beiden Seiten. Wenn die Conversion nur auf einem Server abgeschlossen wird (Zahlungs-Webhook, Backend-Registrierung), verwenden Sie das eigenständige track des JavaScript-SDKs von @croct/plug/api mit einem API-Key: Das Docs-Beispiel ist genau ein goalCompleted-Ereignis, das von einem Server oder einem sandboxed Skript gesendet wird (siehe die Skill croct-track-events). Es akzeptiert einen optionalen userToken; die Dokumentation sagt nicht, wie ein Ereignis, das ohne eines gesendet wird, dem Experiment zugeordnet wird.
Experience-Workflow (Dashboard)
Vermitteln Sie diese Schritte dem Benutzer; Sie können sie nicht selbst klicken.
- Experiences-Seite > Neue Experience, benennen Sie sie.
- Registerkarte Zielgruppe > Neue Zielgruppe > CQL-Kriterien einfügen. Mehrere Zielgruppen erlaubt.
- Registerkarte Slot > einen oder mehrere Slots auswählen (Slots über Seiten hinweg kombinieren für eine konsistente User Journey).
- Registerkarte Inhalt > Inhalt pro Slot bearbeiten (und pro Inhaltsgruppe, wenn sich Zielgruppen unterscheiden).
- Optionale Registerkarte Experiment (siehe unten).
- Überprüfen Sie die Entwurfsänderungen, dann Veröffentlichen (oder planen) — oder Vorschau anzeigen.
Während der Entwicklung erlaubt eine Zielgruppe wie property welcome of page's query is "true" dem Benutzer, die Experience mit ?welcome=true umzuschalten. Ersetzen Sie sie für die Produktion durch eine echte Zielgruppe.
Details zu Status, Priorität, Zeitplanung, Entwurfsänderungen und Inhalt: references/experiences.md.
Experiment-Workflow
- Schreiben Sie die Hypothese: die Änderung, die Metrik, die sie bewegt, und warum.
- Wählen Sie die primäre Ziel-ID (das Dashboard schlägt bereits getrackte IDs vor). Bestätigen Sie, dass sie feuert.
- Legen Sie die Traffic-Aufteilung fest. Verwenden Sie 100% für Nischenzielgruppen. Halten Sie sie während des gesamten Tests stabil.
- Erstellen Sie 2 bis 5 Varianten, eine davon normalerweise die Kontrolle. Eine Variante kann den Slot-Inhalt kopieren oder den Inhalt der Experience erben, anstatt ihn zu duplizieren.
- Legen Sie den Inhalt jeder Variante fest (und ggf. Inhaltsgruppen).
- Aktivieren Sie geräteübergreifende Konsistenz, wenn Benutzer identifiziert sind und ihre Variante behalten sollen.
- Sehen Sie sich eine Vorschau jeder Variante an, veröffentlichen Sie sie und überprüfen Sie dann: Sitzungen pro Variante entsprechen der Aufteilung, und eine Test-Conversion wird unter dem richtigen Ziel angezeigt.
Ändern Sie niemals die Traffic-Verteilung oder fügen Sie Varianten mid-test hinzu oder entfernen Sie sie; dies kann die Ergebnisse ungültig machen.
Details, Feature-Flags und Redirects: references/experiments.md und references/flag-and-redirect-experiments.md.
Ergebnisse lesen
Das Experiment-Dashboard zeigt oben ein Flag. Handeln Sie danach:
| Flag | Bedeutung | Tun Sie |
|---|---|---|
| Ziel verfolgen | Keine Zielabschluss-Ereignisse aufgezeichnet | Tracking beheben; nichts anderes ist sinnvoll |
| Experiment läuft | Noch nicht stabil | Warten. Stabil erfordert jede Variante ≥ 1.000 Besucher, jede Variante ≥ 25 Conversions und ≥ 1 Woche Laufzeit |
| Empfohlener Gewinner | Stabil, und eine Variante hat PBB > 95% und potenziellen Verlust < 0,1% | Gewinner-Inhalt auf die Experience anwenden und das Experiment beenden |
| Kein klarer Gewinner | Stabil, Varianten zu ähnlich | Ohne Gewinner beenden oder eine neue Hypothese testen |
Bevor Sie eine Metrik lesen, überprüfen Sie Sitzungen pro Variante gegen die konfigurierte Aufteilung. Ein anhaltendes Ungleichgewicht bedeutet, dass die Zuweisung oder Protokollierung eine Klasse von Benutzern verwirft.
Wahrscheinlichkeit die Beste zu sein (PBB) und potenzieller Verlust stammen aus Bayes'scher Inferenz mit einer Beta-Verteilung pro Variante und Monte-Carlo-Simulation, die in Echtzeit ohne Stichproben berechnet werden. Erklärungen, Formeln und jedes Dashboard-Widget: references/analytics.md.
Rezepte
Kompakte Playbooks (ABM, Blog-Leser, Kunden, kostenloser Versand, HubSpot-Formulare, Interessen, Leads, Standort, Marketingkampagnen, organische Absicht, Suchbegriffe), jeweils mit Zielgruppen-CQL, erforderlichem Tracking und empfohlenen Slots: references/playbooks.md.
Do's / Don'ts
- Tun Sie: Implementieren und verifizieren Sie das Ziel-Ereignis vor der Veröffentlichung eines Experiments. Ohne es sammelt das Experiment Expositionen, aber keine Conversions.
- Tun Sie: Weisen Sie 100% für Nischenzielgruppen zu, damit der Test statistische Validität erreichen kann.
- Tun Sie: Bevorzugen Sie eine URL mit Slot-gesteuertem Inhalt gegenüber Redirects; Redirects fügen einen Seitenaufruf hinzu und verzerren die Ergebnisse.
- Tun Sie: Halten Sie Redirects temporär (302/307) und schützen Sie vor Endlosschleifen.
- Tun Sie: Entfernen Sie veraltete Feature-Flag-Slots nach einem Testende aus dem Code.
- Tun Sie nicht: Rufen Sie einen Gewinner aus, während das Dashboard „Experiment läuft" anzeigt, oder allein aus Rohzahlen (Gesamtbestellungen, Gesamtanmeldungen).
- Tun Sie nicht: Bearbeiten Sie die Aufteilung oder die Variantenliste mid-test.
- Tun Sie nicht: Erwarten Sie geräteübergreifende Konsistenz für anonyme Benutzer; dies erfordert einen identifizierten Benutzer.
- Tun Sie nicht: Leiten Sie auf eine andere Domain weiter: Der Besucher wird pro Domain erkannt, sodass die Conversion niemals zugeordnet wird. Teilen Sie für Subdomains zuerst die Sitzung.
- Tun Sie nicht: Rendern oder cachen Sie eine Seite, die einen Experiment-Slot rendert, vollständig vor; eine gecachte Variante würde allen ausgeliefert.
Live-Dokumentation
- Index:
https://docs.croct.com/llms.txt - Jede Seite als Markdown:
.mdanhängen, z.B.https://docs.croct.com/explanation/experiment.md - Suche:
https://docs.croct.com/api/search.md?term=<terms>