Diese Seite behandelt häufige Probleme bei der TRACIO-Integration und ihre Lösungen. TRACIO ist ein verwalteter Cloud-Dienst, daher sind die meisten Probleme clientseitig (Skript blockiert, Cookies, Datenschutzfunktionen des Browsers) und nicht infrastrukturbedingt.
Das Agenten-Skript oder die Identifikationsanfrage kann nicht geladen werden, oder die Browser-Konsole zeigt einen CORS-Fehler gegenüber edge.tracio.ai.
1. Origin für Ihren Schlüssel nicht freigegeben
Jeder öffentliche Schlüssel kann auf eine Menge erlaubter Origins beschränkt werden. Ist die Origin Ihrer Website nicht freigegeben, lehnt der Edge die Anfrage ab (403). Fügen Sie Ihre Origin unter Request Filtering im Dashboard hinzu, oder stellen Sie sicher, dass der verwendete Schlüssel nicht auf eine andere Website origin-gebunden ist.
2. Ad-Blocker oder CSP blockiert die Anfrage
Datenschutz-Extensions (uBlock Origin, AdBlock) oder eine strikte Content-Security-Policy können das Agenten-Skript oder dessen Netzwerkanfrage blockieren. Das SDK stellt dies als blocked-Fehler dar (siehe Fehlerbehandlung). Um das Blockieren zu erschweren, liefern Sie den Agenten von einer First-Party-Subdomain über die Optionen scriptUrl / endpoint aus.
3. Falscher Endpunkt / falsche Region
Stellen Sie sicher, dass Sie auf den richtigen Endpunkt zeigen. Wenn Sie region setzen, spricht das SDK mit edge.us.tracio.ai oder edge.eu.tracio.ai; ohne Angabe verwendet es edge.tracio.ai.
Die Konfidenzwerte liegen für wiederkehrende Besucher durchgehend unter 0.90.
1. Cookie wird nicht persistiert
Das Cookie _vid_t wird möglicherweise nicht korrekt gesetzt. Prüfen Sie im Browser:
// In browser consoledocument.cookie.split(";").filter((c) => c.includes("_vid_t"))Fehlt das Cookie, siehe den Abschnitt Cookie wird nicht persistiert weiter unten.
2. Neuer Workspace
Ein brandneuer Workspace hat eine leere Besucher-Datenbank, sodass alle Besucher als „neu“ mit einer Konfidenz um 0.90 erscheinen. Nach 24–48 Stunden werden wiederkehrende Besucher mit höherer Konfidenz erkannt.
3. Incognito-/privates Surfen
Im Incognito-Modus werden Cookies und localStorage beim Ende der Sitzung gelöscht. TRACIO greift dann auf reines Signal-Matching zurück, das eine niedrigere Konfidenz hat (typischerweise 0.85–0.95).
4. Browser mit aggressivem Anti-Fingerprinting
Brave, Firefox (strikter Modus) und Safari (ITP) modifizieren oder blockieren einige Browser-Signale. Dies reduziert die für das Matching verfügbare Signalmenge. TRACIO erkennt diese Browser und passt die Konfidenz entsprechend an.
Untersuchen Sie die Identifikation im Dashboard (Visitors / Events), oder
reagieren Sie auf die Webhook-Zustellung, die
identification.confidence, identification.incognito und das bot-Verdikt für
jedes Ereignis trägt.
Legitime menschliche Besucher werden als Bots markiert.
1. Browser-Extensions modifizieren Navigator-Eigenschaften
Einige Datenschutz-Extensions modifizieren navigator.userAgent, navigator.platform oder andere Eigenschaften. Dies kann den Tampering-Detektor auslösen, sollte aber die Bot-Erkennung nicht allein auslösen.
Prüfen Sie das Feld bot.type, um zu erkennen, welcher Detektor ausgelöst hat:
| bot.type | Häufige Ursache für False Positive | Lösung |
|---|---|---|
webdriver | Browser-Testtool hat navigator.webdriver = true gelassen | Nutzer sollte den Testmodus deaktivieren |
headless | VNC/Remote-Desktop mit Software-GPU-Rendering | Prüfen, ob SwiftShader/llvmpipe der GPU-Renderer ist |
unknown | Eval-Längen-Anomalie durch Browser-Extension | Die Extension überprüfen |
rateBot | Automatisiertes Seiten-Neuladen oder aggressives Polling | Anfragefrequenz reduzieren |
2. Unternehmensumgebungen mit Software-Rendering
Citrix-, VDI- und Terminalserver-Umgebungen verwenden häufig Software-GPU-Rendering (SwiftShader, llvmpipe), was ein Headless-Marker ist. Wenn Ihre Nutzer in solchen Umgebungen arbeiten, wenden Sie eine mildere Richtlinie an, wenn der Webhook einen headless-Bot-Typ anzeigt:
// `event` is the webhook delivery body (/docs/webhooks)if (event.bot.result === "bot" && event.bot.type === "headless") { // Software-GPU (SwiftShader/llvmpipe) VDI users can trip the headless // detector — consider applying a softer policy for these.}3. Automatisiertes Testing in Produktion
Wenn Ihr QA-Team Selenium-/Playwright-Tests gegen die Produktion ausführt, werden diese korrekt als Bots erkannt. Verwenden Sie einen separaten Schlüssel für Test-Traffic.
Das Cookie _vid_t verschwindet zwischen den Besuchen, sodass jeder Besuch als „neuer“ Besucher erscheint.
1. Nicht-HTTPS-Website
Das Cookie _vid_t verwendet das Secure-Flag und wird nur über HTTPS gesetzt. Stellen Sie sicher, dass Ihre Website HTTPS verwendet.
2. Cross-Site-Laden
TRACIO setzt SameSite=Lax auf dem Cookie. Wird der Agent in einem strikt Cross-Site-Kontext geladen, kann das Cookie blockiert werden. Die Auslieferung des Agenten von einer First-Party-Subdomain (über scriptUrl / endpoint) hält es same-site.
3. Safari ITP
Safaris Intelligent Tracking Prevention (ITP) kann die Lebensdauer clientseitig gesetzter Cookies begrenzen. TRACIO stellt _vid_t zusätzlich serverseitig über den Set-Cookie-Header aus und spiegelt die UID in localStorage, sodass die Identität selbst dann erhalten bleibt, wenn das Cookie begrenzt wird.
4. Browser löscht Cookies
Einige Browser (Brave, Firefox Focus) löschen Cookies beim Ende der Sitzung. Nutzer mit aggressiven Datenschutzeinstellungen erscheinen stets als neue Besucher.
tracio.getResult() benötigt mehr als 500 ms für die Rückgabe.
1. Langsames Netzwerk zum Edge
Prüfen Sie die Round-Trip-Latenz zu Ihrem regionalen Edge:
curl -o /dev/null -s -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nTLS: %{time_appconnect}s\nTotal: %{time_total}s\n" https://edge.tracio.ai/health2. Signalerfassung dauert zu lange
Einige Signale haben Timeouts. Auf langsamen Geräten kann die Erfassung 200 ms+ dauern. Die Signale, die am ehesten Latenz hinzufügen, sind der Audio-Fingerprint (AudioContext auf iOS suspendiert), die WebRTC-/TURN-Probe, die Font-Erkennung und das DRM-Timing. Diese sind durch Timeouts begrenzt und blockieren niemals unbegrenzt.
Einige Signale liefern einen Nicht-Erfolgsstatus (zum Beispiel „not available“ oder „timeout“).
Signalfehler sind zu erwarten und werden anmutig behandelt — das System passt die Konfidenz anhand der verfügbaren Signale an. Häufige Beispiele: Canvas durch CSP blockiert, AudioContext-Timeout auf iOS, WebGPU auf den meisten Browsern nicht unterstützt, Client Hints außerhalb von Chromium nicht verfügbar. Es ist keine Aktion erforderlich, es sei denn, kritische Signale (Canvas, WebGL, Audio) schlagen bei vielen Besuchern durchgehend fehl.
Wenn Sie auf ein hier nicht behandeltes Problem stoßen:
debug: truerequestId einer betroffenen Identifikation