Limited-time offer The first 2,000 users get 10,000 emails/month free for a year 1,995 of 2,000 spots left Claim yours

Guides

Use Amazon SES SMTP for your website contact form

Amazon SES is one of the cheapest, most reliable ways to send email from your own domain. Its SMTP interface works with FormSMTP once you have SMTP credentials.

Last updated October 26, 2026

1Verify your domain in SES

Open the Amazon SES console in the region you want to send from and create an identity for your domain (or a single address). Add the DKIM records SES gives you to your DNS. Every From address must be on a verified identity.

2Create SMTP credentials

In the SES console go to SMTP settings → Create SMTP credentials. SES creates an IAM user and shows an SMTP username and password once, so copy both. These are not your AWS access keys, and they belong to the region you created them in.

3Enter the settings in FormSMTP

Sign up free, add a project and pick Amazon SES as the provider so the host and port fill in.

ProviderAmazon SES
Hostemail-smtp.<region>.amazonaws.com, for example email-smtp.eu-west-1.amazonaws.com
Port587 with SSL off (STARTTLS), or 465 with SSL on. 2587 and 2465 work too.
UsernameThe SMTP username from step 2
PasswordThe SMTP password from step 2
From emailAn address on your verified domain

FormSMTP fills in us-east-1; change the region in the host to match where you verified your domain.

Click Test connection, then add your form. See the HTML contact form guide, or compare every provider on the SMTP settings page.

Leave the sandbox

New SES accounts start in the sandbox: you can only send to verified addresses (and the SES mailbox simulator), up to 200 messages per 24 hours and 1 per second. That’s fine for testing a contact form that emails yourself. To email anyone else, request production access from the SES Get set up page. Having a verified domain helps the request get approved.

Common errors

  • 535 Authentication Credentials Invalid: you used AWS access keys, or credentials from a different region. Create SMTP credentials in the region in your host name.
  • 554 Message rejected: Email address is not verified: the From address isn’t verified, or, in the sandbox, the recipient isn’t either.
  • 454 Throttling failure: Daily message quota exceeded: you hit your 24-hour quota. Request production access or a higher quota.
  • Timeouts on port 25: use 587 or 465 instead.

FAQ

Are SES SMTP credentials the same as AWS access keys?

No. Create them under SMTP settings in the SES console. AWS access keys are rejected by the SMTP endpoint.

Can I test before leaving the sandbox?

Yes. Verify your own address as a recipient and point your contact form at it. Production access is only needed to email other people.

Why do my messages land in spam?

Usually the From address isn’t on a domain you’ve verified with the provider, or the domain has no SPF and DKIM records. Verify the domain, send from an address on it, and check the Deliverability panel in FormSMTP’s Settings.

More guides

Get a Founding Pass

10,000 emails a month, free for your first year. Pass No. 0006 is next: 1,995 of 2,000 left, no card.