SaveMyCert
Log in
5 of 5 free questions left today·for 10 a day
SAP-C03 practice

Free SAP-C03 practice questions

Drill exam-realistic AWS Certified Solutions Architect – Professional (SAP-C03) questions by domain, with an explanation on every option — not just the right one. 5 fully worked examples are further down this page, answers included.

Question bank
881
across 5 domains
Free, no account
5/day
a free account allows 10 a day
Real exam
75 Qs
180 min · pass 720 / 1000
Explanations
Every option
right and wrong

Build a practice session

5 free questions left today.

Domains

How many?

Mode

Ready when you are

10 fresh questions drawn across all domains, in Learn mode.

Review what you missed

Every question you answer incorrectly, and every question you flag while practising, is saved here automatically. Finish a session and you can come back to re-drill just those.

5 sample SAP-C03 questions, fully explained

Real questions from the SAP-C03 bank, with the answer key and the reasoning behind every option. Read them, then go back up the page and try the rest.

Question 1Architecture Design and Implementation Built for the Cloud

A payments company processes card transactions for 40,000 merchant accounts. Transactions for the same merchant must be applied in the order they were submitted, but transactions for different merchants can be processed in parallel by a fleet of consumers. Producers sometimes retry a send after a network timeout, and a retried transaction must not be applied twice. Throughput must grow as merchants are added. Which design meets these requirements?

Choose one.

  • a
    Send to an SQS FIFO queue with one fixed message group ID shared by the whole queue and content-based deduplication

    A single message group orders everything, so only one message is in flight at a time across all merchants. Throughput cannot grow with the number of merchants.

  • b
    Send to an SQS standard queue with the merchant ID as the message group ID and the transaction ID in a message attribute

    On a standard queue the message group ID only marks the tenant for fair queues; it does not order messages, and standard queues can deliver a message more than once.

  • c
    Write to a Kinesis data stream with a random partition key and store each transaction ID in the record payload

    Kinesis orders records per shard, and a random partition key scatters one merchant across shards, so its transactions lose their order. Kinesis also does not deduplicate producer retries.

  • d
    Send to an SQS FIFO queue with the merchant ID as the message group ID and the transaction ID as the deduplication ID Correct

    Ordering in a FIFO queue is per message group, so one group per merchant keeps each merchant in order while different groups are consumed in parallel. A deduplication ID equal to the transaction ID drops a retried send inside the five-minute deduplication interval.

The concept

SQS FIFO ordering is scoped to a message group; parallelism comes from having many groups, and deduplication is by deduplication ID within a five-minute interval.

Why that’s the answer

The requirement mixes three properties: per-merchant order, parallelism across merchants and suppression of retried sends. A FIFO queue with the merchant as the message group gives the first two, because consumers can work on different groups at once while each group is delivered in order. Setting the deduplication ID to the transaction ID gives the third. One fixed group serialises the whole queue, a standard queue does not order, and a random Kinesis partition key breaks the per-merchant order.

How to reason it out
  1. Identify the ordering scope: per merchant, not global.
  2. Map that scope to the FIFO message group ID so groups run in parallel.
  3. Map the business identity of a send (the transaction ID) to the deduplication ID.
  4. Reject designs that order globally (no scale) or not at all (standard queue, random key).

Exam tip: Order by the narrowest key the business needs: one message group (or partition key) per entity, never one for everything.

SAP-C03 Event-Driven, Serverless and Multi-Tenant Architecture — the lesson that teaches this.

Question 2Security, Compliance, and Governance

A company with 40 AWS accounts in AWS Organizations uses Okta as its workforce directory. Engineers currently sign in with IAM users in each account. The security team wants engineers to sign in once with their Okta credentials and reach every account they are entitled to. When HR disables someone in Okta, that person's AWS access must disappear without anyone editing AWS. Which actions should a solutions architect take? (Select TWO.)

Choose TWO.

  • a
    Create an IAM SAML identity provider for Okta in each of the 40 accounts and map Okta groups to IAM roles in each account

    Per-account IAM SAML federation works for sign-in, but it means 40 providers and role mappings to maintain and no central portal; Identity Center is the multi-account design the requirements describe.

  • b
    Create an Amazon Cognito user pool that federates with Okta and use its groups to choose IAM roles in each account

    Cognito user pools authenticate users of the company's own applications. They do not provide workforce sign-in to the AWS console and CLI across an organization's accounts.

  • c
    Enable IAM Identity Center in the management account and set Okta as an external identity provider through SAML 2.0 Correct

    Identity Center gives one sign-in portal for every account in the organization, and connecting Okta as the external identity source over SAML 2.0 lets engineers authenticate with their Okta credentials.

  • d
    Configure Okta to send just-in-time user creation attributes in the SAML assertion so Identity Center creates users at first sign-in

    IAM Identity Center does not create users from SAML assertions. Users and groups must already exist in its identity store, either by SCIM provisioning or manual creation, and a SAML assertion alone never removes anyone.

  • e
    Turn on automatic provisioning in IAM Identity Center and configure Okta to push users and groups through SCIM Correct

    SCIM keeps the Identity Center identity store in step with Okta: when HR disables or removes a user, Okta deprovisions them, and their assignments stop working with no change made in AWS.

The concept

IAM Identity Center with an external IdP splits the job: SAML 2.0 authenticates the user, SCIM provisions and deprovisions identities.

Why that’s the answer

Identity Center is the AWS-recommended way to give a workforce single sign-on to many accounts. Choosing Okta as the external identity source over SAML 2.0 handles authentication. Because Identity Center does not create or remove users from SAML assertions, automatic provisioning through SCIM is what makes the HR-driven lifecycle work: a user disabled in Okta is deprovisioned in Identity Center. Per-account IAM SAML providers scale poorly, and Cognito is for application users, not workforce access to AWS accounts.

How to reason it out
  1. Recognise a workforce, multi-account single sign-on need: IAM Identity Center.
  2. Connect the existing directory as the identity source using SAML 2.0 for sign-in.
  3. Separate authentication from lifecycle: SCIM pushes user and group changes.
  4. Reject Cognito (application users) and per-account IAM SAML providers (no central control).

Exam tip: SAML signs users in; SCIM creates and removes them. Identity Center needs both for an external IdP lifecycle.

SAP-C03 Identity Security Architecture: Identity Center Federation, Cognito, EKS Pod Identity, Least Privilege, ABAC and Data Perimeters — the lesson that teaches this.

Question 3Cost-Optimized Architecture Design

A company runs a steady fleet of Amazon EC2 instances across several instance families in us-east-1 and eu-west-1. Over the next three years it plans to move part of the fleet to Amazon ECS on AWS Fargate and some batch steps to AWS Lambda, and it may shift capacity between the two Regions. Finance wants a commitment-based discount that keeps applying through these changes. Which purchase option should a solutions architect recommend?

Choose one.

  • a
    Purchase a 3-year Compute Savings Plan sized to the steady hourly compute spend Correct

    Compute Savings Plans apply across instance families, Regions and operating systems, and also to Fargate and Lambda usage, so the discount follows the workload as it moves.

  • b
    Purchase 3-year EC2 Instance Savings Plans for each current instance family and Region

    EC2 Instance Savings Plans are tied to one instance family in one Region and do not apply to Fargate or Lambda, so the discount is lost as the fleet moves.

  • c
    Purchase 3-year Convertible Reserved Instances and exchange them as the fleet changes

    Convertible Reserved Instances can be exchanged for other EC2 instance configurations, but they never apply to Fargate or Lambda usage.

  • d
    Purchase 3-year Standard Reserved Instances scoped to each Region for each family in use

    Standard Reserved Instances are locked to an instance family and Region and do not cover Fargate or Lambda.

The concept

Compute Savings Plans trade a smaller discount for the widest flexibility: any EC2 family, size, Region, OS or tenancy, plus Fargate and Lambda.

Why that’s the answer

The stated plan moves usage across instance families, Regions and from EC2 to Fargate and Lambda. Only a Compute Savings Plan keeps applying across all of those changes. EC2 Instance Savings Plans and Reserved Instances give deeper or similar discounts but are bound to EC2 instance families and Regions, and none of them discount Fargate or Lambda.

How to reason it out
  1. List the changes expected during the term: family, Region, and compute service.
  2. Check which commitment covers Fargate and Lambda as well as EC2.
  3. Choose the Compute Savings Plan and size it to the steady hourly spend.

Exam tip: When usage will move between families, Regions or from EC2 to Fargate/Lambda, a Compute Savings Plan is the commitment that follows it.

SAP-C03 Pricing Models: Savings Plans, Reserved and Spot Capacity, Graviton, Step Functions, Rightsizing and AI Cost Optimization — the lesson that teaches this.

Question 4Resilience, Migration, and Business Continuity

A retailer plans to migrate 900 VMware virtual machines to AWS and has never used AWS migration services. Its only inventory is an RVTools export and a CMDB that application owners describe as out of date. Before the migration team can build move groups, it needs utilization data and evidence of which servers communicate with each other. What should a solutions architect recommend?

Choose one.

  • a
    Import the RVTools export into AWS Transform and build the move groups from that inventory data alone

    An RVTools export is a configuration snapshot: it carries no server-to-server network connections and no time-series utilization, so it cannot show which servers talk to each other.

  • b
    Deploy the AWS Transform discovery tool in vCenter to collect utilization and network connections Correct

    The AWS Transform discovery tool is deployed into the VMware environment and collects server inventory, performance data and server-to-server network connections, which AWS Transform uses for dependency mapping and wave planning.

  • c
    Run AWS Compute Optimizer against the vCenter inventory to map connections between the servers

    Compute Optimizer analyzes resources already running in AWS for right-sizing; it does not discover on-premises servers or their network dependencies.

  • d
    Deploy the Application Discovery Service Agentless Collector in vCenter to map the connections

    Application Discovery Service is no longer open to new customers; AWS points new users to AWS Transform for the same discovery capability.

The concept

Migration discovery must capture both utilization and network connections, because move groups are built from observed dependencies, not from inventory lists.

Why that’s the answer

The deciding needs are utilization data plus evidence of which servers communicate, for a company new to AWS migration services. The AWS Transform discovery tool runs in the VMware environment and collects performance and network connection data that AWS Transform's planning uses. RVTools is a static configuration export without connection data. Compute Optimizer only analyzes AWS resources. The Agentless Collector of Application Discovery Service did collect connections, but that service is closed to new customers.

How to reason it out
  1. List what the plan needs: inventory, utilization and server-to-server connections.
  2. Check which source actually observes network connections rather than listing servers.
  3. Rule out tools that only work on AWS resources or are closed to new customers.

Exam tip: Move groups come from observed connections: collect network dependency data with the AWS Transform discovery tool, not from RVTools or a CMDB alone.

SAP-C03 Migration Strategies: Discovery, Wave Planning, AWS Transform MGN, DMS, DataSync and Modernization — the lesson that teaches this.

Question 5Operational Excellence and Automation

A company has 300 member accounts in AWS Organizations and creates about 15 new accounts each month. A baseline CloudFormation template that creates an audit IAM role and an Amazon EventBridge rule must be present in every member account in two Regions, including accounts created later. The platform team does not want to create or maintain deployment roles in each account. Which solution meets these requirements with the LEAST operational overhead?

Choose one.

  • a
    Create a StackSet with self-managed permissions and have the account vending process create the execution role in each new account

    Self-managed StackSets require the administration and execution roles in every account, and new accounts must still be added to the StackSet by hand or by script.

  • b
    Create a StackSet with service-managed permissions that targets the organization root and has automatic deployment turned on Correct

    Service-managed StackSets create the cross-account roles for you, and automatic deployment adds the stack to accounts that join the targeted OUs later.

  • c
    Create one stack in the management account that contains a nested stack for each member account and Region in the organization

    Nested stacks deploy into the same account and Region as their parent stack; they cannot place resources in other accounts.

  • d
    Bootstrap each account for the AWS CDK and run cdk deploy against each new account from a scheduled pipeline job

    This works only after each new account is bootstrapped and added to the pipeline, which is the per-account upkeep the team wants to avoid.

The concept

Service-managed StackSets with automatic deployment keep an organization-wide baseline in every current and future member account.

Why that’s the answer

Two requirements decide it: future accounts must receive the baseline automatically, and no per-account deployment roles should be maintained. Service-managed permissions use Organizations trusted access, so CloudFormation creates the roles it needs; automatic deployment deploys stack instances when an account joins a targeted OU. Self-managed StackSets need roles in every account, nested stacks cannot cross accounts, and per-account CDK deployments need bootstrapping and pipeline changes for every new account.

How to reason it out
  1. List the requirements: every member account, two Regions, future accounts included, no per-account roles.
  2. Pick the multi-account deployment mechanism: CloudFormation StackSets.
  3. Choose the permission model that needs no roles in each account: service-managed.
  4. Turn on automatic deployment so accounts added later receive the stack.

Exam tip: Org-wide baseline for current and future accounts: service-managed StackSet + automatic deployment, targeting OUs or the root.

SAP-C03 Infrastructure as Code: CloudFormation, CDK, Policy as Code and StackSets — the lesson that teaches this.

The SAP-C03 question bank, by domain

The bank is built to the exam's own weighting, so the practice you get reflects the marks that are actually on offer — not whichever domain was easiest to write questions for.

Published SAP-C03 practice questions per exam domain
DomainExam weightTopicsQuestions
Architecture Design and Implementation Built for the Cloud25%6222
Security, Compliance, and Governance25%5220
Cost-Optimized Architecture Design15%4132
Resilience, Migration, and Business Continuity15%3132
Operational Excellence and Automation20%4175
Total100%22881

Practise SAP-C03 one domain at a time

How SAP-C03 questions are worded

Most SAP-C03 questions are not asking whether you can recall a definition. They describe a situation and ask which option satisfies it — so the skill being tested is reading the requirement precisely and eliminating options that fail it.

Single-response vs multiple-response

A single-response question has exactly one right answer. A multiple-response question tells you how many to pick ("Choose TWO") and there is no partial credit — getting one of the two right scores nothing. Read that instruction before you read the options.

Read the last line first

The final sentence is the actual question; everything before it is scenario. Read it first, then read the scenario knowing what you are looking for. It stops you from building an answer in your head that the question never asked for.

Hunt for the qualifier

Most scenarios turn on one word — MOST cost-effective, LEAST operational overhead, with the LEAST latency, without changing application code. Two options are frequently both technically correct, and the qualifier is the only thing separating them.

Eliminate, then choose

Distractors are almost always real AWS services doing a real job — just not this job. Rule out the ones that break a stated constraint before you compare what's left. On a question you truly don't know, eliminating two options turns a guess into a coin flip.

Practise SAP-C03 from your browser

The SaveMyCert Chrome extension opens a daily drill of 5 SAP-C03 questions in the side panel, with the full explanation behind every answer. No account needed.

Get the Chrome extension (opens in a new tab)

Beyond SAP-C03 practice

SAP-C03 practice questions: your questions

Yes. You can answer 5 questions a day with no account at all, and a free account raises that to 10 a day across the full 881-question SAP-C03 bank, with an explanation on every option. Pro removes the daily cap entirely.

Source

Exam structure, domain weights and scoring on this page come from the official SAP-C03 exam guide.