back to the three assignments

assignment 1 · compliance operating ownership

Vanta Is Not the Audit

compliance, from zero to audit-ready

5:45 · walkthrough of the compliance research

The assignment

Understand how Vanta works. What gets set up and uploaded, what tests it runs, what evidence is needed to pass, and how compliance certification actually works end to end.

What I learned: How Vanta connects systems, runs tests, assigns evidence work, and why current-state checks are not the same as Type II audit proof.

Focus
Research and understanding
Subject
Vanta + audit evidence
Sources
~35, read in parallel, verified by hand
01

The gap I kept coming back to

I started with one question: when a company says it is SOC 2 compliant, what has actually been proven, and what has not?

The first distinction I had to get straight was between a live system check and an audit conclusion. Automated tests tell me what a system looks like right now. An audit asks whether people and systems did the right thing throughout the audit period. Those are different claims, and the useful work sits in the gap between them.

That difference ended up driving the whole assignment. Before I touched the tool, I needed the vocabulary to be exact.

SOC 2 = attestationnot a certificateISO = certificationGDPR = law

I had to get the labels right before I could talk about the tool. SOC 2 is an attestation: a licensed CPA firm examines controls against the AICPA Trust Services Criteria and issues an opinion. There’s no certificate and no pass/fail badge. A report can include testing exceptions and still carry a clean, unqualified opinion. ISO 27001 is a certification, issued by an accredited body on a three-year cycle with surveillance audits in between. GDPR and CCPA are laws. You don’t get certified against a law; you demonstrate compliance with it.

FrameworkWhat you getTime dimensionWhat proves it
SOC 2CPA opinion + reportType I: a date. Type II: a period.Populations, samples, assertion, system description
ISO 27001:2022Certificate from an accredited body3-year cycle + surveillanceISMS records, risk assessment, Statement of Applicability
ISO 27701Certificate (privacy management)Same cycle as 27001Processing inventories, DPAs, rights requests, retention
ISO 42001Certificate (AI management)Same cycleAI inventory, impact assessments, human oversight, providers
GDPR / CCPANothing , it is a legal dutyContinuousDPAs, SCCs, notices, rights-request logs, deletion records
one access review can support four of these five rows, but only if the mapping is real

One thing I didn’t want to lose from that table: ISO 27001:2022 has 93 reference controls in Annex A, but not all of them are mandatory. Applicability is decided by a risk assessment and recorded in the Statement of Applicability, including a written justification for anything excluded. The control set is driven by risk, not by a checklist.

02

What I found Vanta actually is

After working through Vanta’s product model, I’d describe it as a compliance-operations platform. It connects systems, pulls configuration, runs rules against it, organises controls and evidence, assigns the work to people, hosts the auditor handoff, and publishes a Trust Center. It isn’t the auditor, the CPA firm, or the certification body.

The mechanic I kept using to understand it is simple. A test takes a resource, applies exactly one rule, and returns pass or fail with a reason. MFA enabled on this account. Disk encryption on this volume. Review before merge on this repository. Access revoked for this leaver. This vulnerability past its deadline. Individual results roll up into a control, and controls map to framework requirements.

  1. Source systems

    AWS · Okta · GitHub · HRIS · MDM

  2. sync

    Typed resources

    one row per account, repo, device

  3. evaluate

    One rule per resource

    pass / fail + reason

  4. Human artifacts

    policies · minutes · risk decisions

  5. upload

    Documents & tasks

    owner · effective date · approval

  6. roll up

    Control

    aggregate status + named owner

  7. satisfies

    Framework requirement

    TSC · Annex A

  8. on fail

    Failing entity

    owner · SLA · remediation task

the evidence graph: machine data and human artifacts meeting at the control

Documents follow a similar path, except their states are human ones: Needs document, Needs update, OK, Not relevant, plus Due soon and Overdue. Each needs an owner, an effective date, and a description. Uploads can be automated through the API, but Vanta doesn’t read or evaluate the content of your Information Security Policy. It records that a file exists, who owns it, and when it was approved.

Connect

I’d start with the cloud and identity provider. Then device management, version control, and vulnerability scanning. HR and ticketing come next, because they prove joiners and leavers were handled on time.

Monitor

Vanta runs one rule per resource, continuously. Statuses include OK, NEEDS_ATTENTION, DEACTIVATED, IN_PROGRESS, INVALID, NOT_APPLICABLE. I read the failing entity, not just the aggregate colour.

Upload

Here I put what the tool can’t infer: policies, the risk assessment, pentest report, board minutes, vendor DPAs, training records, insurance, and the org chart.

Assign

Every control needs a named owner, and every failure category needs a deadline. Example SLAs are 7 days for critical issues, 30 days for medium, and 24 hours for employee offboarding.

Hand off

The auditor gets a scoped engagement, not tenant admin. I’d expect a Type I as-of date or Type II window, a request list, controlled evidence visibility, and populations.

And the catch

A Vanta access review marked “deny” starts remediation. It doesn’t revoke access in the source application. A passing test isn’t a fix.
03

Scope came before the tool

I started with the boundary, not with an integration: which legal entity, which products, which environments, which systems touch customer data, which people are in scope, and which vendors are subprocessors. Production is in scope; sandbox usually isn’t. If something can’t be integrated, it belongs in a manual-evidence list rather than quietly disappearing.

I kept the auditor early in the sequence for a blunt reason: the auditor decides what evidence is acceptable, not the platform. An audit firm’s own quick-start guide makes this point directly. Auditors often request different or additional evidence than the tool’s defaults, depending on which systems are integrated.

  1. 1

    Outcome

    which report, which period

  2. 2

    Scope

    entity, products, environments

  3. 3

    Auditor

    they define acceptable evidence

  4. 4

    Frameworks

    criteria and applicability

  5. 5

    Owners

    per control, per document

  6. 6

    Connect

    cloud + IdP, then the rest

  7. 7

    Operate

    tasks, policies, vendors, risks

  8. 8

    Hand off

    engagement, then Trust Center

Sequence of 8 pegged cards.

the order I used to avoid rework
04

The half I couldn’t get from a tool

This was the part I couldn’t reduce to an integration. For SOC 2 there are three central documents: the management assertion, the system description, and the controls matrix. Around them sit approved policies, the risk assessment, the penetration-test report, disaster-recovery test results, board and management review minutes, access-review records, vendor DPAs, training records, and insurance certificates.

No integration can prove those.

from the recording

Each one needs a human artifact with a date, an owner, and an approval. I kept noticing how quietly this material goes stale. Nothing fails loudly when a policy’s effective date drifts a year behind.

What makes a record strong, RATCC

Relevant

I can tie it directly to the control, not just to something nearby.

Attributable

It shows who performed, approved, or generated it.

Timely

It falls inside the required period, not merely close to it.

Complete

It covers the full scope and population, not only a convenient sample.

The fifth is Consistent: the record comes from a trustworthy, verifiable source. A dated export from the system of record passes. An undated screenshot, or a spreadsheet reconstructed after the fact, doesn’t.

05

I needed populations, not my best examples

This was the clearest difference between a Type II audit and a dashboard. The auditor doesn’t want my best examples. They want the complete population: every change in the window, every person who left, with the source, filters, and date range visible. Then they select the samples, not me.

A population listing that begins in March is unusable if the observation window began in January. That one mismatch is one of the most common ways a well-run program can still fail a control.

  1. Control frequency + period

    daily? quarterly? which window

  2. defines

    Complete population

    every event in the window

  3. must show

    Source, filters, date range

    shown, not asserted

  4. handed over whole

    Auditor selects sample

    independently

  5. then tested

    Inspect · reperform · analyse

  6. Conclusion, or exception

    deviations expand testing

the sampling path, with the auditor picking, not me
06

Where I could see it break

The failure modes weren’t philosophical. They were specific and technical, and three came up repeatedly:

The late approval

A change ticket approved after the deployment timestamp. The control says review precedes release, but the two timestamps say otherwise.

The invisible change

Infrastructure changed through CloudFormation, so it never appears in the ticket population. The population is incomplete before sampling even starts.

The service account

MFA is enforced for employees but not for service accounts. The dashboard is green because the rule only ever looked at humans.

Timing is another trap I had to keep separate from remediation. Fixing a problem before fieldwork improves the future, but it doesn’t erase a historical deviation inside the observation window. Type II asks what happened during the window, not only what is true today.

07

What I found on the public surface

Enterpret already has a running program. The report is dated and the certificates are live, so I didn’t see value in explaining its own evidence back to it. I focused instead on what a customer’s procurement team can see. Reading the public pages side by side gave me four reconciliation items. I’m reporting them as reconciliation items, not findings about control effectiveness.

  • Two live trust centres. A current Vanta-hosted portal and a still-live legacy Sprinto portal both return 200. The legacy surface publishes 46 controls; the current one publishes 78, in five categories, with no overlapping category names. That makes the old-to-new crosswalk the useful artifact.
  • The subprocessor list and the privacy policy disagree.The list shows seven US providers: AWS, OpenAI, Snowflake, Fireworks, PostHog, Anthropic, and TurboPuffer. Google isn’t among them, while a privacy policy names Google as an LLM provider. The DPA is authoritative, not the website; the issue is that two public pages disagree.
  • An AI-training contradiction with no version numbers.One document says customer data is never used for training or fine-tuning. Another describes sharing roughly 1% of anonymised feedback with OpenAI to fine-tune models. Neither carries a version or a date, so an external reader can’t tell which supersedes which.
  • ISO 27701 edition drift. The certificate is for the 2019 edition; the current standard is a standalone 2025 edition. That needs a transition plan agreed with the certification body before the next surveillance audit.

I don’t see these as gotchas. They’re exactly the kind of surface detail this role owns, and they cost almost nothing to fix once someone is looking.

08

The first artifact I would build

Given a completed migration from Sprinto to Vanta, I wouldn’t start with another dashboard. I’d start with a control-continuity ledger , one row per control, answering whether history carried across.

ColumnWhy it is there
Legacy control / resourceWhat the previous platform published
Current Vanta control / resourceIts counterpart today, if one exists
Framework requirementWhat the control is actually satisfying
Evidence typeAutomated test, or a manual artifact
OwnerA named person, not a team
Historical coverageWhich period the evidence actually spans
Last verifiedA date, so staleness is visible
Gap / actionAnything unmapped in either direction
every legacy item with no counterpart, and every new item with no history, gets an explicit row

I’d send two questions to the auditor alongside it: is the old-to-new mapping accepted, and which platform is the authoritative source of control history for the period under examination?

09

Costs and timelines, with honest labels

I treated these as India planning numbers rather than converting a US quote sheet. Where an India-facing provider published an INR band, I used it; where it did not, I marked the number as an inference or a scope-dependent planning example. Audit fee, readiness and remediation, tooling, and internal time are not interchangeable.

ItemPublished estimate / India planning range
SOC 2 Type I audit fee₹4–8 lakh (growth-stage, Security-only example)
SOC 2 Type II audit fee₹5.85–12.5 lakh (growth-stage, 1–2 criteria)
Penetration test / VAPT₹40,000–8.5 lakh / app; complex infra up to ₹25 lakh
Readiness / gap work₹4–12 lakh for assessment; remediation extra
GRC platform₹2.5–40 lakh / year; quote-led
Type II first-year total₹12–38 lakh (inferred at 2–3× the Type II audit fee)
Type II observation windowMinimum 3 months; commonly 6–12 months
First Type II end to end~7–10 months with a 6-month window; 9–15 months from scratch
ISO Stage 1 / Stage 2~1–2 + ~3–5 auditor-days for a small, simple scope
10

Where this connects to the third assignment

While working through the compliance problem, I kept seeing the same structure from the other end. A trust knowledge base where every claim is stored with its source, its owner, and a timestamp is exactly the shape a Type II audit needs. When an auditor samples month four, I either have a record with an author, an approver and an effective date, or I reconstruct it from memory. Only one of those passes.

The same structure catches the public contradictions above before a customer does, because two claims about the same subject with different values is a detectable condition rather than a thing someone happens to notice.

public claims

what the trust centre says

system behaviour

what production actually does

provable evidence

what survives a sample

the three things that should describe the same reality

The job is not to make the dashboard green.

the closing line of the recording

For me, the useful test is whether the company’s public claims, its actual system behaviour, and its provable evidence all describe the same thing.

the other two assignmentsA1 · public sources only