Amazon SES Production Access: How Long It Takes and How to Get Approved
Request production access from the SES console's Get set up page (or with aws sesv2 put-account-details), and expect an initial response from AWS Support within 96 hours. Before you submit, verify your sending domain, make sure the website URL you give shows a real product, and be ready to explain how people sign up and how you handle bounces and complaints. You can't edit the request once it's in.
A recurring question on r/aws is how long approval takes on a new account for transactional email. The documented answer is the 96-hour first response; the variable part is whether AWS has to come back to you for more detail. Most of that is in your control.
What the sandbox allows
From AWS's production access page (read 3 November 2026), a sandboxed account:
- can only send to verified addresses and domains, or the SES mailbox simulator;
- can send at most 200 messages per 24 hours and 1 message per second;
- can't use bulk actions or API calls for account-level suppression list management.
Sandbox status is per Region. If you send from two Regions, request production access in each.
Before you submit
AWS says verifying a domain with SES before you request access is a best practice that helps approval go faster. Have these ready:
- A verified sending domain with DKIM set up. Easy DKIM in SES gives you the CNAME records; our DKIM checker confirms they resolve.
- A live website at the URL you'll enter. AWS uses it "to help us better understand the kind of content you plan on sending". A parked domain or placeholder page invites questions.
- A plain description of your mail: what triggers it (signup, password reset, receipts), who receives it, and roughly how many a day.
- How people get on your list. For marketing mail, describe the signup form and whether you confirm addresses. The acknowledgement you tick says you'll only email people who explicitly asked for it.
- How you handle bounces and complaints. The acknowledgement also confirms you have a process for both. In practice: SES notifications to SNS or an event destination, a handler that suppresses hard bounces and complaints, and the SES account-level suppression list switched on.
The request, step by step
In the console:
- Open the SES console and choose Account dashboard.
- In the sandbox warning box, choose View Get set up page, then Request production access.
- Pick Marketing or Transactional, whichever describes most of your mail.
- Enter the website URL, up to four additional contacts, and the contact language.
- Tick the acknowledgement and Submit request.
Or with the CLI:
aws sesv2 put-account-details \
--production-access-enabled \
--mail-type TRANSACTIONAL \
--website-url https://example.com \
--additional-contact-email-addresses ops@example.com \
--contact-language EN
If you send from EC2, you may also need to ask AWS to remove the port 25 throttle on the instance; our post on cloud providers that block port 25 explains why. Sending through the SES API or SMTP on port 587 avoids it.
If AWS asks for more information
AWS says it considers each request carefully, and if it needs more information it can take longer than 96 hours. Reply with specifics, not reassurance:
- What the mail is, with an example subject line and a sentence of the body.
- Where recipients come from: "users who create an account on example.com and confirm their email", not "our customers".
- Expected volume per day for the first month.
- How bounces and complaints are processed, and what happens to an address after a hard bounce.
Vague answers ("we follow best practices") are what lead to a second round of questions.
What to avoid
- Cold email. It contradicts the acknowledgement, and SES's acceptable use and review processes are built to catch it.
- Importing an old list on day one. Bounce and complaint rates are watched after approval too. Our post on the SES bounce rate review covers the 5% and 10% thresholds, and detecting an SES sending pause covers how to find out quickly.
- Unchecked signup addresses. A signup form with no validation fills the first weeks with typos and fake addresses, which bounce.
After approval
Check the account's sending quota in the console; it starts modest and rises as you send good mail. Point your first sends at the cleanest addresses you have. If you're migrating an existing list from another provider, verify it first at /verify so the new account's first bounce numbers reflect real addresses. For signup forms, signup protection has recipes that block invalid and disposable addresses before they're saved.
Where SimpleVerifier fits
SimpleVerifier doesn't affect the SES review. It helps afterwards, by keeping bounces low from the first send: list checks before an import, and an API check at signup (API access comes with Pro and has its own monthly allowance; see the API docs). The first 100 checks are free with a Google sign-in on the verify page. Pro is $39 a month with the first 100,000 checks a month at full speed, then slower, never cut off. See pricing.
Common questions
How long does SES production access take?
AWS's documentation says the Support team provides an initial response within 96 hours, and grants the request within that period if it can. If it needs more information from you, it can take longer.
What are the SES sandbox limits?
You can only send to verified email addresses and domains or the SES mailbox simulator, with a maximum of 200 messages per 24 hours and 1 message per second. Account-level suppression bulk actions are disabled. The limits apply per AWS Region.
Why was my SES production access request denied?
AWS doesn't publish a list of reasons. Requests that leave the use case vague, point to a website with no real content, or suggest the list wasn't opted in get more questions. Answer the follow-up email with specifics: what you send, to whom, how they signed up, and how you process bounces and complaints.
Do I need to request production access in every Region?
Yes. AWS says sandbox status is unique per Region, so production access in us-east-1 doesn't carry over to eu-west-1.
Check your list before you send
Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.