{
  "generated_from": "https://saas-ranking.com/coding-assistants/cursor-coding",
  "disclaimer": "Every result describes what we found at the addresses we checked on the date given. It is not a statement about what the vendor does or does not have. The score is a public transparency score, not a product or security rating.",
  "snapshot": "r9.77332",
  "snapshot_run": 9,
  "score_version": "v1",
  "vendor": {
    "name": "Cursor",
    "domain": "cursor.com"
  },
  "category": {
    "slug": "coding-assistants",
    "name": "Coding assistants"
  },
  "score": 48,
  "band": "D",
  "measured": 12,
  "of": 12,
  "criteria": [
    {
      "key": "dpa",
      "name": "Data processing agreement",
      "weight": 3,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://cursor.com/legal/dpa",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://cursor.com/legal/data-processing-agreement",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/data-processing-agreement",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/data-processing-addendum",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/gdpr",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/trust/dpa",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/privacy/dpa",
          "result": "reached, no match (HTTP 200)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.847Z"
    },
    {
      "key": "subprozessoren",
      "name": "Subprocessor list",
      "weight": 3,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://cursor.com/legal/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/sub-processors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/sub-processors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/trust/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/privacy/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/subprocessor-list",
          "result": "reached, no match (HTTP 200)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.851Z"
    },
    {
      "key": "datenregion",
      "name": "Data location stated",
      "weight": 3,
      "result": "found",
      "source_url": "https://cursor.com/privacy",
      "addresses_checked": [
        {
          "url": "https://cursor.com/security",
          "result": "found, but behind a sign-in"
        },
        {
          "url": "https://cursor.com/trust",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/privacy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/privacy",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.854Z"
    },
    {
      "key": "statusseite",
      "name": "Status page with history",
      "weight": 2,
      "result": "found",
      "source_url": "https://status.cursor.com/",
      "addresses_checked": [
        {
          "url": "https://status.cursor.com/",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.856Z"
    },
    {
      "key": "preise",
      "name": "Public pricing",
      "weight": 2,
      "result": "found",
      "source_url": "https://cursor.com/pricing",
      "addresses_checked": [
        {
          "url": "https://cursor.com/pricing",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.857Z"
    },
    {
      "key": "zertifizierungen",
      "name": "Certifications named",
      "weight": 1,
      "result": "found",
      "source_url": "https://cursor.com/security",
      "addresses_checked": [
        {
          "url": "https://cursor.com/security",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.859Z"
    },
    {
      "key": "sla",
      "name": "Uptime SLA with a figure",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://cursor.com/legal/sla",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/sla",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/service-level-agreement",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/trust/sla",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/uptime",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/uptime-sla",
          "result": "reached, no match (HTTP 200)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.860Z"
    },
    {
      "key": "transport",
      "name": "HTTPS enforced with HSTS",
      "weight": 2,
      "result": "found",
      "source_url": "https://cursor.com/",
      "addresses_checked": [
        {
          "url": "http://cursor.com/",
          "result": "redirects to https://cursor.com/"
        },
        {
          "url": "https://cursor.com/",
          "result": "HSTS max-age=63072000"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.861Z"
    },
    {
      "key": "tracker_vor_einwilligung",
      "name": "No third-party tracking before consent",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://cursor.com/",
          "result": "third-party requests before any interaction: ad.doubleclick.net, analytics.roadwayai.com, analytics.tiktok.com, connect.facebook.net, ip.conceptualhq.com, ptht05hbb1ssoooe.public.blob.vercel-storage.com, sc-static.net, snap.licdn.com, www.google.com, www.googletagmanager.com, www.redditstatic.com"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.864Z"
    },
    {
      "key": "security_txt",
      "name": "security.txt (RFC 9116)",
      "weight": 1,
      "result": "found",
      "source_url": "https://cursor.com/.well-known/security.txt",
      "addresses_checked": [
        {
          "url": "https://cursor.com/.well-known/security.txt",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.870Z"
    },
    {
      "key": "subprozessor_meldung",
      "name": "Notice before subprocessors change",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://cursor.com/legal/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/sub-processors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/dpa",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://cursor.com/legal/data-processing-agreement",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/trust/subprocessors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/sub-processors",
          "result": "reached, no match (HTTP 200)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.870Z"
    },
    {
      "key": "datenschutzkontakt",
      "name": "Named privacy contact",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://cursor.com/legal/privacy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/privacy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/privacy-policy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/privacy-policy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/legal/privacy-notice",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/trust/privacy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://cursor.com/datenschutz",
          "result": "reached, no match (HTTP 200)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:41:02.871Z"
    }
  ],
  "details": [
    {
      "key": "datenregion",
      "name": "Hosting location named",
      "value": "european-economic-area",
      "subject": null,
      "quote": "For users in the European Economic Area, (“EEA”), when you access our Service, your personal data may be transferred to our United States servers to other countries outside the EEA and the UK.",
      "source_url": "https://cursor.com/privacy",
      "measured_on": "2026-09-06T01:41:02.855Z"
    },
    {
      "key": "datenregion",
      "name": "Hosting location named",
      "value": "united-states",
      "subject": null,
      "quote": "Anysphere processes your personal data for the purposes described in this Privacy Policy on servers located in various jurisdictions, including in the United States.",
      "source_url": "https://cursor.com/privacy",
      "measured_on": "2026-09-06T01:41:02.855Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "conceptualhq.com",
      "subject": null,
      "quote": "ip.conceptualhq.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "doubleclick.net",
      "subject": null,
      "quote": "ad.doubleclick.net",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "facebook.net",
      "subject": null,
      "quote": "connect.facebook.net",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "google.com",
      "subject": null,
      "quote": "www.google.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "googletagmanager.com",
      "subject": null,
      "quote": "www.googletagmanager.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "licdn.com",
      "subject": null,
      "quote": "snap.licdn.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "redditstatic.com",
      "subject": null,
      "quote": "www.redditstatic.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "roadwayai.com",
      "subject": null,
      "quote": "analytics.roadwayai.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "sc-static.net",
      "subject": null,
      "quote": "sc-static.net",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "tiktok.com",
      "subject": null,
      "quote": "analytics.tiktok.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "vercel-storage.com",
      "subject": null,
      "quote": "ptht05hbb1ssoooe.public.blob.vercel-storage.com",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.865Z"
    },
    {
      "key": "hsts_frist",
      "name": "HSTS max-age",
      "value": "63072000",
      "subject": null,
      "quote": "max-age=63072000",
      "source_url": "https://cursor.com/",
      "measured_on": "2026-09-06T01:41:02.862Z"
    },
    {
      "key": "zertifikat",
      "name": "Certification named",
      "value": "iso-27001",
      "subject": "erwaehnt",
      "quote": "# Certifications and third-party assessments Cursor holds AIUC-1, ISO/IEC 27001:2022, and ISO/IEC 42001:2023 certifications, along with a SOC 2 Type II attestation.",
      "source_url": "https://cursor.com/security",
      "measured_on": "2026-09-06T01:41:02.860Z"
    },
    {
      "key": "zertifikat",
      "name": "Certification named",
      "value": "soc-2",
      "subject": "unklar",
      "quote": "🛡 SOC 2 | ISO27001 | ISO42001 | AIUC-1 Certified 🌐 English ↓ English ✓ 简体中文 日本語 繁體中文 Español Français Port",
      "source_url": "https://cursor.com/security",
      "measured_on": "2026-09-06T01:41:02.860Z"
    },
    {
      "key": "zertifikat",
      "name": "Certification named",
      "value": "soc-2-type-2",
      "subject": "unklar",
      "quote": "sments Cursor holds AIUC-1, ISO/IEC 27001:2022, and ISO/IEC 42001:2023 certifications, along with a SOC 2 Type II attestation.",
      "source_url": "https://cursor.com/security",
      "measured_on": "2026-09-06T01:41:02.860Z"
    }
  ]
}