Skip to main content

๐Ÿงฑ SOC 2 Readiness

Purpose: surface what we already do that maps to SOC 2 Trust Services Criteria, what's missing, and what the realistic path looks like. Meant for internal use before engaging Vanta / Drata / an auditor.


What SOC 2 actually buysโ€‹

  • Credibility with B2B buyers, coaching academies, federation partners.
  • A structured excuse to formalise controls that we informally already do.
  • Shortens security questionnaires from clients by 80%.

What SOC 2 does not buyโ€‹

  • GDPR compliance (separate regime, but substantial overlap).
  • Better security on its own โ€” SOC 2 is documentation of controls, not a magic shield.
  • Fast turnaround. Expect 3โ€“6 months to a Type I, 6โ€“12 months to a Type II.

Trust Services Criteria โ€” where we standโ€‹

Rough self-assessment. ๐ŸŸข in place ยท ๐ŸŸก partial ยท ๐Ÿ”ด missing.

Security (CC โ€” Common Criteria, mandatory for all SOC 2)โ€‹

CCControlStatusEvidence / gap
CC1.1Board / leadership demonstrates integrity + ethical values๐ŸŸกValues documented informally; need a signed Code of Conduct
CC1.2Governance structure with oversight๐ŸŸกSmall team; governance is implicit. Doc it.
CC2.1Information security policy๐Ÿ”ดNo formal InfoSec policy yet โ€” draft required
CC2.2Internal comms re: security๐ŸŸขSlack #security channel, on-call rota
CC2.3External comms (customers, regulators)๐ŸŸขdpo@, privacy@, accessibility@ live
CC3.1Risk assessment process๐ŸŸกDPIA exists for privacy risk (compliance/dpia.md); need broader security risk register
CC3.2Identifies + analyses risk (fraud, IT)๐Ÿ”ดNot formal yet
CC4.1Ongoing monitoring๐ŸŸกFirebase + Google Cloud logging; no SIEM / alerting runbook
CC5.1Logical + physical access controls๐ŸŸขIAM on Firebase; no physical offices to secure
CC6.1Logical access โ€” authentication๐ŸŸขFirebase Auth; Sign in with Apple; 2FA on all admin accounts
CC6.2Prior to issuing credentials๐ŸŸขDeveloper onboarding checklist (informal) โ€” needs formalisation
CC6.3Access to data / functions๐ŸŸขFirestore + Storage rules; Cloud Function admin isolation
CC6.6Transmission + disposal of confidential info๐ŸŸขTLS 1.3 everywhere; Storage objects age-out at 30 days
CC6.7System boundaries๐ŸŸกArchitecture doc at architecture/overview.md โ€” needs a security-boundary overlay
CC6.8Malware protection๐ŸŸขN/A for server-side Cloud Functions; macOS devs use XProtect; no Windows machines
CC7.1Threat detection๐ŸŸกFirebase App Check available but not enforced on all callables
CC7.2Incident response๐ŸŸขcompliance/breach-response.md is the runbook
CC7.3System monitoring๐ŸŸกBasic Cloud Logging; no uptime pager for non-prod alerts
CC7.4Incident recovery๐ŸŸกBackup strategy relies on Firestore point-in-time recovery; not tested
CC7.5Security reviews๐Ÿ”ดNo recurring pen-test / security review cadence
CC8.1Change management๐ŸŸกGit + PR reviews; no formal change-advisory log
CC9.1Risk mitigation (identified risks)๐ŸŸกTracked in commit history; needs a risk register
CC9.2Vendor + sub-processor oversight๐ŸŸกSub-processor DPAs in flight (see compliance/dpas/)

Availability (optional category โ€” relevant for subscription SaaS)โ€‹

CriterionStatusGap
A1.1 Capacity planning๐ŸŸกFirebase auto-scales; RunPod pods autoscale; no documented capacity model
A1.2 Recovery objectives (RTO / RPO)๐Ÿ”ดNot defined
A1.3 Recovery testing๐Ÿ”ดNot performed

Confidentialityโ€‹

CriterionStatusGap
C1.1 Classification + restriction๐ŸŸขData classification implicit in Firebase rules + compliance docs
C1.2 Disposal๐ŸŸข30-day Storage aging + account-deletion cascade via deleteUserDocument

Processing Integrity + Privacyโ€‹

  • Processing Integrity: not a priority target โ€” our processing is not financial / transactional in the way SOC 2 PI intends.
  • Privacy: largely covered by the GDPR alignment and our privacy docs. If a customer asks for SOC 2 Privacy, we'll layer it on.

Gap remediation planโ€‹

Ordered by effort ร— impact.

  1. Formal InfoSec policy (CC2.1) โ€” 1-day doc, blocks several downstream items.
  2. Security risk register (CC3.1 + CC9.1) โ€” spreadsheet / Notion; quarterly review.
  3. Code of Conduct + acknowledgement (CC1.1) โ€” short doc, signed on hire.
  4. Change management log (CC8.1) โ€” GitHub issue template + release-notes discipline.
  5. App Check enforcement on all https.onCall endpoints (CC7.1) โ€” minor code change.
  6. Backup + recovery test (A1.3 + CC7.4) โ€” one scheduled exercise; document results.
  7. Security review cadence (CC7.5) โ€” either annual pen-test (~$8โ€“15k) or quarterly Dependabot + advisory review (free).
  8. SIEM / alerting on Cloud Logs (CC4.1 + CC7.3) โ€” lightweight: Cloud Logging log-based metrics โ†’ alerting policies.

Engagement path (when ready)โ€‹

  1. Pick a compliance automation platform: Vanta ($12โ€“20k/yr), Drata ($15โ€“25k/yr), Secureframe, or Thoropass. They connect to Firebase + GitHub + 1Password + Slack and auto-collect evidence.
  2. Remediate gaps over 1โ€“3 months using the platform's checklist.
  3. Engage a CPA firm for the attestation: PrescientAssurance, Sensiba, A-LIGN, Barr Advisory. Expect $8โ€“25k for Type I.
  4. Type I โ†’ Type II transition: six months of operational evidence = Type II readiness.

Current postureโ€‹

  • Ready for a security questionnaire: yes โ€” could answer 80% of a typical SaaS DDQ today from the docs in this directory.
  • Ready for a SOC 2 Type I attestation: no โ€” ~6โ€“8 weeks of remediation + platform setup needed first.
  • Should we start now: only if there is a specific B2B sale gated on SOC 2. Otherwise keep the readiness doc fresh and pull the trigger when revenue justifies the ~$25โ€“45k first-year spend.

Approver sign-offโ€‹

RoleNameDecisionDate
Founder / CEO(to assign)โ€”โ€”
Eng Lead(to assign)โ€”โ€”

Draft โ€” not yet approved.