SOA-C02 Cost and Performance Optimization Practice Question
A company has an S3 bucket that stores millions of small objects (1-10 KB) and uses S3 Standard storage. The bucket receives frequent PUT requests and occasional GET requests. The monthly bill shows high costs for S3 PUT requests. Which action would reduce costs?
⚠ Common exam trap
The trap is assuming storage-class changes reduce request costs; candidates must isolate that the bill's high line item is PUT requests, which only aggregation (fewer requests) addresses.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Aggregate small objects into larger files (e.g., 1 MB) before uploading to S3.
S3 PUT request charges are per-request, so uploading millions of tiny objects incurs millions of PUT charges. Aggregating small objects into larger files (e.g., 1 MB) before upload dramatically reduces the number of PUT requests and therefore the request cost. This directly targets the line item the bill shows as high.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Move the objects to S3 Glacier Deep Archive to reduce storage cost.
Why it's wrong here
Moving the objects to S3 Glacier Deep Archive would lower the per-GiB storage bill, but the customer's cost problem is driven by the massive number of PUT requests, not by storage capacity. Glacier Deep Archive still charges per request, and it also imposes a 180-day minimum storage duration and high, slow retrieval fees, making it unsuitable for an actively written workload of millions of small objects. The dominant request cost remains unchanged, so this option fails to address the actual source of expense.
- ✓
Aggregate small objects into larger files (e.g., 1 MB) before uploading to S3.
Why this is correct
Batching the small objects into larger files, such as 1 MiB objects, directly attacks the root cause because S3 bills every PUT request individually regardless of object size. One million 1 KB PUTs cost the same per-request as one million 1 MB PUTs, so consolidating 1,000 small objects into a single object reduces the number of PUT requests by 99.9%. This is the intended way to reduce per-request charges while retaining the same logical data, and it also lowers the overhead of managing millions of keys.
- ✗
Move the objects to S3 Intelligent-Tiering to optimize storage costs.
Why it's wrong here
Enabling S3 Intelligent-Tiering moves data between access tiers based on usage patterns, so it can optimize monthly storage charges; it does not reduce or alter the per-PUT request charges. In fact, Intelligent-Tiering adds a monthly monitoring and automation charge per 1,000 objects, which is especially impactful for millions of tiny objects. Since the question's goal is to cut request costs, this option targets the wrong component and even introduces new fees.
- ✗
Use S3 Lifecycle policies to transition objects to S3 Standard-IA after 30 days.
Why it's wrong here
Applying a lifecycle policy to transition objects to S3 Standard-IA after 30 days reduces storage cost for infrequently accessed data, but every lifecycle transition itself is a billed request (per 1,000 transitions) and the initial upload PUTs still occur. Standard-IA also has exactly the same PUT request cost as S3 Standard and enforces a 30-day minimum storage duration. Thus the policy never lowers the per-object request charges that make millions of small files expensive.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
One of 1,169 original SOA-C02 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Amazon Web Services exam blueprint
This SOA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SOA-C02 exam.