{
  "generated_from": "https://saas-ranking.com/design-prototyping/pencil",
  "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": "Pencil",
    "domain": "pencil.dev"
  },
  "category": {
    "slug": "design-prototyping",
    "name": "Design and prototyping"
  },
  "score": 35,
  "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://pencil.dev/legal/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/data-processing-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/data-processing-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/data-processing-addendum",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/gdpr",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/privacy/dpa",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.335Z"
    },
    {
      "key": "subprozessoren",
      "name": "Subprocessor list",
      "weight": 3,
      "result": "found",
      "source_url": "https://www.pen.dev/sub-processors",
      "addresses_checked": [
        {
          "url": "https://pencil.dev/legal/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/sub-processors",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.342Z"
    },
    {
      "key": "datenregion",
      "name": "Data location stated",
      "weight": 3,
      "result": "found",
      "source_url": "https://www.pen.dev/privacy-policy",
      "addresses_checked": [
        {
          "url": "https://pencil.dev/security",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/privacy-policy",
          "result": "found"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.346Z"
    },
    {
      "key": "statusseite",
      "name": "Status page with history",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://status.pencil.dev/",
          "result": "The name \"status.pencil.dev\" could not be resolved."
        },
        {
          "url": "https://pencil.dev/status",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev.statuspage.io/",
          "result": "Could not be fetched: fetch failed."
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.346Z"
    },
    {
      "key": "preise",
      "name": "Public pricing",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/pricing",
          "result": "reached and rendered, no match"
        },
        {
          "url": "https://pencil.dev/pricing/",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://pencil.dev/plans",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/en/pricing",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/pricing-plans",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.347Z"
    },
    {
      "key": "zertifizierungen",
      "name": "Certifications named",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/security",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust-center",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/compliance",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/security",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://trust.pencil.dev/",
          "result": "The name \"trust.pencil.dev\" could not be resolved."
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.348Z"
    },
    {
      "key": "sla",
      "name": "Uptime SLA with a figure",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/legal/sla",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/sla",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://pencil.dev/legal/service-level-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust/sla",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/uptime",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/uptime-sla",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.348Z"
    },
    {
      "key": "transport",
      "name": "HTTPS enforced with HSTS",
      "weight": 2,
      "result": "found",
      "source_url": "https://pencil.dev/",
      "addresses_checked": [
        {
          "url": "http://pencil.dev/",
          "result": "redirects to https://pencil.dev/"
        },
        {
          "url": "https://pencil.dev/",
          "result": "HSTS max-age=63072000"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.349Z"
    },
    {
      "key": "tracker_vor_einwilligung",
      "name": "No third-party tracking before consent",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/",
          "result": "third-party requests before any interaction: gc.zgo.at, pencildev-new.goatcounter.com, unpkg.com, www.pen.dev"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.350Z"
    },
    {
      "key": "security_txt",
      "name": "security.txt (RFC 9116)",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/.well-known/security.txt",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.351Z"
    },
    {
      "key": "subprozessor_meldung",
      "name": "Notice before subprocessors change",
      "weight": 2,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/legal/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/sub-processors",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://pencil.dev/legal/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/dpa",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/data-processing-agreement",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust/subprocessors",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/sub-processors",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.352Z"
    },
    {
      "key": "datenschutzkontakt",
      "name": "Named privacy contact",
      "weight": 1,
      "result": "not_found",
      "source_url": null,
      "addresses_checked": [
        {
          "url": "https://pencil.dev/legal/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/privacy-policy",
          "result": "reached, no match (HTTP 200)"
        },
        {
          "url": "https://pencil.dev/legal/privacy-policy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/legal/privacy-notice",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/trust/privacy",
          "result": "reached, no match (HTTP 404)"
        },
        {
          "url": "https://pencil.dev/datenschutz",
          "result": "reached, no match (HTTP 404)"
        }
      ],
      "note": null,
      "measured_on": "2026-09-06T01:34:23.352Z"
    }
  ],
  "details": [
    {
      "key": "datenregion",
      "name": "Hosting location named",
      "value": "european-economic-area",
      "subject": null,
      "quote": "PostHog is hosted in the United States. For users in the EEA/UK, we rely on appropriate transfer safeguards (Standard Contractual Clauses, and for the UK, the U",
      "source_url": "https://www.pen.dev/privacy-policy",
      "measured_on": "2026-09-06T01:34:23.346Z"
    },
    {
      "key": "datenregion",
      "name": "Hosting location named",
      "value": "united-states",
      "subject": null,
      "quote": "PostHog is hosted in the United States.",
      "source_url": "https://www.pen.dev/privacy-policy",
      "measured_on": "2026-09-06T01:34:23.346Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "goatcounter.com",
      "subject": null,
      "quote": "pencildev-new.goatcounter.com",
      "source_url": "https://pencil.dev/",
      "measured_on": "2026-09-06T01:34:23.351Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "pen.dev",
      "subject": null,
      "quote": "www.pen.dev",
      "source_url": "https://pencil.dev/",
      "measured_on": "2026-09-06T01:34:23.351Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "unpkg.com",
      "subject": null,
      "quote": "unpkg.com",
      "source_url": "https://pencil.dev/",
      "measured_on": "2026-09-06T01:34:23.351Z"
    },
    {
      "key": "drittanbieter",
      "name": "Third-party host on first load",
      "value": "zgo.at",
      "subject": null,
      "quote": "gc.zgo.at",
      "source_url": "https://pencil.dev/",
      "measured_on": "2026-09-06T01:34:23.351Z"
    },
    {
      "key": "hsts_frist",
      "name": "HSTS max-age",
      "value": "63072000",
      "subject": null,
      "quote": "max-age=63072000",
      "source_url": "https://pencil.dev/",
      "measured_on": "2026-09-06T01:34:23.350Z"
    },
    {
      "key": "subprozessor",
      "name": "Subprocessor named",
      "value": "google-cloud",
      "subject": null,
      "quote": "Google Cloud",
      "source_url": "https://www.pen.dev/sub-processors",
      "measured_on": "2026-09-06T01:34:23.345Z"
    },
    {
      "key": "subprozessor",
      "name": "Subprocessor named",
      "value": "sendgrid",
      "subject": null,
      "quote": "SendGrid",
      "source_url": "https://www.pen.dev/sub-processors",
      "measured_on": "2026-09-06T01:34:23.345Z"
    },
    {
      "key": "subprozessor",
      "name": "Subprocessor named",
      "value": "sentry",
      "subject": null,
      "quote": "Sentry",
      "source_url": "https://www.pen.dev/sub-processors",
      "measured_on": "2026-09-06T01:34:23.345Z"
    },
    {
      "key": "subprozessor",
      "name": "Subprocessor named",
      "value": "slack",
      "subject": null,
      "quote": "Slack",
      "source_url": "https://www.pen.dev/sub-processors",
      "measured_on": "2026-09-06T01:34:23.345Z"
    },
    {
      "key": "subprozessor",
      "name": "Subprocessor named",
      "value": "stripe",
      "subject": null,
      "quote": "Stripe",
      "source_url": "https://www.pen.dev/sub-processors",
      "measured_on": "2026-09-06T01:34:23.345Z"
    }
  ]
}