{
  "schema_version": 1,
  "catalog": {
    "url": "https://fingerprint.garden/",
    "snapshot_url": "https://fingerprint.garden/snapshots/20261028t174409041z-53886a5d/field/0.json",
    "snapshot_id": "20261028t174409041z-53886a5d",
    "generated_at": "2026-10-28T17:44:09.044Z",
    "sha256": "c83527434ee080c0df1fdb5e7e9a5c2a07b3d6f5a4d40f8b11c0528843e672f7",
    "canvas_artifacts": 2057
  },
  "run": {
    "rel_version": "0.1.165",
    "build_id": "2af5-e85299fc-262fd5da-cc51a996778f",
    "chromium_version": "156.0.8078.17",
    "platform": "macOS arm64",
    "identity": "Private",
    "sessions": 2,
    "settings": {
      "network": "direct; same connection for both sessions",
      "adblock_enabled": false,
      "viewport_preset": "desktop",
      "image_blocking_mode": "none"
    },
    "comparison": "Within-session repeat visits and independent sessions from the same profile. No installed Chrome baseline or customer-owned server-side integration.",
    "started_at": "2026-10-29T05:21:24.033896+00:00",
    "completed_at": "2026-10-29T05:24:38.470106+00:00",
    "debug_notifications_enabled": false
  },
  "families": [
    {
      "id": "accertify",
      "name": "Accertify / InAuth",
      "canvas_artifacts": 22,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "akamai",
      "name": "Akamai",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "alibaba-awsc",
      "name": "Alibaba AWSC",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "alibaba-feilin",
      "name": "Alibaba Cloud FeiLin",
      "canvas_artifacts": 10,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "anyid-tfingerprint",
      "name": "AnyID / TFingerprint",
      "canvas_artifacts": 5,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "aws-waf",
      "name": "AWS WAF",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "botfaqtor",
      "name": "Botfaqtor",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "bunny-shield",
      "name": "Bunny Shield",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "castle",
      "name": "Castle",
      "canvas_artifacts": 50,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "clay",
      "name": "Clay Web Intent",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "clearout-form-guard",
      "name": "Clearout Form Guard",
      "canvas_artifacts": 3,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "cleartrust",
      "name": "ClearTrust",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "clerk-protect",
      "name": "Clerk Protect SDK",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "clickadu",
      "name": "Clickadu",
      "canvas_artifacts": 662,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "turnstile",
      "name": "Cloudflare Turnstile",
      "canvas_artifacts": 15,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "conviva",
      "name": "Conviva",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "creepjs",
      "name": "CreepJS-derived",
      "canvas_artifacts": 44,
      "status": "limited",
      "summary": "Reference CreepJS test: headless 0%, stealth 0%, like-headless 25%.",
      "tests": [
        {
          "label": "Original CreepJS reference test",
          "url": "https://abrahamjuliot.github.io/creepjs/",
          "observations": [
            "Headless: [0, 0, 0]%; stealth: [0, 0, 0]%; like-headless: [25, 25, 25]% (A, A repeat, B).",
            "FP ID stable on repeat: true. Equal across independent sessions: true.",
            "The reference project is not every CreepJS-derived script cataloged by fingerprint.garden. These heuristic percentages are not probabilities of detection.",
            "Debug notifications were suppressed during collection, as in normal REL Debug verification."
          ],
          "metrics": {
            "headless_percent": [
              0,
              0,
              0
            ],
            "like_headless_percent": [
              25,
              25,
              25
            ],
            "stealth_percent": [
              0,
              0,
              0
            ],
            "fp_id_stable_on_repeat": true,
            "fp_id_equal_across_sessions": true
          },
          "capture_digests": [
            {
              "file": "creepjs-a.html",
              "sha256": "d4e30d7b4de0776f2acc1ba54a8f9f280c33a789068c319e50978bc8800b132a"
            },
            {
              "file": "creepjs-a-repeat.html",
              "sha256": "e4adf941a5d79f0f7fc6feaf314515170c5adb602af9e6c3e9ff2759d1143581"
            },
            {
              "file": "creepjs-b.html",
              "sha256": "eb71c33460513b488de133e5a5ded628111db63e24bce1d586016616a4425bde"
            }
          ]
        }
      ]
    },
    {
      "id": "ddos-guard",
      "name": "DDoS-Guard",
      "canvas_artifacts": 0,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "dingxiang",
      "name": "Dingxiang ConstID",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "f5-bigip",
      "name": "F5 BIG-IP",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "botd",
      "name": "Fingerprint BotD",
      "canvas_artifacts": 7,
      "status": "limited",
      "summary": "BotD 2.0.0 returned bot: false in both independent sessions.",
      "tests": [
        {
          "label": "Published BotD SDK, local fixture",
          "url": "https://github.com/fingerprintjs/BotD",
          "observations": [
            "Bot: [false, false] (A, B). No repeat-visit identity test; BotD returns a bot classification.",
            "The official linked demo returned HTTP 404. Evaluated the unmodified npm SDK in a locally served test page instead.",
            "SDK monitoring was disabled. This is a client-library result, not Fingerprint Pro Bot Detection."
          ],
          "metrics": {
            "bot": [
              false,
              false
            ],
            "sdk_version": "2.0.0",
            "sdk_sha256": "f438ed251dc7414ece9d4a2b6941441ad9ffae1a1905817f5f0c7366e701dd86",
            "official_demo_http_status": 404
          },
          "capture_digests": [
            {
              "file": "botd-sdk-a.html",
              "sha256": "6ea9c26734b576ddaf0197495cbc67920360323c0eabc1050175f4ebc1db253e"
            },
            {
              "file": "botd-sdk-b.html",
              "sha256": "6ea9c26734b576ddaf0197495cbc67920360323c0eabc1050175f4ebc1db253e"
            }
          ]
        }
      ]
    },
    {
      "id": "fingerprintjs",
      "name": "FingerprintJS / Fingerprint",
      "canvas_artifacts": 109,
      "status": "measured",
      "summary": "The same visitor ID was returned across both isolated sessions.",
      "tests": [
        {
          "label": "Fingerprint Pro public demo",
          "url": "https://demo.fingerprint.com/playground",
          "observations": [
            "Bot: not_detected, not_detected, not_detected (A, A repeat, B).",
            "Browser tampering: [false, false, false]; suspect score: [11, 11, 11]; virtual machine: [true, true, true] (A, A repeat, B).",
            "Visitor ID stable on repeat: true. Equal across independent sessions: true.",
            "Vendor demo on one shared direct connection. Not an evaluation of the open-source FingerprintJS library or every customer integration."
          ],
          "metrics": {
            "bot": [
              "not_detected",
              "not_detected",
              "not_detected"
            ],
            "tampering": [
              false,
              false,
              false
            ],
            "suspect_score": [
              11,
              11,
              11
            ],
            "virtual_machine": [
              true,
              true,
              true
            ],
            "visitor_id_stable_on_repeat": true,
            "visitor_id_equal_across_sessions": true
          },
          "capture_digests": [
            {
              "file": "fingerprint-a.html",
              "sha256": "1d07213eff0c927437b58c3d7505703e55290081355a907ecebb9e02cb31f152"
            },
            {
              "file": "fingerprint-a-repeat.html",
              "sha256": "f2b4d849d78acb2b34f141f2536b30a1fae13578bb006e5f4bb63fe9adead399"
            },
            {
              "file": "fingerprint-b.html",
              "sha256": "ccdd9fa1eec67824f056f046953b944eec1088f0ddfefca88a9de6610fdb601a"
            }
          ]
        }
      ]
    },
    {
      "id": "forter",
      "name": "Forter",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "haproxy-bot-management",
      "name": "HAProxy Bot Management",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "hcaptcha",
      "name": "hCaptcha",
      "canvas_artifacts": 28,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "perimeterx",
      "name": "HUMAN / PerimeterX",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "imperva-reese84",
      "name": "Imperva Reese84",
      "canvas_artifacts": 210,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "incognia",
      "name": "Incognia",
      "canvas_artifacts": 10,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "insurads",
      "name": "InsurAds",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "iovation",
      "name": "Iovation / TransUnion",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "ipmeta",
      "name": "IpMeta",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "kuaishou-riskmgt",
      "name": "Kuaishou RiskMgt",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "threatmetrix",
      "name": "LexisNexis ThreatMetrix",
      "canvas_artifacts": 293,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "liftdsp",
      "name": "LiftDSP",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "lunio",
      "name": "Lunio",
      "canvas_artifacts": 5,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "mailru",
      "name": "Mail.ru",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "maxmind",
      "name": "MaxMind",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "mgid",
      "name": "MGID",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "midasbuy-tdrc",
      "name": "Midasbuy TDRC",
      "canvas_artifacts": 3,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "multiple",
      "name": "Multiple vendors",
      "canvas_artifacts": 19,
      "status": "catalog_category",
      "summary": "A catalog attribution category, not an individually testable service.",
      "tests": []
    },
    {
      "id": "paypal-fraudnet",
      "name": "PayPal FraudNet",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "postman-polaris",
      "name": "Polaris SDK (Postman deployment)",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "qrator",
      "name": "Qrator",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "rambler-top100",
      "name": "Rambler Top100",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "raptor",
      "name": "Raptor SDK",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "scriptintel-visitorintel",
      "name": "ScriptIntel VisitorIntel",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "seon",
      "name": "SEON",
      "canvas_artifacts": 16,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "shape",
      "name": "Shape",
      "canvas_artifacts": 146,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "shein-antidevices",
      "name": "SHEIN AntiDevices",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "shopee",
      "name": "Shopee",
      "canvas_artifacts": 24,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "shopflo",
      "name": "Shopflo",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "shopify-perfkit",
      "name": "Shopify Perf Kit",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "shumei",
      "name": "Shumei",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "spider-af",
      "name": "Spider AF",
      "canvas_artifacts": 7,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "talsec-appicryptweb",
      "name": "Talsec AppiCryptWeb",
      "canvas_artifacts": 32,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "tencent-gdt",
      "name": "Tencent GDT / TDID",
      "canvas_artifacts": 3,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "tencent-qimei",
      "name": "Tencent Qimei",
      "canvas_artifacts": 2,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "thumbmarkjs",
      "name": "ThumbmarkJS",
      "canvas_artifacts": 64,
      "status": "measured",
      "summary": "Different identifiers across isolated sessions; stable on repeat visits.",
      "tests": [
        {
          "label": "Thumbmark public demo",
          "url": "https://www.thumbmarkjs.com/resources/demo/",
          "observations": [
            "Bot: [false, false, false]; danger level: [0, 0, 0] (A, A repeat, B).",
            "Visitor ID stable on repeat: true. Equal across independent sessions: false.",
            "Thumbmark stable on repeat: true. Equal across independent sessions: false.",
            "The vendor-hosted demo includes server-side signals. Different identifiers in this small run do not establish long-term unlinkability."
          ],
          "metrics": {
            "bot": [
              false,
              false,
              false
            ],
            "danger_level": [
              0,
              0,
              0
            ],
            "visitor_id_stable_on_repeat": true,
            "visitor_id_equal_across_sessions": false,
            "thumbmark_stable_on_repeat": true,
            "thumbmark_equal_across_sessions": false
          },
          "capture_digests": [
            {
              "file": "thumbmark-a.html",
              "sha256": "1e7f41537bff83c5717423de7c4032539f3bb7639da362091894103e05479ede"
            },
            {
              "file": "thumbmark-a-repeat.html",
              "sha256": "13bdc68e5f1c356ff1f81ca2f25244bd3e2bac0500d875b02d805fffc3680fcd"
            },
            {
              "file": "thumbmark-b.html",
              "sha256": "67456a5f67828575ecb9e8416bf0d6fd7400de75bdc6225044758ebe7bba910c"
            }
          ]
        }
      ]
    },
    {
      "id": "tiktok",
      "name": "TikTok WebMSSDK",
      "canvas_artifacts": 3,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "tinder-client-session",
      "name": "Tinder Client Session",
      "canvas_artifacts": 3,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "trustdecision",
      "name": "TrustDecision TrustDeviceJS",
      "canvas_artifacts": 6,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "turing-tdid",
      "name": "TURING / TDID SDK",
      "canvas_artifacts": 4,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "unclassified",
      "name": "Unattributed vendor",
      "canvas_artifacts": 254,
      "status": "catalog_category",
      "summary": "A catalog attribution category, not an individually testable service.",
      "tests": []
    },
    {
      "id": "verisoul",
      "name": "Verisoul",
      "canvas_artifacts": 7,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    },
    {
      "id": "yandex-smartcaptcha",
      "name": "Yandex SmartCaptcha",
      "canvas_artifacts": 1,
      "status": "not_evaluated",
      "summary": "No live REL evaluation recorded for this family.",
      "tests": []
    }
  ]
}
