{
  "generated_from": "https://saas-ranking.com/coding-assistants/factory",
  "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": "Factory",
    "domain": "factory.ai"
  },
  "category": {
    "slug": "coding-assistants",
    "name": "Coding assistants"
  },
  "score": 74,
  "band": "B",
  "measured": 12,
  "of": 12,
  "criteria": [
    {
      "key": "dpa",
      "name": "Data processing agreement",
      "weight": 3,
      "result": "found",
      "source_url": "https://factory.ai/legal/data-processing-agreement",
      "addresses_checked": [
        {
          "url": "https://factory.ai/legal/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/legal/data-processing-agreement",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.737Z"
    },
    {
      "key": "subprozessoren",
      "name": "Subprocessor list",
      "weight": 3,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://factory.ai/legal/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/sub-processors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/legal/sub-processors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/trust/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/privacy/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/legal/subprocessor-list",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.739Z"
    },
    {
      "key": "datenregion",
      "name": "Data location stated",
      "weight": 3,
      "result": "found",
      "source_url": "https://factory.ai/privacy-policy",
      "addresses_checked": [
        {
          "url": "https://factory.ai/security",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://factory.ai/trust",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/legal/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/privacy-policy",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.740Z"
    },
    {
      "key": "statusseite",
      "name": "Status page with history",
      "weight": 2,
      "result": "found",
      "source_url": "https://status.factory.ai/",
      "addresses_checked": [
        {
          "url": "https://status.factory.ai/",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.741Z"
    },
    {
      "key": "preise",
      "name": "Public pricing",
      "weight": 2,
      "result": "found",
      "source_url": "https://factory.ai/pricing",
      "addresses_checked": [
        {
          "url": "https://factory.ai/pricing",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.742Z"
    },
    {
      "key": "zertifizierungen",
      "name": "Certifications named",
      "weight": 1,
      "result": "found",
      "source_url": "https://factory.ai/security",
      "addresses_checked": [
        {
          "url": "https://factory.ai/security",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.743Z"
    },
    {
      "key": "sla",
      "name": "Uptime SLA with a figure",
      "weight": 1,
      "result": "found",
      "source_url": "https://factory.ai/legal/sla",
      "addresses_checked": [
        {
          "url": "https://factory.ai/legal/sla",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.744Z"
    },
    {
      "key": "transport",
      "name": "HTTPS enforced with HSTS",
      "weight": 2,
      "result": "found",
      "source_url": "https://factory.ai/",
      "addresses_checked": [
        {
          "url": "http://factory.ai/",
          "result": "redirects to https://factory.ai/"
        },
        {
          "url": "https://factory.ai/",
          "result": "HSTS max-age=63072000"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.746Z"
    },
    {
      "key": "tracker_vor_einwilligung",
      "name": "No third-party tracking before consent",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://factory.ai/",
          "result": "third-party requests before any interaction: analytics.twitter.com, api.claydar.com, cdn.claydar.com, ipapi.co, static.ads-twitter.com, static.claydar.com, t.co"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.747Z"
    },
    {
      "key": "security_txt",
      "name": "security.txt (RFC 9116)",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://factory.ai/.well-known/security.txt",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.748Z"
    },
    {
      "key": "subprozessor_meldung",
      "name": "Notice before subprocessors change",
      "weight": 2,
      "result": "found",
      "source_url": "https://factory.ai/legal/data-processing-agreement",
      "addresses_checked": [
        {
          "url": "https://factory.ai/legal/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/sub-processors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/legal/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/legal/data-processing-agreement",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.749Z"
    },
    {
      "key": "datenschutzkontakt",
      "name": "Named privacy contact",
      "weight": 1,
      "result": "found",
      "source_url": "https://factory.ai/privacy-policy",
      "addresses_checked": [
        {
          "url": "https://factory.ai/legal/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://factory.ai/privacy-policy",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:27:35.750Z"
    }
  ],
  "details": [
    {
      "key": "datenregion",
      "name": "Hosting location named",
      "value": "united-states",
      "subject": null,
      "quote": "The personal data we collect is primarily stored in our Amazon Web Services servers in US West. We process all data in the United States and in any data processing facilities operated by the third par...",
      "source_url": "https://factory.ai/privacy-policy",
      "measured_on": "2026-09-06T01:27:35.740Z"
    },
    {
      "key": "datenschutzkontakt_art",
      "name": "Privacy contact",
      "value": "data-protection-officer",
      "subject": null,
      "quote": "Data Protection Officer",
      "source_url": "https://factory.ai/privacy-policy",
      "measured_on": "2026-09-06T01:27:35.750Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "ads-twitter.com",
      "subject": null,
      "quote": "static.ads-twitter.com",
      "source_url": "https://factory.ai/",
      "measured_on": "2026-09-06T01:27:35.748Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "claydar.com",
      "subject": null,
      "quote": "api.claydar.com, cdn.claydar.com, static.claydar.com",
      "source_url": "https://factory.ai/",
      "measured_on": "2026-09-06T01:27:35.748Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "ipapi.co",
      "subject": null,
      "quote": "ipapi.co",
      "source_url": "https://factory.ai/",
      "measured_on": "2026-09-06T01:27:35.748Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "t.co",
      "subject": null,
      "quote": "t.co",
      "source_url": "https://factory.ai/",
      "measured_on": "2026-09-06T01:27:35.748Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "twitter.com",
      "subject": null,
      "quote": "analytics.twitter.com",
      "source_url": "https://factory.ai/",
      "measured_on": "2026-09-06T01:27:35.748Z"
    },
    {
      "key": "hsts_frist",
      "name": "HSTS max-age",
      "value": "63072000",
      "subject": null,
      "quote": "max-age=63072000",
      "source_url": "https://factory.ai/",
      "measured_on": "2026-09-06T01:27:35.746Z"
    },
    {
      "key": "sla_prozent",
      "name": "Uptime figure",
      "value": "99",
      "subject": null,
      "quote": "commercial efforts with the intent that Services will be available and operational to Customer for 99% of all Scheduled Availability Time.",
      "source_url": "https://factory.ai/legal/sla",
      "measured_on": "2026-09-06T01:27:35.745Z"
    },
    {
      "key": "zertifikat",
      "name": "Certification named",
      "value": "soc-2",
      "subject": "erwaehnt",
      "quote": "SOC 2 GPDR ISO 42001 CCPA Setting a new standard Factory is among the first organizations worldwide to ad",
      "source_url": "https://factory.ai/security",
      "measured_on": "2026-09-06T01:27:35.744Z"
    }
  ]
}