COF-C02 — Snowflake SnowPro Core Certification Exam Blueprint

Practical exam blueprint for the Snowflake SnowPro Core Certification (COF-C02), covering architecture, security, warehouses, data loading, performance, governance, sharing, and final-review readiness.

How to Use This Exam Blueprint

Use this independent Exam Blueprint as a practical study map for the Snowflake SnowPro Core Certification (COF-C02) from Snowflake. It is designed to help you turn broad exam areas into concrete review tasks.

For each row or checkbox, mark your status:

  • Green: you can explain it, choose the right option in a scenario, and recognize the relevant Snowflake SQL or object.
  • Yellow: you recognize it but still confuse edge cases or need notes.
  • Red: you would likely guess under exam pressure.

Do not treat this as an exact official weighting guide. Instead, use it to check readiness across the Snowflake platform concepts, administration tasks, SQL patterns, data loading workflows, performance decisions, security controls, and governance features that a Core-level candidate should be comfortable with.

COF-C02 readiness areas at a glance

Readiness areaWhat you should be able to explainWhat you should be able to doCommon weak spot
Snowflake architectureSeparation of storage, compute, and cloud servicesIdentify which layer handles a scenarioTreating warehouses as storage
Object hierarchyOrganization, account, database, schema, tables, views, stages, warehouses, rolesRead fully qualified object names and dependenciesForgetting schema-level privileges
Virtual warehousesSizing, auto-suspend, auto-resume, scaling, concurrencyChoose warehouse actions for workload symptomsConfusing scale up with scale out
Security and accessRole-based access control, grants, ownership, authenticationTroubleshoot why a user cannot query or operate an objectGranting table access without database/schema usage
Data loadingStages, file formats, COPY INTO, Snowpipe concepts, load historyPick the right loading path for batch or continuous ingestionIgnoring file format and error handling settings
Semi-structured dataVARIANT, OBJECT, ARRAY, path notation, FLATTENQuery nested JSON-like dataOverusing strings instead of VARIANT
SQL transformationsCTAS, INSERT, MERGE, views, streams/tasks conceptsSelect the right transformation artifactConfusing streams with stored data copies
PerformanceQuery profile, pruning, clustering, caching, warehouse sizingDiagnose slow queries from symptomsReaching for larger warehouses before query analysis
Cost and monitoringCredit drivers, warehouse runtime, resource monitors, usage viewsIdentify cost levers and observability artifactsForgetting idle warehouses and concurrency behavior
Data protectionTime Travel concepts, cloning, fail-safe concept, backup/recovery postureChoose recovery or cloning strategyMemorizing durations instead of understanding tradeoffs
GovernanceMasking policies, row access policies, tags, secure viewsChoose controls for sensitive data scenariosConfusing access control with data masking
Sharing and collaborationSecure data sharing, providers/consumers, shares, listings conceptsDecide when sharing is better than copyingAssuming shared data is physically duplicated

Snowflake architecture and object model

Core architecture checks

Be ready to explain Snowflake as a platform where storage, compute, and services are separated.

ConceptReady means you can answer
Storage layerWhere table data is persisted and managed independently from warehouses
Compute layerHow virtual warehouses execute queries, loads, and transformations
Cloud services layerHow metadata, authentication, optimization, access control, and coordination fit into the platform
ElasticityWhy compute can be resized or suspended without moving stored data
MetadataHow Snowflake uses metadata for optimization, pruning, object management, and administrative visibility
CachingDifference between result reuse, warehouse-level effects, and persistent storage
Micro-partitionsWhy Snowflake manages storage layout automatically and how pruning can improve query performance

Object hierarchy checklist

You should be able to describe the role of each object and where it fits.

  • Organization
  • Account
  • Database
  • Schema
  • Table
  • View
  • Materialized view, when relevant
  • Stage
  • File format
  • Pipe
  • Stream
  • Task
  • Warehouse
  • Role
  • User
  • Share
  • Resource monitor
  • Policy objects, such as masking or row access policies

Can you do this?

  • Explain why suspending a warehouse does not delete data.
  • Identify when a problem is likely caused by compute, storage design, access control, or data loading configuration.
  • Read a fully qualified name such as DATABASE.SCHEMA.OBJECT.
  • Explain why Snowflake does not require traditional manual index management for most table access patterns.
  • Distinguish cloning, sharing, replication concepts, and copying data.
  • Explain why metadata and object privileges matter in troubleshooting.

Security, identity, and access control

Security questions often test whether you can reason through role inheritance, object privileges, and least-privilege access.

Access control readiness table

TopicWhat to knowScenario cue
RBACUsers receive privileges through roles“User has access in one role but not another”
Role hierarchyRoles can be granted to other roles“Privilege should flow through a parent role”
Object ownershipOwners can manage object privileges“Who can grant access to this object?”
USAGE privilegeRequired on containers such as database/schema and warehouses“SELECT was granted but query still fails”
Warehouse privilegesRequired to use or operate compute“User can see table but cannot run query”
Future grantsApply privileges to objects created later“New tables are not visible to the reporting role”
Managed access schemasCentralize grant management at schema owner level“Object owner cannot grant in this schema”
Network policiesRestrict access by network source“Login allowed only from approved locations”
AuthenticationPassword, SSO, MFA, key pair, OAuth-style patterns as applicable“Choose secure programmatic access”
Data policiesMasking, row access, tags“Sensitive data must be conditionally visible”

Grant and role pattern recognition

You do not need to memorize every privilege combination, but you should recognize common grant patterns and troubleshoot missing privileges.

USE ROLE SECURITYADMIN;

CREATE ROLE analyst_ro;

GRANT USAGE ON DATABASE analytics TO ROLE analyst_ro;
GRANT USAGE ON SCHEMA analytics.marts TO ROLE analyst_ro;
GRANT SELECT ON ALL TABLES IN SCHEMA analytics.marts TO ROLE analyst_ro;

GRANT ROLE analyst_ro TO USER candidate_user;

Access troubleshooting checklist

When a user cannot query data, check in this order:

  1. Is the correct role active?
  2. Is the role granted directly or through a role hierarchy?
  3. Does the role have USAGE on the warehouse?
  4. Does the role have USAGE on the database?
  5. Does the role have USAGE on the schema?
  6. Does the role have object-level access such as SELECT?
  7. Is access affected by a masking policy, row access policy, secure view, or tag-based policy?
  8. Is authentication or network policy blocking the session?
  9. Are future grants needed for newly created objects?
  10. Is ownership or managed access schema behavior relevant?

Virtual warehouses, compute, and cost control

Warehouse decision table

If the scenario says…Think about…Avoid this trap
One large query is slowWarehouse size, query plan, pruning, joins, spillAssuming multi-cluster improves one query
Many users are queuedConcurrency, multi-cluster warehouse behavior, workload separationOnly increasing size without checking queueing
Cost is unexpectedly highAuto-suspend, warehouse runtime, workload scheduling, resource monitorsLooking only at storage cost
Dashboard is slow after inactivityAuto-resume delay, cache state, warehouse sizeAssuming data storage is the cause
ETL competes with BI usersSeparate warehouses by workloadUsing one warehouse for all workloads
Warehouse is running while idleAuto-suspend settings and session behaviorForgetting that running compute consumes credits
Load job needs more throughputDedicated warehouse, file layout, COPY behaviorBlaming only network or stage type

Compute cost reasoning

Be ready to reason directionally about credit consumption. If a rate table is provided in study material or a scenario, you should know how to apply it.

\[ \text{Estimated compute credits} = \text{warehouse credit rate} \times \text{active runtime} \times \text{active clusters} \]

Readiness checks:

  • Explain why a larger warehouse can finish work faster but may consume at a different credit rate.
  • Explain why auto-suspend and auto-resume matter for interactive workloads.
  • Distinguish warehouse size from multi-cluster scaling.
  • Know when to isolate workloads with separate warehouses.
  • Know how resource monitors help control or alert on credit usage.
  • Recognize that storage, compute, and cloud services usage are separate cost considerations.

Warehouse configuration pattern

CREATE OR REPLACE WAREHOUSE wh_reporting
  WAREHOUSE_SIZE = 'MEDIUM'
  AUTO_SUSPEND = 60
  AUTO_RESUME = TRUE;

Be ready to identify what each setting is intended to influence: compute capacity, idle behavior, and automatic startup.

Data storage, table design, and semi-structured data

Table and storage concepts

ConceptReady understanding
Permanent tablesDefault durable table type for persistent data
Transient tablesUseful where fail-safe-style protection is not required or is reduced by design
Temporary tablesSession-scoped working data
ClusteringHelps when natural micro-partition pruning is insufficient for selective queries
Clustering keyA design choice for large tables with repeatable filter patterns
Zero-copy cloneCreates a metadata-based copy for development, testing, or recovery workflows
Time Travel conceptEnables access to prior object states within configured retention behavior
Data retentionDepends on object type and configuration; understand conceptually rather than memorizing unsupported values

Semi-structured data checklist

Snowflake Core candidates should be comfortable with semi-structured data at the concept and query level.

  • Know when to use VARIANT.
  • Distinguish VARIANT, OBJECT, and ARRAY.
  • Parse nested JSON-like data using path notation.
  • Cast semi-structured values to expected SQL types.
  • Use FLATTEN to turn arrays into rows.
  • Explain why schema-on-read can help with flexible ingestion.
  • Identify when repeated casting or poor path filters may affect performance.
  • Choose between raw landing tables and curated relational tables.

Example pattern:

SELECT
  payload:event_type::string AS event_type,
  payload:user:id::string AS user_id,
  item.value:sku::string AS sku
FROM raw_events,
LATERAL FLATTEN(input => payload:items) item;

Data modeling readiness prompts

Can you explain the tradeoff?

ChoiceUse when…Watch for…
Keep raw JSON in VARIANTSource structure changes often or raw replay is valuableHarder downstream reporting if never curated
Flatten into relational columnsStable analytics and BI access are neededSchema changes require pipeline handling
Cluster a tableLarge table, repeatable selective filters, poor pruningMaintenance cost and unnecessary clustering
Clone dataNeed fast environment copy or recovery supportClones still depend on underlying retained data behavior
Create a viewNeed logical abstraction without storing resultComplexity and performance of underlying query
Create a materialized viewNeed precomputed result for suitable repeated access patternsMaintenance cost and eligibility constraints

Data loading, staging, and unloading

Loading workflow map

StepSnowflake artifact or actionReadiness question
Prepare source filesFile formatCan you define delimiters, compression, headers, null handling, or JSON settings?
Make files reachableInternal or external stageDo you know where the files are and how Snowflake accesses them?
Load to tableCOPY INTO <table>Can you handle errors, column mapping, and load history?
Automate ingestionSnowpipe or scheduled tasks where appropriateCan you decide batch vs continuous loading?
Validate resultsQuery table, load metadata, rejected rowsCan you find why a file did not load?
Unload dataCOPY INTO <location>Can you choose file format and target stage?

Stage and COPY pattern recognition

CREATE OR REPLACE FILE FORMAT ff_csv
  TYPE = CSV
  SKIP_HEADER = 1
  FIELD_OPTIONALLY_ENCLOSED_BY = '"';

CREATE OR REPLACE STAGE stg_sales
  FILE_FORMAT = ff_csv;

COPY INTO sales_raw
FROM @stg_sales/inbound/
ON_ERROR = 'CONTINUE';

Be ready to interpret:

  • Stage location and path.
  • File format definition.
  • Header handling.
  • Error behavior.
  • Whether files have already been loaded.
  • Whether data lands in raw, staging, or production tables.
  • Whether the load is manual, scheduled, or event-driven.

Data loading scenario checks

ScenarioBest readiness response
CSV load fails on date parsingCheck file format, target column type, date format assumptions, and rejected rows
Some files did not loadCheck path, file names, load history, prior load state, and permissions
Need near-continuous ingestionConsider Snowpipe-style ingestion concepts and event notification flow
Need simple nightly batch loadScheduled COPY INTO or task-driven workflow may be enough
Need to export query resultsUse COPY INTO to stage/location with appropriate file format
Need to load nested JSONLand into VARIANT, then transform or flatten as needed
Need to avoid bad records stopping all loadUnderstand validation and error handling options conceptually

SQL transformations and data pipelines

Transformation artifacts

Artifact or patternWhat it is used forExam-style decision cue
CREATE TABLE AS SELECTCreate derived table from query result“Build a new table from existing data”
INSERT INTO ... SELECTAppend transformed data“Load incremental transformed rows”
MERGEUpsert changed data“Update existing rows and insert new ones”
ViewLogical abstraction“Expose curated query without storing result”
Secure viewControlled exposure of data“Share or protect data access logic”
StreamTrack change data for a table“Process incremental changes”
TaskSchedule SQL work“Run transformation on a schedule or dependency”
Dynamic table conceptDeclarative pipeline-style transformation where applicable“Maintain transformed data based on query definition”
Stored procedureEncapsulate procedural logic“Need multi-step programmatic workflow”

MERGE pattern recognition

MERGE INTO dim_customer t
USING staged_customer s
  ON t.customer_id = s.customer_id
WHEN MATCHED THEN UPDATE SET
  t.email = s.email,
  t.updated_at = s.updated_at
WHEN NOT MATCHED THEN INSERT
  (customer_id, email, updated_at)
VALUES
  (s.customer_id, s.email, s.updated_at);

Be ready to identify when MERGE is more appropriate than append-only insert.

Stream and task readiness

  • Explain that a stream represents change tracking metadata, not a full independent copy of the table.
  • Know why tasks need compute to execute.
  • Recognize dependency chains between tasks.
  • Understand that incremental processing requires careful handling of successful and failed runs.
  • Know when a simple scheduled query is enough versus when change tracking is needed.

Performance tuning and query troubleshooting

Query diagnosis table

SymptomLikely areas to inspectPossible action
Query scans much more data than expectedFilters, clustering, micro-partition pruning, data typesRewrite filters, review clustering strategy
Query spills or joins are expensiveJoin order, join keys, warehouse size, data skewTune SQL, adjust warehouse, reduce intermediate data
Dashboard slow only at startWarehouse auto-resume, cache stateTune warehouse behavior or dashboard pattern
Many queries queuedConcurrency and warehouse loadSeparate workloads or use scaling strategy
Query fast on second runResult cache or warehouse cache effectsDo not assume base query is optimized
Load transformation slowFile sizes, transformation SQL, warehouse, target table designIsolate load compute and review COPY/SQL profile
Search by selective text or point lookupsSearch optimization or specialized design may be relevantKnow when standard pruning may not be enough

Slow-query decision path

    flowchart TD
	    A[Slow query] --> B{Queued before running?}
	    B -->|Yes| C[Check warehouse load, concurrency, workload isolation]
	    B -->|No| D{Scanning too much data?}
	    D -->|Yes| E[Check filters, clustering, partition pruning, data types]
	    D -->|No| F{Expensive joins or spill?}
	    F -->|Yes| G[Review join logic, intermediate rows, warehouse size]
	    F -->|No| H{Repeated dashboard or point lookup?}
	    H -->|Yes| I[Consider caching behavior, materialized view, search optimization, query rewrite]
	    H -->|No| J[Use query profile and history views to isolate bottleneck]

Performance traps

  • Assuming a bigger warehouse always fixes poor SQL.
  • Assuming multi-cluster warehouses speed up one long-running query.
  • Ignoring query profile evidence.
  • Filtering on expressions that reduce pruning effectiveness.
  • Casting data repeatedly instead of modeling curated columns.
  • Letting BI dashboards run broad SELECT * queries.
  • Confusing result cache speed with underlying query efficiency.
  • Clustering small or unsuitable tables unnecessarily.
  • Mixing heavy ETL and interactive BI on the same warehouse without reason.

Data protection, governance, and recovery concepts

Protection and recoverability checklist

ConceptReady means you can…
Time Travel conceptExplain recovery of prior data/object state within configured retention behavior
Fail-safe conceptDistinguish platform-level recovery concept from user-driven Time Travel
CloningExplain fast metadata-based copies for dev/test/recovery workflows
Undrop conceptRecognize recovery workflows for dropped objects when supported by retention
Replication/failover conceptsUnderstand cross-region or cross-account resiliency at a conceptual level
Backup postureExplain why Snowflake recovery features are not the same as arbitrary backup design
Object dependenciesConsider views, grants, policies, and downstream objects during recovery

Governance controls

RequirementSnowflake control to consider
Hide sensitive column values based on roleMasking policy
Filter rows based on user or role contextRow access policy
Classify or label dataTags and classification-related workflows
Share data while protecting logicSecure views or secure objects where appropriate
Track access patternsAccess history or usage metadata where available
Separate dutiesRole design and ownership model
Enforce least privilegeGrants, role hierarchy, managed access schemas

Governance scenario prompts

  • A support analyst can query a table but should see masked customer identifiers. What control fits?
  • Regional managers should see only rows for their region. What control fits?
  • A data product is shared externally but should not expose underlying table details. What design choices matter?
  • A new sensitive column was added. How should tags, policies, and grants be reviewed?
  • A developer cloned production data into a test database. What masking or access implications should be checked?

Data sharing and collaboration

Sharing readiness table

TopicReady understanding
Secure data sharingShare governed access to data without traditional file copying
ProviderAccount that makes data available through a share/listing-style mechanism
ConsumerAccount that accesses shared data
Reader account conceptEnables access patterns for consumers without their own full Snowflake account in some scenarios
Secure viewsHelp control exposed logic and data shape
Marketplace/listing conceptsWays data products may be discovered or distributed
Shares vs copiesShared data is not the same as exporting and duplicating files
PrivilegesSharing requires correct object grants and share configuration

Sharing decision checks

If the requirement is…Consider…
Give another Snowflake account live access to selected dataSecure data sharing
Send data to a non-Snowflake system as filesUnload to stage or external location
Share only aggregated resultsSecure view or curated shared object
Let consumer join shared data with their own dataShare database access pattern
Prevent accidental exposure of base tablesSecure object design and least privilege
Maintain separate physical copy for downstream systemExport/copy pipeline rather than share

Monitoring, metadata, and administration

Metadata and observability artifacts

Be ready to recognize what kind of question each metadata source can answer.

Need to know…Look for concepts such as…
What queries ranQuery history
Who accessed dataAccess history or audit-related views where available
Warehouse load and queuesWarehouse load/history views
Credit usageUsage and metering views
Load resultsCopy/load history
Task execution statusTask history
Object definitionsSHOW, DESCRIBE, GET_DDL, Information Schema
Grants and privilegesSHOW GRANTS patterns
Storage consumptionStorage usage metadata
Failed login or session patternsLogin/session history concepts

Administration checks

  • Know which built-in roles are commonly associated with account administration, security administration, system administration, and user-level activity.
  • Understand why production work should not default to the most powerful role.
  • Know how to inspect grants on users, roles, and objects.
  • Understand account parameters at a conceptual level.
  • Know how resource monitors support cost governance.
  • Remember that some account usage views may not be real-time.
  • Distinguish SHOW commands from account usage views and information schema views.
  • Know when object ownership matters for administrative actions.

SQL and command readiness checklist

You should recognize the purpose of common Snowflake SQL patterns even if the exam scenario does not require writing full syntax from memory.

ActionCommand or pattern to recognize
Select active role or warehouseUSE ROLE, USE WAREHOUSE
Create computeCREATE WAREHOUSE
Change warehouse behaviorALTER WAREHOUSE
Create database or schemaCREATE DATABASE, CREATE SCHEMA
Create table from queryCREATE TABLE AS SELECT
Create external or internal staging patternCREATE STAGE
Define file parsing rulesCREATE FILE FORMAT
Load files into tableCOPY INTO <table>
Unload query or table dataCOPY INTO @stage
Grant privilegesGRANT ... TO ROLE
Inspect privilegesSHOW GRANTS
Inspect objectsSHOW, DESCRIBE, GET_DDL
Query semi-structured dataPath notation, casts, FLATTEN
Upsert dataMERGE
Track changesCREATE STREAM
Schedule SQLCREATE TASK
Create governed viewCREATE SECURE VIEW
Apply data governance policyMasking or row access policy patterns

Can you do this? Core readiness checklist

Architecture and platform

  • Explain Snowflake’s separation of storage, compute, and services.
  • Identify which warehouse is used for a query.
  • Explain why multiple workloads may use separate warehouses against the same data.
  • Distinguish database objects from compute objects.
  • Explain micro-partition pruning at a high level.
  • Explain how cloning differs from copying.
  • Explain why Snowflake metadata is important for optimization and administration.

Security

  • Build a least-privilege access path for a reporting role.
  • Troubleshoot missing database, schema, table, or warehouse privileges.
  • Explain role inheritance.
  • Identify when future grants are needed.
  • Know when managed access schemas affect grant management.
  • Choose masking or row access policies for sensitive data requirements.
  • Recognize authentication and network access controls.

Data loading and transformation

  • Choose between batch load and continuous ingestion concepts.
  • Define what a stage and file format are used for.
  • Interpret a COPY INTO command.
  • Explain load error handling at a conceptual level.
  • Query data from a VARIANT column.
  • Use FLATTEN for arrays.
  • Choose MERGE for upsert-style changes.
  • Explain streams and tasks at a Core level.

Performance and operations

  • Read query symptoms and choose the next diagnostic step.
  • Distinguish scale up from scale out.
  • Explain why query queueing happens.
  • Identify cost levers for warehouses.
  • Explain auto-suspend and auto-resume.
  • Know when clustering may help.
  • Know when caching may mislead performance testing.
  • Use history and metadata views conceptually for troubleshooting.

Governance, protection, and sharing

  • Choose a recovery approach using Time Travel or cloning concepts.
  • Explain the difference between sharing and copying data.
  • Identify provider and consumer roles in secure data sharing.
  • Select secure views or policies for controlled data exposure.
  • Explain how tags support governance workflows.
  • Consider grants and policies when sharing or cloning data.

Scenario and decision-point practice

Use these prompts to test whether you can reason like a Snowflake SnowPro Core candidate.

Scenario cueWhat you should check or decide
User has SELECT on a table but query failsConfirm active role, warehouse usage, database usage, schema usage, and table privilege
New tables are not visible to an analyst roleReview future grants or object ownership/grant process
A warehouse runs all weekend with no usersReview auto-suspend, sessions, tasks, and monitoring
A single complex query is slowUse query profile, check scan volume, joins, spill, and warehouse size
Many dashboard users experience queueingConsider concurrency, multi-cluster behavior, workload isolation
JSON files have changing fieldsLand raw data in VARIANT, then curate stable columns
Some CSV rows fail to loadReview file format, rejected records, type conversions, and COPY INTO options
A pipeline needs incremental changesConsider streams plus tasks or another incremental pattern
Sensitive salary column must be hidden from most rolesUse masking policy and role-aware access design
Managers should see only their regionConsider row access policy or secure view design
External partner needs live selected dataConsider secure data sharing instead of file exports
Development needs production-like data quicklyConsider zero-copy clone plus masking/access controls
Cost rises after a new BI rolloutCheck warehouse size, runtime, auto-suspend, query frequency, and dashboard design
Query is fast only after first executionConsider cache effects before declaring the query optimized

Common weak areas and traps

Concept traps

  • Confusing a warehouse with a place where data is stored.
  • Treating Snowflake like a traditional indexed database in every tuning scenario.
  • Assuming all performance problems are solved by increasing warehouse size.
  • Forgetting that concurrency and single-query speed are different problems.
  • Assuming shared data is physically copied into the consumer account.
  • Confusing Time Travel concepts with long-term backup strategy.
  • Treating streams as full data tables instead of change tracking metadata.

Security traps

  • Granting table access but forgetting database and schema USAGE.
  • Forgetting warehouse access when troubleshooting query failures.
  • Using overly powerful roles for routine work.
  • Ignoring role hierarchy and active role selection.
  • Forgetting future grants for newly created objects.
  • Overlooking masking or row access policies when query results appear incomplete.

Data loading traps

  • Misconfigured file format.
  • Loading the same files repeatedly or assuming files loaded when they did not.
  • Ignoring rejected rows.
  • Using relational columns too early when source structure is unstable.
  • Not separating raw landing from curated analytics layers.
  • Forgetting that loading and transformation consume compute.

Performance traps

  • Relying on result cache during benchmarking.
  • Filtering on transformed expressions that reduce pruning.
  • Clustering without a clear access pattern.
  • Mixing heavy ETL, ad hoc analytics, and BI dashboards on one warehouse without checking impact.
  • Not using query history or profile information before changing configuration.

Final-week checklist

Seven-to-three days out

  • Re-read your notes on architecture, warehouses, RBAC, loading, semi-structured data, and sharing.
  • Build or review a small lab that creates a role, warehouse, database, schema, table, stage, and file format.
  • Practice troubleshooting access failures from missing role, warehouse, database, schema, and table privileges.
  • Review at least one COPY INTO load scenario and one unload scenario.
  • Practice querying VARIANT data and using FLATTEN.
  • Review slow-query decision points: queueing, pruning, joins, spill, caching, and warehouse sizing.
  • Review governance controls: masking, row access, secure views, tags, and sharing.

Final two days

  • Redo missed practice questions by topic, not just by score.
  • For every missed question, write the decision rule you should have used.
  • Explain scale up vs scale out without notes.
  • Explain role hierarchy and active role behavior without notes.
  • Explain stages, file formats, and COPY INTO without notes.
  • Explain when to use a stream, task, view, materialized view, clone, or share.
  • Review Snowflake SQL command patterns until you can recognize their purpose quickly.

Last review pass

  • Skim this checklist and mark any remaining Yellow or Red items.
  • Focus on scenario judgment, not memorizing unsupported numbers.
  • Review common traps.
  • Stop studying brand-new edge topics late unless they block a core concept.
  • Use practice explanations to confirm why the right answer is right and why the distractors are wrong.

Practical next step

Turn each Yellow or Red item into a short practice task: explain the concept aloud, identify the relevant Snowflake object or command, and answer two or three scenario questions on that topic. Then move into mixed COF-C02 practice so you can switch between architecture, security, loading, performance, governance, and sharing decisions under exam-style pressure.