Cost-Effective Serverless Contact Form on S3

SAA-C03 By islever Editorial Last updated

Short answer

B Use API Gateway and Lambda to process the form and SNS to trigger email notifications, minimizing cost for low traffic.

Question

A company uses Amazon S3 to host its static website. The company wants to add a contact form to the webpage. The contact form will have dynamic server-side components for users to input their name, email address, phone number, and user message. The company expects fewer than 100 site visits each month. The contact form must notify the company by email when a customer fills out the form. Which solution will meet these requirements MOST cost-effectively?
  1. Host the dynamic contact form in Amazon Elastic Container Service (Amazon ECS). Set up Amazon Simple Email Service (Amazon SES) to connect to a third-party email provider.
  2. Create an Amazon API Gateway endpoint that returns the contact form from an AWS Lambda function. Configure another Lambda function on the API Gateway to publish a message to an Amazon Simple Notification Service (Amazon SNS) topic. Correct Answer
  3. Host the website by using AWS Amplify Hosting for static content and dynamic content. Use server-side scripting to build the contact form. Configure Amazon Simple Queue Service (Amazon SQS) to deliver the message to the company.
  4. Migrate the website from Amazon S3 to Amazon EC2 instances that run Windows Server. Use Internet Information Services (IIS) for Windows Server to host the webpage. Use client-side scripting to build the contact form. Integrate the form with Amazon WorkMail.

Key Takeaways

The exam tests the ability to decouple static hosting from dynamic logic; the common trap is over-engineering with EC2 or ECS when a simple Lambda function suffices for infrequent traffic.

This question evaluates the design of a cost-effective serverless architecture for a low-traffic static website requiring dynamic form processing and email notifications using AWS Lambda, API Gateway, and SNS.

Common mistake: Candidates often choose Amazon ECS (Option A) because they associate 'dynamic components' with containers, failing to recognize that Lambda is significantly more cost-effective for less than 100 monthly visits.

Expert Analysis

Why the Answer Is Correct

Option B is the correct choice because it leverages a fully managed, event-driven serverless stack that aligns perfectly with the low-traffic requirement. Amazon S3 hosts the static assets, while API Gateway triggers an AWS Lambda function to handle the form submission logic. Since the volume is under 100 visits/month, Lambda's free tier makes this nearly free. The use of Amazon SNS provides a robust, decoupled notification mechanism to send emails (via SES subscription or direct SNS-to-email), ensuring reliability without managing infrastructure.

Why the Other Options Are Wrong

Option A uses Amazon ECS, which requires provisioning and managing containers (Fargate or EC2), incurring continuous costs regardless of traffic, making it the least cost-effective option. Option C suggests using AWS Amplify for both static and dynamic content but incorrectly specifies SQS for delivery; SQS is a queue, not a notification service, and would require additional polling logic to actually notify the company. Option D involves migrating to Windows EC2 instances, which carries the highest cost due to instance hours and administrative overhead, completely violating the 'most cost-effective' constraint.

Community Comment Notes

The community consensus strongly supports Option B, with multiple users citing the low traffic volume ('fewer than 100 site visits') as the primary indicator for choosing Lambda over containerized solutions. One user noted that SNS is specifically designed for pushing messages to subscribers, reinforcing the architectural fit. Another commenter highlighted that the limitation of submissions allows for the pay-per-use model of Lambda to be optimal.

Exam Strategy

Always check the traffic volume and frequency first. If the workload is sporadic or low-volume, default to serverless options like Lambda rather than always-on compute like EC2 or ECS to minimize cost.

Frequently Asked Questions

Why not use ECS for the dynamic part?

ECS requires running containers continuously or warming them up, which is expensive for <100 visits/month. Lambda scales to zero.

How does SNS send the email?

SNS can subscribe to an email endpoint (SES or SMTP relay). It acts as the fan-out service to notify the team upon form submission.

More SAA-C03 FAQ →

Community Votes

B
100%

100% of anonymous learners picked answer B. Votes are pick records left by other test-takers — they are not the verified answer.

Discussion 5 contributions

Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.

From public community threads 5

  1. Scheldon 👍 3 Answered B
    AnswerB API gateway + Lambda seems to be the best option expecially when SNS is in use which is specially created to push messaged to the subscribers (company appropraiate team in this situation)
  2. KennethNg923 👍 3 Answered B
    as it said "The company expects fewer than 100 site visits each month" and Lambda charge per each time calling it, so i will go for B
  3. EdricHoang 👍 3 Answered B
    Limitation is 100 submission a month, not frequent -> Lambda
  4. mk168898 👍 2
    i see need to notify => SNS
  5. Hkayne 👍 2 Answered B
    B is the right answer

Reader comments & corrections

No reader corrections yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Practice All SAA-C03 Questions

Access 120 questions with complete answers and detailed explanations.

View Full SAA-C03 Practice Test →

← Back to SAA-C03 Study Guide