Skip to content
Privacy architecture

How we keep your code private

Privacy is not a promise — it's a verifiable architecture. Read every layer, audit every claim, hold us accountable.

Last updated: May 11, 2026

1. The four layers we built

Each layer is independently auditable. You can verify any claim below by reading our open-source scanner, our audit log, or our infrastructure docs.

  • Client-side scan via GitHub Actions — Scanner runs inside your CI runner. We receive only structured findings (file path, line, algorithm). Your source code never leaves your infrastructure.
  • Memory-only fallback (zero persistence) — When server-side processing is required, code stays in RAM, gets scanned, and the container is destroyed. No disk write, no logs, no caches.
  • Open-source scanner core — Scanner core is MIT-licensed on GitHub with reproducible builds. Compile it yourself and verify the hash matches what we run in production.
  • Audit log per access — Every internal access generates an audit entry visible to you. You see who looked at your findings, when, and why — with cryptographic hashes.

2. What we do NOT collect

By architecture, not by promise. The following data never enters our systems:

  • Your source code (only file paths, line numbers, and algorithm names from findings)
  • Your repository contents, branches, history, or commits
  • Your team members' personal data beyond what Clerk needs for authentication
  • Your billing information (Stripe handles cards directly — we never see them)
  • Your IP address tied to scan content (only aggregated for rate-limiting)

3. What we DO collect (and why)

Minimum necessary to run the product:

  • Findings metadata — file path, line number, algorithm name, severity. Used to render your scan report.
  • Aggregated anonymized patterns — e.g. "% of LATAM repos using RSA-2048". Powers Phase 1 dataset. Never linked back to a customer.
  • Account data — email (via Clerk), org name. Used for login and billing.
  • Audit log — every internal access (timestamp, actor, action). Visible to you, retained 12 months.

4. Your rights

Available now via your dashboard or by email:

  • Export — download all your findings and audit log as JSON or CSV.
  • Delete — wipe all your data on demand. We confirm deletion within 7 days.
  • Access — see who internally accessed your findings, when, and why.
  • Portability — CBOM CycloneDX 1.7 export coming Q2 2026.

5. Sub-processors

We use these third parties. Each is contractually bound to our privacy commitments:

  • Anthropic (Claude API) — LLM analysis. Code excerpts processed in memory, not logged by Anthropic per their data usage policy.
  • Neon (Postgres) — Findings metadata. EU + US regions. Encrypted at rest.
  • Clerk — Authentication only. No scan data.
  • Resend — Transactional email. No scan data in email body, only links.
  • Cloudflare R2 — Static asset hosting (reports). Encrypted, signed URLs only.
  • Vercel — App hosting. No scan data persisted at edge.
  • PostHog (self-hosted EU) — Anonymous analytics. No PII, no scan content.
  • Sentry — Error monitoring. PII scrubbed before send.

6. Phase 1 data-first stance

QuantumScan is free for all design partners through Phase 1 (until DORA enforcement window, ~Q3-Q4 2026). In exchange, we collect anonymized aggregated patterns from your scans to build the first LATAM cryptography benchmark dataset. You retain ownership of your scan data. Aggregated patterns can never be reverse-engineered back to your repos.

7. Compliance

Our roadmap is aligned with the regulations you must meet:

  • GDPR — Data controller in EU. DPA available on request.
  • LGPD — Brazilian data protection. Local representative on file.
  • DORA — Operational resilience reporting via PQC inventory.
  • NIS2 — Crypto-agility evidence for Article 21.
  • SOC 2 Type II — In progress, target Q4 2026.

Questions?

Email us. We answer within 1 business day. For DPA requests, mention "DPA" in the subject line.

privacy@quantumscan.io