Dana Okafor had read the email three times before she believed it. Priya Ramaswami, the engagement partner from Kestrel & Vance Assurance LLP, had sent it at 6:52 a.m. on a Tuesday, two weeks before fieldwork was supposed to wrap on Corsair Freight Analytics' first SOC 2 Type II examination: "We need to talk about your control language before we can finish testing. A number of items in your control matrix don't tie back to a specific criterion, and several can't be tested as written. Call me this morning."
Corsair Freight Analytics sold real-time freight visibility software to mid-market logistics brokers, and for eighteen months Dana's team had been chasing a single prize: a three-year, $4.2 million platform contract with Meridian Retail Group, a national retail chain that had made a clean SOC 2 Type II report — no qualifications, no scope exceptions — a non-negotiable condition of signature. Corsair's audit period had already been running for six months. There was no redoing it from scratch.
On the call, Priya was blunt but constructive. "Your team wrote forty-one 'control objectives,'" she said. "Some of them are really objectives — restated criteria in your own words, which is fine as narrative but tells me nothing about what you actually do. Others are controls, but they don't say who does them, how often, or what evidence exists. A few cover the same ground three different ways, and at least four criteria in your Common Criteria set have no control mapped to them at all. I can't opine on 'we take security seriously.' I need to see specific, testable statements tied to specific criteria."
Dana's predecessor had built the control matrix by lightly adapting language from a SOC 1 audit template a contractor had used at a previous job — a template built for internal control over financial reporting, where "control objectives" is the correct, load-bearing term. It read well. It also wasn't how SOC 2 works, and that mismatch was now sitting between Corsair and $4.2 million.
This is the single most common and most consequential misunderstanding in SOC 2 preparation, and it's the subject of this article: what a "control objective" actually means in the SOC 2 context, why the phrase is often used loosely and sometimes incorrectly, and — more usefully — exactly how to write control statements that map cleanly to the Trust Services Criteria, close gaps without creating overlaps, and survive an auditor's testing without a phone call like the one Dana got. If you haven't already read the SOC 2 Complete Guide to the AICPA Trust Services Criteria or the deeper walkthrough of SOC 2 Trust Services Criteria: Security, Availability, Processing Integrity, Confidentiality, Privacy, this article builds directly on that foundation.
Who This Is For / What You'll Walk Away With
This article is written for the compliance manager, security engineer, or founder who has been handed the job of building or fixing a SOC 2 control matrix and keeps hitting the same wall: knowing what to write down so it satisfies an auditor without either restating the criteria verbatim or drowning in vague generalities. You'll walk away with a precise, defensible answer to "what is a control objective in SOC 2, really?", a repeatable method for translating a Trust Services Criterion and its points of focus into a testable control statement, fifteen-plus reference tables you can adapt directly into your own control matrix, and a clear picture of the mistakes — gaps, overlaps, untestable language — that turn a routine Type II examination into a qualified opinion. If you manage the relationship with your audit firm, own a slice of the control environment, or are simply trying to understand why your auditor keeps asking "but what's the objective here?", this is written for you.
The Accuracy Nuance: SOC 2 Is Criteria-Based, Not "Control Objective"-Based
Here is the distinction that would have saved Dana six months of rework, and it deserves to be stated plainly before anything else in this article: SOC 2 does not have formal "control objectives" the way SOC 1 does.
In a SOC 1 examination under SSAE 18, "control objectives" are a defined, structural component of the engagement. Management writes a set of control objectives specific to the service being audited — statements like "controls provide reasonable assurance that payroll disbursements are accurate and authorized" — and then designs and operates controls that achieve each one. The auditor's opinion is literally an opinion on whether the controls were suitably designed and operating to achieve the stated objectives. Objectives are bespoke, service-specific, and written by management for that one engagement.
SOC 2 works differently. The AICPA's Trust Services Criteria — organized under the Common Criteria (Security, required in every engagement) and the four optional categories of Availability, Processing Integrity, Confidentiality, and Privacy — are fixed, predefined, and the same across every SOC 2 report in existence. You don't write them. You don't customize them. The criteria themselves are the objectives: they describe the outcomes a service organization's system must achieve. Your job as the service organization is not to invent objectives but to define and document the specific controls your organization operates to meet each criterion, and to do so in language precise enough that an auditor can test whether those controls actually operated.
This is why the phrase "SOC 2 control objectives" is so common in practitioner conversation — and why it's technically imprecise. People reach for it because "objective" is a natural word for "the thing a control is trying to achieve," and because SOC 1 language leaks into SOC 2 conversations constantly, given how often the two examinations are discussed side by side (see SOC 2 vs SOC 1 vs SOC 3: Understanding the SOC Framework Family). Used loosely, as shorthand for "what a control is meant to accomplish," the phrase does no harm. Used as a drafting template — where a team writes a document full of restated criteria and calls that the control matrix — it produces exactly the problem Corsair ran into: statements that describe outcomes but never specify the actual control activity, owner, frequency, or evidence an auditor needs to test.
Dimension | SOC 1 "Control Objectives" | SOC 2 Trust Services Criteria (function as the objectives) |
|---|---|---|
Who defines them | Management, bespoke per engagement | AICPA, fixed and predefined (TSC 2017, revised 2022 points of focus) |
Customization | Fully custom wording per service organization | Not customizable — same criteria text across all SOC 2 reports |
Subject matter | Internal control over financial reporting (ICFR) | Security and, optionally, availability, processing integrity, confidentiality, privacy |
Governing standard | SSAE 18, AT-C 320 | SSAE 18, AT-C 105 and AT-C 205, applying the 2017 TSC |
What management writes | The objectives themselves, plus controls to meet them | Controls only — criteria are pre-written; management maps controls to them |
Underlying framework | Tailored to the financial process in scope | Common Criteria mapped to COSO's 17 principles |
Auditor's opinion covers | Whether controls achieve management's stated objectives | Whether controls achieve the (fixed) criteria and points of focus |
Report audience | User entities' financial statement auditors | Customers, prospects, regulators, boards (broader trust audience) |
Typical error when confused | N/A (correct usage) | Treating restated criteria as if they were the deliverable, instead of writing actual controls |
The practical takeaway: when someone asks you for your "SOC 2 control objectives," the accurate response is to explain that the objectives are the Trust Services Criteria themselves — fixed, not authored by you — and that what you're building is a set of controls mapped to those criteria. That reframing changes how you write, and it's the difference between a control matrix an auditor can test and one that reads like a mission statement.
Where the Phrase "Control Objectives" Comes From — and Why It Persists
The confusion isn't random; it has a specific ancestry. Long before SOC 2 existed in its current form, SAS 70 (the predecessor to today's SOC reports) covered a single subject matter — controls relevant to financial reporting — and "control objectives" was the operative term throughout. When the AICPA split the SOC family into SOC 1, SOC 2, and SOC 3 in 2011, and introduced the Trust Services Criteria as the SOC 2 subject matter, a lot of the surrounding vocabulary carried over informally even though the underlying structure changed. Auditors who trained on SOC 1 engagements, consultants who worked across both report types, and RFP templates copied from one SOC family member to another all kept the phrase in circulation.
There's also a genuine linguistic gap SOC 2 practitioners are filling. "Trust Services Criteria" is a mouthful, and saying "we mapped our controls to the criteria" doesn't always land with a business audience the way "here are our control objectives" does. Sales engineers explaining a trust portal to a prospect, or a board member skimming a readiness deck, both intuitively understand "objective" as "what the control is supposed to accomplish." Used that way — as a plain-English gloss on "the outcome a criterion requires" — it's harmless shorthand, and you'll see it used loosely throughout the industry, including sometimes in this article's title itself, as an SEO-friendly stand-in for what practitioners are actually searching for.
Where it stops being harmless is in the drafting room. If your control matrix template has a column literally labeled "Control Objective" and your team fills it in by paraphrasing the criterion text — "Objective: logical access is restricted to authorized users" — you have produced a restatement of CC6.1, not a control. The auditor already has the criteria; restating them adds nothing testable. The column that matters is the one describing what your organization specifically does, who does it, how often, and what it leaves behind as evidence. That's a control statement, and it's the deliverable this article teaches you to write.
"I still hear 'what are your control objectives' in almost every SOC 2 kickoff call, and I don't correct it in the moment — it's not worth derailing the conversation. What I do correct, every time, is the control matrix itself. If a row just paraphrases a criterion, I flag it before fieldwork even starts, because that's the row that turns into a finding six weeks later." — Priya Ramaswami, CPA, Engagement Partner, Kestrel & Vance Assurance LLP
How the Trust Services Criteria Function as the Objectives
Once you accept that the criteria are fixed and non-negotiable, the useful question becomes: how, structurally, do they function as objectives that your controls have to satisfy? Each criterion is written as a broad, outcome-oriented statement — not a prescriptive instruction. CC6.1, for example, states that the entity implements logical access security software, infrastructure, and architecture over protected information assets to protect them from security events to meet the entity's objectives. Notice what's absent: it doesn't say which access control tool to use, what your password policy should require, or how often you should review access. That specificity is deliberately left to you, because the same criterion has to apply to a three-person startup and a 4,000-employee enterprise.
This is where the points of focus come in — the AICPA's own interpretive commentary, revised in 2022, that unpacks each criterion into more concrete considerations (covered in depth in the next section). Points of focus aren't themselves mandatory controls; they're a bridge between the abstract criterion and the specific control you'll design. Your job, in effect, is a three-step translation: read the criterion (the objective), consult the relevant points of focus (the interpretive guardrails), and then write a control statement describing exactly what your organization does that satisfies both. Skip the middle step and you tend to either under-shoot (a control too generic to be testable) or over-shoot (a control so narrowly tied to one tool that it breaks the moment you change vendors).
It helps to think of the relationship as criteria-to-controls being many-to-many, not one-to-one. A single criterion frequently requires more than one control to fully satisfy it — CC6.1 alone typically needs controls covering authentication, provisioning, and access review. Conversely, a single well-designed control often satisfies points of focus across multiple criteria at once — a centralized identity provider with enforced multi-factor authentication and single sign-on touches CC6.1, CC6.2, and CC6.3 simultaneously. Understanding this many-to-many structure is what lets you build a control matrix that's lean instead of bloated, and it's the subject of the mapping table later in this article.
Points of Focus: The Auditor's Interpretive Aid
Points of focus are the single most underused resource in SOC 2 preparation. The AICPA publishes them as part of the 2017 Trust Services Criteria (as revised in 2022 for points of focus relevant to security, availability, and confidentiality), and they exist specifically to help both management and auditors interpret what a criterion requires in practice — without turning the criteria themselves into an unwieldy checklist. They are not all mandatory in every circumstance; the framework explicitly allows management to determine that a particular point of focus is not relevant to their environment, provided that determination is documented and reasonable. What they are not is optional to consider — a control matrix built without reference to points of focus tends to miss dimensions of a criterion that auditors will ask about anyway. For the full catalog of Security-category requirements referenced throughout this section, see SOC 2 Security Criteria: Comprehensive Control Implementation and SOC 2 Common Criteria: Universal Requirements for All SOC 2 Reports — the Common Criteria (CC-series) shown below are mandatory in every SOC 2 report regardless of which optional categories you add.
Criterion | Example Points of Focus (illustrative selection) | What a Control Should Address |
|---|---|---|
CC1.1 – Control environment / integrity and ethical values | Sets tone at the top; establishes standards of conduct; evaluates adherence | Code of conduct, disciplinary process, board oversight of ethics |
CC2.1 – Internal communication | Communicates information to support the functioning of internal control | Security policy distribution, onboarding acknowledgment, policy portal |
CC3.2 – Risk identification and analysis | Identifies risks to objectives across the entity; considers fraud risk | Documented risk assessment methodology, fraud risk consideration, risk register |
CC5.2 – Control activities / technology controls | Determines dependency between business processes and technology | Technology asset inventory tied to business processes it supports |
CC6.1 – Logical access | Restricts access via authentication; manages points of access; protects credentials | MFA, least-privilege provisioning, credential vaulting |
CC6.2 – Access provisioning/deprovisioning | Registers and authorizes new users prior to granting access; removes access timely | Joiner/mover/leaver workflow with defined SLA for deprovisioning |
CC6.6 – Boundary protection | Restricts access via network segmentation; protects against unauthorized boundary access | Firewall rulesets, network segmentation, VPN/zero trust access |
CC7.2 – System monitoring | Implements detection policies and procedures; monitors for anomalies | SIEM alerting, defined detection use cases, on-call escalation |
CC8.1 – Change management | Authorizes, designs, tests, approves changes before implementation | Change advisory process, peer code review, deployment approval gates |
A1.2 – Availability / environmental protections | Monitors capacity; implements recovery infrastructure | Capacity alerting thresholds, backup and disaster recovery testing cadence |
The practical use of this table is as a starting checklist, not a finish line. For each criterion in your scope, pull the full published points of focus, mark which ones are relevant to your environment, and use each relevant point as a prompt: "what do we specifically do that addresses this?" If the honest answer is "nothing yet," you've found a gap before your auditor does — which is a far better place to find it. The CC3.2 row above draws directly from your organization's broader SOC 2 Risk Assessment Process; the CC5 rows draw from your SOC 2 Control Activities — both are worth reading alongside this article since control statements ultimately formalize what those upstream processes already identify as necessary.
Anatomy of a Strong Control Statement
A control statement is the sentence (or short paragraph) that goes in your control matrix describing what your organization actually does. It's the artifact your auditor tests, and it's what replaces the "control objective" language Dana's predecessor borrowed from a SOC 1 template. Every strong control statement contains five elements, and weak ones are almost always missing at least two of them.
Actor — who or what performs the control (a named role, team, or system — not "the company").
Action — the specific activity performed, stated as a verb ("reviews," "encrypts," "approves," "revokes").
Object — what the action is performed on (production access, customer data, deployment pipelines).
Frequency or trigger — how often, or the event that triggers it (quarterly, upon termination, prior to deployment).
Evidence — what artifact would prove the control operated (a ticket, a signed form, a system log, a report export).
Leave out the actor and the control is unassignable. Leave out frequency and an auditor cannot design a sample to test it. Leave out evidence and even a control that clearly operates becomes impossible to substantiate over a Type II period. The table below shows the same underlying control idea written weakly and then rewritten to include all five elements.
Criterion | Weak Control Statement (restates objective / untestable) | Strong Control Statement (testable) | Why It Works |
|---|---|---|---|
CC6.1 | "Access is restricted to authorized users." | "The IT Operations team provisions production system access via the identity provider only after a signed access request is approved by the requestor's manager and the resource owner; all production access requires MFA." | Names actor, action, object, trigger, and implies evidence (approval record, IdP config) |
CC6.2 | "We remove access when people leave." | "Upon receipt of a termination notice from People Ops, IT Operations disables the departing employee's accounts across all in-scope systems within 24 hours, logged in the offboarding ticket." | Specific trigger, named actor, measurable SLA, evidence artifact (ticket) |
CC7.2 | "We monitor our systems for security events." | "The Security Engineering team configures the SIEM to alert on defined high-risk event types (failed privileged logins, new admin role grants, disabled logging); on-call engineers triage alerts within one business hour per the incident response runbook." | Defines what "monitoring" means concretely, names actor, sets a measurable SLA |
CC8.1 | "Changes are reviewed before release." | "All production code changes require an approved pull request from a peer reviewer other than the author, and a passing automated test suite, before the Engineering Lead approves merge to the release branch." | Describes the actual mechanism (PR review + CI gate), not just the outcome |
A1.2 | "We back up our data regularly." | "The Platform team runs automated nightly backups of the production database to a geographically separate region, and Site Reliability Engineering performs a documented restoration test quarterly, logging results in the DR test log." | Frequency for both the control and its verification, named team, evidence trail |
CC1.1 | "Employees follow our code of conduct." | "All new hires acknowledge the Code of Conduct in the HR onboarding system before their start date, and HR re-issues acknowledgment annually to all active employees, tracked in the HRIS completion report." | Converts an aspiration into a measurable, recurring process with a system of record |
Notice a pattern: the strong versions never mention the criterion by name, and they don't need to — that mapping happens in a separate column of your control matrix, not inside the statement itself. A control statement should read like an internal procedure document, because in a well-run environment, that's essentially what it is. Writing the statement is only half the job, though — the underlying mechanism it describes also has to be well designed, not just well documented; see SOC 2 Control Design: Creating Effective Security Measures for how to evaluate whether the control itself, independent of how it's written up, is actually fit for purpose.
Mapping Example: Optional Categories (Availability, Processing Integrity, Confidentiality, Privacy)
The Security category isn't the only place this discipline applies. Every optional Trust Services Category has its own points of focus, and control statements for these categories follow the identical five-element structure — the mapping just points to a different criterion set.
Control ID | Control Statement (abbreviated) | Mapped Criterion | Category | Frequency |
|---|---|---|---|---|
AV-01 | SRE monitors production capacity against defined thresholds, alerts on-call at 80% utilization | A1.1 | Availability | Continuous |
AV-02 | Quarterly DR failover test performed and results logged | A1.3 | Availability | Quarterly |
PI-01 | Application enforces field-level input validation before accepting transaction data | PI1.1 | Processing Integrity | Continuous (per transaction) |
PI-02 | Finance team reconciles processed transaction totals against source system daily | PI1.4 | Processing Integrity | Daily |
C-01 | Data classification policy applied at ingestion; confidential records tagged and access-restricted automatically | C1.1 | Confidentiality | Continuous |
C-02 | Confidential data securely deleted via cryptographic erasure upon contract termination | C1.2 | Confidentiality | Event-triggered |
P-01 | Consent captured and timestamped at point of data collection via the consent management platform | P3.1 | Privacy | Continuous (per collection event) |
P-02 | Data subject access and deletion requests fulfilled within the committed SLA, logged in the DSR tracker | P4.2/P4.3 | Privacy | Per-request, SLA-tracked |
Building this table category by category — rather than assuming Security controls extend automatically — is exactly the discipline that would have saved HarborPoint Health six weeks of late-stage Privacy remediation, discussed in the case studies below.
Mapping Controls to Criteria: A Worked Example
With strong control statements in hand, the next skill is deliberate mapping — assigning each control to the criterion (or criteria) it satisfies, and doing so at the level of the point of focus rather than just the top-line criterion number. This is what your control matrix's mapping column should look like once it's audit-ready. The example below shows a slice of a matrix for the Security (Common Criteria) category, using controls from Corsair's eventual rebuild.
Control ID | Control Statement (abbreviated) | Mapped Criterion | Mapped Point(s) of Focus | Control Type | Frequency |
|---|---|---|---|---|---|
AC-01 | Production access granted via IdP after manager + owner approval, MFA enforced | CC6.1 | Restricts logical access; manages credentials | Continuous (on request) | |
AC-02 | Termination triggers deprovisioning within 24 hours across in-scope systems | CC6.2 | Removes access when no longer required | Preventive | Event-triggered |
AC-03 | Quarterly access review of production systems by resource owners, exceptions remediated within 5 business days | CC6.3 | Reviews access on a periodic basis | Quarterly | |
MO-01 | SIEM alerts on defined high-risk events; on-call triage within 1 hour | CC7.2 | Implements detection policies and procedures | Detective | Continuous |
CM-01 | Peer-reviewed pull request + CI test gate required before production merge | CC8.1 | Authorizes and tests changes prior to implementation | Preventive | Continuous (per change) |
VM-01 | Critical vulnerabilities remediated within 15 days of confirmed detection | CC7.1 | Detects and evaluates changes/vulnerabilities | Detective/Preventive | Continuous, SLA-tracked |
BC-01 | Nightly automated backups; quarterly restoration test | A1.2 | Maintains recovery infrastructure | Preventive/Detective | Nightly / Quarterly |
ET-01 | Annual Code of Conduct acknowledgment tracked in HRIS | CC1.1 | Sets standards of conduct; evaluates adherence | Preventive | Annual |
CH-01 | Vendor risk assessment completed before onboarding any subservice organization | CC9.2 | Assesses and manages risk from vendors and business partners | Preventive | Per-vendor, at onboarding |
A well-built matrix like this makes two things visible at a glance that a narrative document never will: which criteria have thin or no coverage, and which controls are pulling weight across more than one criterion. Both are essential for the gap-and-overlap analysis covered later in this article.
One Control, Multiple Criteria: Shared and Compensating Controls
Because points of focus often echo each other across criteria, a single well-designed control frequently satisfies more than one at once. Recognizing and documenting this — rather than writing a near-duplicate control for each criterion — is what keeps a control matrix lean. The table below shows common examples of controls that legitimately map to more than one criterion, plus the related but distinct concept of a compensating control: an alternative control that achieves the same intent as a missing or infeasible primary control.
Control | Primary Criterion | Also Satisfies | Why It's Shared, Not Duplicated |
|---|---|---|---|
Centralized IdP with enforced MFA and SSO | CC6.1 | CC6.2, CC6.3, CC6.6 | Authentication, provisioning, and boundary access all route through the same system |
Quarterly access review | CC6.3 | CC6.1 (validates least privilege) | One review evidences both "restricted access" and "periodically reviewed" |
Endpoint detection and response (EDR) tooling | CC6.8 (unauthorized software) | CC7.2 (monitoring) | Same telemetry source serves prevention and detection objectives |
Vendor risk assessment process | CC9.2 | CC6.1 (third-party access), P6.1 (if Privacy in scope) | One process evaluates security, access, and data-handling risk together |
Immutable audit logging with retention policy | CC7.2 | CC6.1, CC8.1 | A single logging control underpins detection, access accountability, and change traceability |
Compensating control example: manual dual-approval for a legacy system without SSO support | CC6.1 (intent: strong authentication) | — | Achieves the access-control intent of CC6.1 through a documented manual process where automated MFA isn't feasible |
The discipline here is to document the primary mapping for each control and explicitly note secondary criteria it also supports, rather than writing "AC-01b," a near-copy of AC-01, under a different criterion heading. Auditors read duplication as a signal that the control owner doesn't fully understand what the control does — which, ironically, is the opposite impression a bloated matrix is usually trying to create.
A Step-by-Step Process for Writing Control Statements
Corsair's rebuild, once Dana understood the actual assignment, followed a sequence that generalizes well to any organization starting from scratch or repairing a matrix under time pressure.
Step 1 — Confirm your scope. Before writing a single control, lock down which Trust Services Categories are in scope (Security is mandatory; decide on Availability, Processing Integrity, Confidentiality, Privacy based on customer commitments) and which systems, data flows, and locations fall inside the system boundary. Writing controls before scope is finalized guarantees rework — a lesson covered in more depth in SOC 2 Scope Definition: Determining What's In and Out.
Step 2 — Inventory what you already do. Most organizations under-credit their existing control environment. Interview each functional owner (IT, engineering, HR, facilities) about their actual day-to-day process before assuming a control needs to be built from nothing. This step alone often closes a third of apparent gaps — the control existed; it was just never written down.
Step 3 — Walk the criteria and points of focus systematically. For each in-scope criterion, work through the relevant points of focus (see the earlier table) and ask, for each one: do we have a control that addresses this, partially addresses it, or not at all? Log the answer regardless of outcome — "not applicable, documented rationale: X" is a legitimate and auditable answer for a point of focus that genuinely doesn't apply to your environment.
Step 4 — Draft the control statement using the five-element structure. Actor, action, object, frequency/trigger, evidence — as detailed in the anatomy section above. Draft in plain operational language, not audit-speak; if a new hire on the relevant team couldn't read the statement and recognize their own job, it's too abstract.
Step 5 — Map each control to its criterion (and secondary criteria). Use the mapping table structure shown earlier. This is also the point at which shared controls get identified and near-duplicates get merged.
Step 6 — Assign an owner and confirm evidence exists (or can be generated). A control with no accountable owner will not survive a Type II observation period. If the evidence a control statement implies doesn't actually exist yet as a system report, ticket type, or log, that's a build item, not a documentation problem.
Step 7 — Pressure-test with your auditor or a readiness assessor before fieldwork. This is the step Corsair skipped the first time. A short readiness review — even an internal one modeled on how an auditor reads a matrix — catches untestable language, gaps, and overlaps while there's still time to fix them (see SOC 2 Readiness Assessment: Pre-Audit Preparation Checklist).
"The teams that struggle aren't the ones with immature controls — plenty of early-stage companies have solid day-to-day practices. They struggle because nobody wrote down what they do in a way a stranger could test. Writing it down accurately is 80% of readiness." — Marcus Feld, Virtual CISO, Thornbury Advisory
Avoiding Gaps: Where Coverage Breaks Down
A gap is any relevant point of focus with no control mapped to it — and gaps are almost always found by an auditor doing exactly the systematic walk-through described in Step 3 above, whether or not you did it first. The most common gap patterns are predictable enough to check for deliberately.
Gap Pattern | Typical Cause | Where It Shows Up | How to Close It |
|---|---|---|---|
Criterion covered only "in spirit" | Team assumes a general practice (e.g., "we're security-conscious") counts without a specific control | CC1–CC2 (control environment, communication) | Write the specific mechanism: policy distribution system, acknowledgment tracking, training completion records |
New system added mid-period, controls not extended | Scope or architecture changed after the control matrix was finalized | Any criterion, most often CC6/CC7 | Re-run Step 3 whenever system boundary changes; treat scope changes as a trigger, not an annual event |
Vendor/subservice risk unaddressed | Assumed a SaaS vendor "handles security" without a formal assessment | CC9.2, sometimes CC3.2 | Formal vendor risk assessment process at onboarding and periodically thereafter |
Fraud risk not explicitly considered | Risk assessment focused only on external technical threats | CC3.2 (fraud risk is explicitly named in points of focus) | Add fraud risk as an explicit line item in the risk assessment methodology |
Privacy/Confidentiality controls assumed covered by Security | Team assumes CC-series controls automatically satisfy optional categories | P-series, C1.1 | Map optional-category points of focus separately; don't assume overlap without verifying |
Manual process with no evidence trail | Control operates correctly but leaves no record | Any criterion | Add a lightweight evidence artifact (ticket, checklist, log entry) even to processes that were previously undocumented habit |
Gaps found during fieldwork are far more expensive than gaps found during readiness — a gap found in month nine of a twelve-month Type II period may mean the control simply cannot have operated for a sufficient portion of the period, which is a different and harder problem than a documentation fix.
Avoiding Overlaps: When Redundant Controls Waste Resources
Overlap is the mirror problem: multiple controls mapped to the same point of focus with no meaningful difference between them, or one control artificially split into several rows to make the matrix look more thorough. Overlap doesn't usually cause audit findings the way gaps do, but it has real costs — every control in your matrix needs an owner, periodic evidence collection, and testing, so redundant controls multiply operational overhead without adding assurance.
Overlap tends to creep in through a few specific mechanisms: different teams independently documenting the same underlying process without realizing another team already had (common after a merger or reorg), a control matrix inherited from a template that wasn't tailored to the actual environment, or a well-meaning attempt to "show more coverage" by splitting one control into artificial sub-controls. The fix in each case is the same: during Step 5 of the mapping process, actively look for two or more controls whose actor, action, and object substantially overlap, and consolidate them into a single control statement with a documented secondary mapping — exactly as shown in the shared-controls table earlier in this article.
Testability: What Makes a Control Auditable
Every control statement should pass a simple test before it goes in the matrix: could someone who has never met your organization design a sample and a test procedure from this sentence alone? If the answer requires a phone call to clarify what "regularly" means or who "the team" refers to, the statement isn't ready. The table below shows how the five-element structure maps directly onto the kind of test procedure an auditor will actually perform during Type II fieldwork.
Control Element | What the Auditor Needs | Example Test Procedure |
|---|---|---|
Actor | A named role or system, not a vague collective | Confirm the individual/system named in the control statement performed the action in sampled instances |
Action | A specific, observable verb | Inspect evidence that the described action (approve, encrypt, revoke) actually occurred |
Object | The specific asset, data, or system affected | Verify the action was applied to the correct scope (e.g., production, not staging) |
Frequency/trigger | A defined cadence or event | Select a sample across the period (for Type II) and confirm each instance occurred within the stated timeframe |
Evidence | An artifact that exists independent of the control owner's say-so | Pull the ticket, log, signed form, or system report directly rather than relying on attestation |
This is also where Type I and Type II diverge in what "testable" requires. A Type I examination only needs to show the control was suitably designed as of a point in time — so a single instance of evidence may suffice. A Type II examination tests operating effectiveness across the full audit period, commonly three to twelve months, which means your control needs to have operated consistently and left evidence at each occurrence, not just once. Teams that write control statements with Type I assumptions ("we reviewed access") often discover during a Type II engagement that they can't produce four quarters of consistent evidence for a control they only ever ran once. For a deeper walkthrough of this distinction, see SOC 2 Type I vs Type II: Choosing the Right Audit Type.
The Evidence Chain: From Criterion to Proof
The relationship between a fixed criterion, the control you design to meet it, and the evidence that proves it operated is best understood as a chain — break any link and the whole thing fails an audit, no matter how strong the other links are.
flowchart LR
A["Trust Services Criterion\n(the fixed objective, e.g. CC6.1)"] --> B["Point(s) of Focus\n(interpretive guidance)"]
B --> C["Control Statement\n(actor + action + object + frequency)"]
C --> D["Control Owner\n(accountable role)"]
D --> E["Operating Instance\n(the control actually performed)"]
E --> F["Evidence Artifact\n(ticket, log, report, signed record)"]
F --> G["Auditor Test\n(sample selected & tested)"]
G --> H["Test Result\n(operating effectively / exception noted)"]
H --> I["Report Opinion\n(unqualified / qualified)"]Walk this chain backward whenever you're troubleshooting a weak spot in your matrix. If the auditor's test result is an exception, trace it back: was the evidence missing, was the operating instance inconsistent, was the control statement too vague for the owner to execute consistently, or did the point of focus never get mapped to a control in the first place? Most remediation plans go faster once the team can point to exactly which link broke instead of treating "the control failed" as one undifferentiated problem.
Case Study 1: Corsair Freight Analytics — Rebuilding a Matrix Mid-Audit Period
Back to Dana Okafor. With six months of the Type II observation period already elapsed and Priya's warning fresh, Corsair didn't have the luxury of starting the matrix over from a blank page — the controls that had actually been operating for those six months still needed to count, even if the documentation describing them was wrong. Dana's team spent eleven days on a targeted rebuild: they kept Step 2's inventory approach, interviewing every functional owner about what they actually did day to day, and then rewrote all forty-one entries using the five-element structure, mapping each to specific criteria and points of focus rather than restating criteria as objectives.
The rebuild surfaced four genuine gaps (no control had ever existed for CC9.2 vendor risk assessment, for instance — Corsair had onboarded a payment processor and a cloud logging vendor with no formal review) and consolidated nine pairs of near-duplicate controls into shared-control mappings, cutting the matrix from forty-one entries to thirty-two more precise ones. Because the underlying operational practices for most controls hadn't actually changed — only the documentation had — Priya's team was able to test the reworded controls against evidence retroactively for most of the elapsed period. The four genuine gaps became a documented remediation plan with a shortened observation sub-period, and Corsair's report shipped with an unqualified opinion nine weeks later than originally planned, but well inside Meridian Retail Group's contract deadline. The $4.2 million renewal closed the following month.
"We didn't need new controls for thirty-seven of the forty-one items — we needed the same controls described in a way that could actually be tested. That's a documentation project, not a security project, and once we reframed it that way the timeline stopped feeling impossible." — Dana Okafor, Director of Compliance & Risk, Corsair Freight Analytics
Case Study 2: NovaGrid Systems — When Overlap Hides a Real Gap
NovaGrid Systems, a fictional industrial IoT platform for energy-sector clients, entered its second annual SOC 2 Type II examination with a control matrix that had grown organically over three years to sixty-eight entries. On paper, coverage looked exhaustive. Elena Voss, NovaGrid's Head of Platform Security, had inherited the matrix from two predecessors and had never had time to rationalize it. During readiness testing, her team discovered that eleven of those sixty-eight controls were effectively describing the same access-review process from slightly different angles — one written by the original security hire, one added after a SOC 1-experienced consultant reviewed the matrix and added "objective" language, and several more split out per system rather than per process.
The redundancy wasn't just inefficient — it was actively hiding a real problem. Because so much attention had gone into the (redundant) access-review controls, nobody had mapped a control to CC7.3, evaluating security incidents to determine whether they represent failures. NovaGrid had an informal incident process, but it had never been written down or evidenced as a distinct control. Consolidating the eleven redundant entries into three genuinely distinct controls freed the team to spend their remaining readiness window building and evidencing the missing CC7.3 control before fieldwork began, rather than during it. NovaGrid's audit closed with an unqualified opinion and, per Elena's internal tracking, roughly 40% less quarterly evidence-collection effort going forward, since three well-scoped controls replaced eleven overlapping ones.
"The overlap wasn't a paperwork problem, it was a visibility problem. We were so busy maintaining eleven versions of the same access control that the team had genuinely stopped asking 'what are we NOT covering.' Trimming the matrix is what let us see the actual gap." — Elena Voss, Head of Platform Security, NovaGrid Systems
Case Study 3: HarborPoint Health — Mapping Privacy Controls Without Assuming Security Coverage
HarborPoint Health, a fictional patient-engagement SaaS platform, added the Privacy category to its SOC 2 scope for the first time after a large health-system customer required it contractually. Tobias Reyes, HarborPoint's GRC Manager, initially assumed that the organization's mature Security-category controls — strong access management, encryption, logging — would satisfy most Privacy points of focus by extension. His readiness self-assessment, built quickly against a deadline, mapped several Privacy criteria directly to existing Security controls without independently verifying the point-of-focus language.
The auditor's early-stage review disagreed. Privacy criteria like collecting personal information consistent with the entity's objectives, and providing notice about data practices, have no meaningful analog in the Security category at all — Security controls protect data that's already been collected, but say nothing about whether it was collected, used, retained, or disclosed appropriately in the first place. HarborPoint had never mapped a control to consent capture, data subject access requests, or retention-driven deletion. Tobias's team spent six weeks building and evidencing five new Privacy-specific controls — a consent management workflow, a documented data retention and deletion schedule, and a data subject request intake process among them — before the observation period for the Privacy category could credibly begin. The lesson he now builds into every new-category rollout: never assume an optional category is "mostly covered" by Security controls without independently walking its points of focus.
"Security and Privacy ask genuinely different questions. Security asks 'is this data protected.' Privacy asks 'should we even have this data, and did we tell people we'd collect it.' Those need their own controls — you can't inherit your way into Privacy coverage." — Tobias Reyes, GRC Manager, HarborPoint Health
Common Mistakes When Writing SOC 2 Control Statements
Across the three case studies above, and dozens of engagements like them, the same handful of mistakes recur. Naming them explicitly is often the fastest way to spot them in your own matrix.
Mistake | What It Looks Like | Consequence | Fix |
|---|---|---|---|
Restating the criterion as the control | "Objective: access is appropriately restricted" with no further detail | Auditor cannot test; treated as a gap | Rewrite using the five-element structure (actor, action, object, frequency, evidence) |
Borrowing SOC 1 "control objective" language wholesale | Matrix has an "Objective" column filled with paraphrased criteria and a thin "Control" column | Confuses reviewers, often duplicates the criteria column entirely | Drop the objective column for SOC 2; criteria are the objectives, map controls directly to them |
Vague ownership | "The team ensures..." with no named role | Nobody can produce evidence when asked; accountability gap | Name a specific role or title, not a department |
No defined frequency for Type II controls | "Reviewed periodically" | Auditor can't build a valid sample across the period | State exact cadence (monthly, quarterly) or the specific triggering event |
Assuming Security controls cover optional categories | Privacy/Confidentiality mapped to existing Security controls without independent review | Missing controls discovered late, as in the HarborPoint case | Walk points of focus for every in-scope category independently |
Splitting one control into many for "coverage optics" | Same process documented as 4–5 near-identical rows | Wasted evidence-collection effort, obscures real gaps | Consolidate into one control with documented secondary mappings |
No evidence artifact tied to the statement | Control describes an action with nothing produced to prove it happened | Type II testing has nothing to sample | Add or build a lightweight artifact (ticket, log, signed record) before claiming the control |
Matrix not updated after scope or system changes | New product line or vendor added, matrix untouched | New gap invisible until fieldwork | Treat scope changes as a mandatory trigger to revisit Step 3 |
Writing to impress rather than to be tested | Dense, jargon-heavy language that sounds thorough but is imprecise | Reviewer (or auditor) can't extract testable facts | Write so a new hire on that team could read it and recognize their own job |
RACI for Control Ownership
A control statement is only as strong as the accountability behind it. Beyond naming an actor in the statement itself, most mature SOC 2 programs formalize ownership with a RACI (Responsible, Accountable, Consulted, Informed) structure spanning the people who execute the control, the person accountable for it operating, and who needs visibility into results.
Activity | Control Owner (executes) | Compliance/GRC Lead | Engineering/IT Manager | Executive Sponsor |
|---|---|---|---|---|
Drafting the control statement | Consulted | Responsible | Consulted | Informed |
Mapping control to criteria/points of focus | Informed | Responsible | Consulted | Informed |
Executing the control day to day | Responsible | Informed | Accountable | Informed |
Collecting and storing evidence | Responsible | Accountable | Consulted | Informed |
Reviewing control performance quarterly | Consulted | Responsible | Accountable | Informed |
Remediating a control deficiency | Responsible | Consulted | Accountable | Informed |
Approving changes to the control matrix | Informed | Responsible | Consulted | Accountable |
Liaising with the audit firm during fieldwork | Consulted | Accountable | Informed | Informed |
Assigning this explicitly — even in a small organization where one person wears three of these hats — prevents the most common failure mode of Type II observation periods: a control that worked fine for the first two quarters and then quietly lapsed because the person who used to do it left, and nobody else knew they were supposed to pick it up.
Maturity Model for Control Statement Programs
Not every organization needs (or can afford) a fully automated, continuously monitored control environment on day one. It's useful to think of control-statement maturity as a staged progression, so you can honestly locate where you are and plan the next investment rather than trying to leap to Level 4 before your first audit.
Level | Characteristics | Typical Organization | Risk |
|---|---|---|---|
1 – Informal | Controls exist as tribal knowledge; nothing written down; no mapping to criteria | Pre-audit startups | High — nothing is testable, readiness assessment will surface everything as a gap |
2 – Documented | Control statements exist and are mapped to criteria, but evidence collection is manual and inconsistent | First-time Type I or early Type II | Medium — controls can pass Type I but may fail Type II operating-effectiveness testing |
3 – Managed | Control matrix is version-controlled, owners are assigned via RACI, evidence collected on a defined cadence | Second/third-year SOC 2 programs | Low-medium — occasional exceptions from human process gaps |
4 – Automated/Continuously Monitored | Evidence collection largely automated via GRC or continuous monitoring tooling; control matrix reviewed on every scope change | Mature, multi-framework compliance programs | Low — exceptions caught and remediated before the audit window closes |
5 – Optimized | Control performance data feeds back into risk assessment and design decisions; controls are periodically re-evaluated for continued relevance, not just re-tested | Enterprises running SOC 2 alongside ISO 27001 or other frameworks | Low — program actively improves rather than just maintaining status quo |
Most organizations preparing for their first SOC 2 report are honestly at Level 1 or 2, and that's fine — the goal of this article is to get you cleanly through Level 2 (documented, testable, mapped) before your first Type II fieldwork begins, not to skip straight to automation.
Tools That Help
Purpose-built GRC and compliance automation platforms have become common in SOC 2 programs specifically because they enforce a lot of the discipline this article describes — control-to-criteria mapping, evidence collection cadence, and ownership tracking — as software structure rather than tribal memory. They don't replace the judgment of writing a good control statement, but they remove a lot of the operational drag around maintaining one.
Tool Category | What It Does for Control Statements | Where It Falls Short |
|---|---|---|
GRC/compliance automation platforms | Pre-built criteria-to-control mapping libraries, automated evidence pulls from connected systems | Templated controls still need customization to reflect what your organization actually does |
Spreadsheet-based control matrix | Full flexibility, zero cost, easy to start | No automation, evidence collection and version control are entirely manual |
Ticketing/ITSM systems (repurposed) | Natural evidence trail for access requests, changes, incidents | Not purpose-built for criteria mapping; requires manual tagging discipline |
Identity governance platforms | Automates access review evidence directly for CC6.1–CC6.3 | Covers only the access-control slice of the matrix, not the full criteria set |
Document management/policy portals | Evidence for CC1/CC2 (policy communication, acknowledgment tracking) | Doesn't help with technical control evidence |
Whatever the toolset, the underlying discipline is the same: the tool stores and automates evidence for a control statement someone still had to think through and write correctly in the first place.
Roadmap: Building a Control Catalog on a Realistic Timeline
Teams building a control matrix for the first time consistently underestimate Step 3 (walking criteria and points of focus systematically) and overestimate how much of Step 2 (inventorying existing practice) they can skip. The timeline below reflects a realistic pace for a mid-market organization pursuing its first Type II report, working roughly half-time on this effort alongside other duties.
Phase | Duration | Key Activities | Exit Criteria |
|---|---|---|---|
Scope confirmation | Week 1–2 | Confirm TSC categories, system boundary, subservice organizations | Signed-off scope document |
Existing-practice inventory | Week 2–4 | Interview functional owners; catalog current-state practices | Draft inventory covering all major functions |
Criteria/points-of-focus walkthrough | Week 4–7 | Map each relevant point of focus to existing practice or flag as gap | Gap list finalized and prioritized |
Control statement drafting | Week 6–9 (overlaps prior phase) | Write five-element control statements; assign owners | Draft control matrix complete |
Gap remediation | Week 8–14 (varies by gap count) | Build missing controls, implement new processes/tooling | All identified gaps closed or formally risk-accepted |
Internal readiness review | Week 13–15 | Pressure-test matrix against auditor expectations; mock testing | Matrix validated as testable |
Evidence-collection cadence begins | Week 15 onward | Controls operate and generate evidence on their defined schedule | Consistent evidence for at least one full cycle before fieldwork |
Type II observation period | 3–12 months (per scope decision) | Controls operate continuously; auditor may perform interim testing | Full period elapsed with evidence intact |
Organizations under contractual deadline pressure — like Corsair — sometimes have to compress this timeline by running remediation and evidence collection in parallel rather than sequentially, which is workable but raises the risk of a scope note if a control genuinely can't demonstrate a long enough operating history by the report date.
Working With Your Auditor on Control Language
One of the more counterproductive habits in SOC 2 preparation is treating the auditor as an adversary to be managed rather than a resource to be used early. Auditors read hundreds of control matrices a year and can typically tell within the first ten rows whether a matrix was built with criteria-first thinking or backfilled from a template. Sharing a draft matrix for informal feedback before formal fieldwork — even outside a structured readiness assessment engagement — is standard practice at most audit firms and costs little beyond the conversation itself.
What auditors are specifically listening for when they review draft control language: whether the actor named in the statement is a real, identifiable role; whether the frequency stated is realistic given the organization's size (a two-person IT team claiming weekly manual review of forty systems invites scrutiny); and whether the evidence described actually exists as a discoverable artifact rather than an assumption. None of this requires guessing what your specific auditor wants — it requires applying the five-element structure honestly and being willing to say "we don't have that yet" rather than writing around a gap.
Keeping Control Statements Current
A control matrix is not a document you finish — it's a living artifact that has to track your actual environment or it silently becomes fiction. The most reliable trigger-based approach ties control matrix review to specific events rather than relying purely on an annual calendar reminder: a new system entering scope, a vendor change (especially one affecting the carve-out or inclusive method for a subservice organization), an org chart change affecting a named control owner, or a control deficiency identified through internal control self-assessment or a prior audit finding. Each of these should trigger a targeted re-walk of the affected criteria, not a full matrix rewrite — which keeps maintenance proportional and sustainable rather than a dreaded annual fire drill. For the operating-effectiveness side of this ongoing discipline, see SOC 2 Operating Effectiveness: Demonstrating Consistent Control Performance.
Related SOC 2 Reading
Control statements don't stand alone — they're one piece of a larger audit process. The table below points to where each adjacent topic is covered in depth elsewhere in this pillar.
If You Need To... | Read |
|---|---|
Understand how the finished control matrix shows up inside the auditor's report | |
Distinguish which controls are yours versus the customer's responsibility | SOC 2 Complementary Controls: Client Implementation Requirements |
Confirm your control statements are actually operating, not just documented | SOC 2 Operating Effectiveness: Demonstrating Consistent Control Performance |
Choose whether you need Type I or Type II before writing controls | |
Set the system boundary before mapping any controls | |
See how this control-mapping discipline carries over to a second framework |
Quick Reference: Evidence Checklist Before Fieldwork
Before a control statement goes into a matrix you'll hand to an auditor, it's worth running it against a simple evidence checklist — organized by the type of criteria it supports, since evidence artifacts tend to cluster by category. Use this as a final gate in Step 6 of the process described earlier.
Criteria Category | Typical Evidence Artifacts | Common Evidence Gap |
|---|---|---|
Common Criteria — Access (CC6) | IdP configuration exports, access request/approval tickets, quarterly access review sign-offs | Review happened verbally, never logged |
Common Criteria — Operations (CC7) | SIEM alert logs, incident tickets, vulnerability scan reports with remediation timestamps | Alerts triaged in chat with no ticket trail |
Common Criteria — Change Management (CC8) | Pull request approvals, CI/CD pipeline logs, change advisory board minutes | Emergency changes bypass the documented process undocumented |
Availability (A1) | Capacity monitoring dashboards/alerts, backup job logs, DR test reports | Backup jobs run but restoration is never actually tested |
Processing Integrity (PI1) | Input validation logs, reconciliation reports, error/exception queues | Reconciliation performed manually with no retained output |
Confidentiality (C1) | Data classification records, encryption configuration evidence, NDA execution records | Classification policy exists but isn't applied to actual data inventories |
Privacy (P1–P8) | Consent records, data subject request logs, retention/deletion schedules and execution logs | Deletion schedule documented but never actually executed or evidenced |
If a row in your matrix maps to a category above and you can't point to where its evidence artifact lives today, treat that as an open item — not a documentation gap to paper over, but a process gap to close before the observation period you're relying on begins.
SOC 2 Control Objectives as a Business Opportunity
It's tempting to treat this entire exercise — criteria, points of focus, five-element control statements, gap-and-overlap analysis — as pure audit overhead: work you do because a report is due, not because it creates value. That framing undersells what a genuinely well-mapped control matrix does for a business. A control matrix built the way this article describes is, in effect, an operational map of how your organization actually protects customer data and delivers on its commitments — readable by security-conscious prospects, useful during vendor due diligence calls, and reusable the moment you decide to pursue a second framework.
Corsair Freight Analytics didn't just close its $4.2 million renewal with Meridian Retail Group after the rebuild — Dana's team found that the rewritten, criteria-mapped matrix cut the average enterprise security questionnaire response time nearly in half, because sales engineers could now point directly to a specific, testable control statement instead of paraphrasing a vague policy on the fly. NovaGrid's consolidation work freed real engineering hours that had been spent maintaining redundant evidence trails. HarborPoint's Privacy build-out, done properly the first time, became the foundation for a second health-system contract that required the same category months later. None of these outcomes were the point of the audit — they were downstream effects of writing control statements precisely enough that they could be trusted, reused, and shown to a skeptical customer without hedging.
That's the real argument for taking the criteria-versus-objectives distinction seriously, and for investing the time in the five-element structure this article walks through: not because an auditor demands precision for its own sake, but because a precise, well-mapped control matrix is one of the most durable trust assets a service organization can build — one that pays off in every subsequent audit cycle, every customer security review, and every framework you add on top of SOC 2, including ISO 27001 if your growth trajectory takes you there (see Running ISO 27001 and SOC 2 Together and the ISO 27001, SOC 2 & NIST CSF Crosswalk for how the mapping discipline carries across frameworks).
If you're staring at a control matrix full of vague, criteria-paraphrasing "objectives" the way Dana was, the fix isn't a rewrite from panic — it's the same systematic process this article laid out: confirm scope, inventory what you already do, walk the criteria and points of focus deliberately, draft with the five-element structure, map explicitly, assign ownership, and pressure-test before an auditor does it for you. PentesterWorld's SOC 2 Trust Services Criteria Mapping Template and SOC 2 Control Matrix / RACI Template are built around exactly this structure, our SOC 2 Gap Analysis Tool helps you find the four-gap, eleven-overlap problems before your auditor does, and our SOC 2 Readiness Checklist walks the full pre-audit sequence step by step. If you're still building your team's shared vocabulary around terms like points of focus, CUECs, and operating effectiveness, the SOC 2 Glossary is a fast reference — and if you want a second set of eyes on your matrix before it reaches your auditor's desk, reach out to our team.
