{
  "generated_from": "https://saas-ranking.com/knowledge-base/trainual",
  "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": "r7.74650",
  "snapshot_run": 7,
  "score_version": "v1",
  "vendor": {
    "name": "Trainual",
    "domain": "trainual.com"
  },
  "category": {
    "slug": "knowledge-base",
    "name": "Knowledge base and wiki"
  },
  "score": 30,
  "band": "E",
  "measured": 12,
  "of": 12,
  "criteria": [
    {
      "key": "dpa",
      "name": "Data processing agreement",
      "weight": 3,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/legal/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/data-processing-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/data-processing-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/data-processing-addendum",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/gdpr",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/privacy/dpa",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.973Z"
    },
    {
      "key": "subprozessoren",
      "name": "Subprocessor list",
      "weight": 3,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/legal/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/sub-processors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/sub-processors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/privacy/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/subprocessor-list",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.974Z"
    },
    {
      "key": "datenregion",
      "name": "Data location stated",
      "weight": 3,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/security",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/privacy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://trainual.com/privacy-policy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/compliance",
          "result": "found, but behind a sign-in"
        },
        {
          "url": "https://trainual.com/legal/privacy-policy",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": "We found this behind a sign-in, so it is not published openly.",
      "measured_on": "2026-09-05T05:01:31.975Z"
    },
    {
      "key": "statusseite",
      "name": "Status page with history",
      "weight": 2,
      "result": "found",
      "source_url": "https://status.trainual.com/",
      "addresses_checked": [
        {
          "url": "https://status.trainual.com/",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.976Z"
    },
    {
      "key": "preise",
      "name": "Public pricing",
      "weight": 2,
      "result": "found",
      "source_url": "https://trainual.com/pricing",
      "addresses_checked": [
        {
          "url": "https://trainual.com/pricing",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.978Z"
    },
    {
      "key": "zertifizierungen",
      "name": "Certifications named",
      "weight": 1,
      "result": "found",
      "source_url": "https://trainual.com/courses",
      "addresses_checked": [
        {
          "url": "https://trainual.com/security",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust-center",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/compliance",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.979Z"
    },
    {
      "key": "sla",
      "name": "Uptime SLA with a figure",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/legal/sla",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/sla",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/service-level-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust/sla",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/uptime",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/uptime-sla",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.982Z"
    },
    {
      "key": "transport",
      "name": "HTTPS enforced with HSTS",
      "weight": 2,
      "result": "found",
      "source_url": "https://trainual.com/",
      "addresses_checked": [
        {
          "url": "http://trainual.com/",
          "result": "redirects to https://trainual.com/"
        },
        {
          "url": "https://trainual.com/",
          "result": "HSTS max-age=31536000"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.984Z"
    },
    {
      "key": "tracker_vor_einwilligung",
      "name": "No third-party tracking before consent",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/",
          "result": "third-party requests before any interaction: 5078742.fs1.hubspotusercontent-na1.net, ajax.googleapis.com, api.intellimize.co, api.vector.co, app.revenuehero.io, assets.calendly.com, cc.swiftype.com, cdn-cookieyes.com, cdn.cr-relay.com, cdn.hightouch-events.com, cdn.intellimize.co, cdn.jsdelivr.net, cdn.prod.website-files.com, cdn.vector.co, cdnjs.cloudflare.com, client-registry.mutinycdn.com, d10lpsik1i8c69.cloudfront.net, d3e54v103j8qbb.cloudfront.net, directory.cookieyes.com, dna8twue3dlxq.cloudfront.net, extend.vimeocdn.com, fonts.googleapis.com, fonts.gstatic.com, forms-na1.hsforms.com, forms.hsforms.com, hubspotonwebflow.com, js.hsforms.net, loader.wisepops.com, log.cookieyes.com, log.intellimize.co, s.swiftypecdn.com, settings.luckyorange.net, static.mobilemonkey.com, tracking-api.g2.com, tracking.g2crowd.com, unpkg.com, us-east-1.hightouch-events.com, wisepops.net, www.google.com, www.gstatic.com"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.985Z"
    },
    {
      "key": "security_txt",
      "name": "security.txt (RFC 9116)",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/.well-known/security.txt",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.990Z"
    },
    {
      "key": "subprozessor_meldung",
      "name": "Notice before subprocessors change",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/legal/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/sub-processors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/data-processing-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/sub-processors",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.991Z"
    },
    {
      "key": "datenschutzkontakt",
      "name": "Named privacy contact",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://trainual.com/legal/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/privacy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://trainual.com/privacy-policy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/privacy-policy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/legal/privacy-notice",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/trust/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trainual.com/datenschutz",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-05T05:01:31.992Z"
    }
  ],
  "details": [
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "calendly.com",
      "subject": null,
      "quote": "assets.calendly.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "cdn-cookieyes.com",
      "subject": null,
      "quote": "cdn-cookieyes.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "cloudflare.com",
      "subject": null,
      "quote": "cdnjs.cloudflare.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "cloudfront.net",
      "subject": null,
      "quote": "d10lpsik1i8c69.cloudfront.net, d3e54v103j8qbb.cloudfront.net, dna8twue3dlxq.cloudfront.net",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "cookieyes.com",
      "subject": null,
      "quote": "directory.cookieyes.com, log.cookieyes.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "cr-relay.com",
      "subject": null,
      "quote": "cdn.cr-relay.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "g2.com",
      "subject": null,
      "quote": "tracking-api.g2.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "g2crowd.com",
      "subject": null,
      "quote": "tracking.g2crowd.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "google.com",
      "subject": null,
      "quote": "www.google.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "googleapis.com",
      "subject": null,
      "quote": "ajax.googleapis.com, fonts.googleapis.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "gstatic.com",
      "subject": null,
      "quote": "fonts.gstatic.com, www.gstatic.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "hightouch-events.com",
      "subject": null,
      "quote": "cdn.hightouch-events.com, us-east-1.hightouch-events.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "hsforms.com",
      "subject": null,
      "quote": "forms-na1.hsforms.com, forms.hsforms.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "hsforms.net",
      "subject": null,
      "quote": "js.hsforms.net",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "hubspotonwebflow.com",
      "subject": null,
      "quote": "hubspotonwebflow.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "hubspotusercontent-na1.net",
      "subject": null,
      "quote": "5078742.fs1.hubspotusercontent-na1.net",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "intellimize.co",
      "subject": null,
      "quote": "api.intellimize.co, cdn.intellimize.co, log.intellimize.co",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "jsdelivr.net",
      "subject": null,
      "quote": "cdn.jsdelivr.net",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "luckyorange.net",
      "subject": null,
      "quote": "settings.luckyorange.net",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "mobilemonkey.com",
      "subject": null,
      "quote": "static.mobilemonkey.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "mutinycdn.com",
      "subject": null,
      "quote": "client-registry.mutinycdn.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "revenuehero.io",
      "subject": null,
      "quote": "app.revenuehero.io",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "swiftype.com",
      "subject": null,
      "quote": "cc.swiftype.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "swiftypecdn.com",
      "subject": null,
      "quote": "s.swiftypecdn.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "unpkg.com",
      "subject": null,
      "quote": "unpkg.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "vector.co",
      "subject": null,
      "quote": "api.vector.co, cdn.vector.co",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "vimeocdn.com",
      "subject": null,
      "quote": "extend.vimeocdn.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "website-files.com",
      "subject": null,
      "quote": "cdn.prod.website-files.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "wisepops.com",
      "subject": null,
      "quote": "loader.wisepops.com",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "wisepops.net",
      "subject": null,
      "quote": "wisepops.net",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.987Z"
    },
    {
      "key": "hsts_frist",
      "name": "HSTS max-age",
      "value": "31536000",
      "subject": null,
      "quote": "max-age=31536000",
      "source_url": "https://trainual.com/",
      "measured_on": "2026-09-05T05:01:31.985Z"
    },
    {
      "key": "zertifikat",
      "name": "Certification named",
      "value": "soc-2",
      "subject": "anbieter",
      "quote": "When you move forward with an Enterprise plan, you can request access to all SOC 2 documentation.",
      "source_url": "https://trainual.com/courses",
      "measured_on": "2026-09-05T05:01:31.981Z"
    },
    {
      "key": "zertifikat",
      "name": "Certification named",
      "value": "soc-2-type-2",
      "subject": "anbieter",
      "quote": "‍ Trainual is also SOC 2 Type 2 certified .",
      "source_url": "https://trainual.com/courses",
      "measured_on": "2026-09-05T05:01:31.981Z"
    }
  ]
}