Transactional email service Founded 2010, a year before Amazon SES; runs its own MTA and IP ranges
Elastic Email logo

Elastic Email SMTP Settings and Configuration (2026)

Last verified Aug 27, 2026

Native SMTP relay, aggressively priced

Elastic Email ships a first-party SMTP relay at smtp.elasticemail.com on ports 25, 587 (STARTTLS), 465 (implicit TLS) and 2525 (firewall bypass), no add-on required, and Free-tier accounts can send up to 100 emails/day before hitting the daily cap.

Elastic Email is one of the cheapest ways to ship transactional and marketing email from your own server or app. The SMTP relay is included in every plan (including the Free tier), and pricing starts at $29/month for the Starter plan, materially below equivalent volumes on SendGrid or Mailgun. Use Elastic Email SMTP when you want a straightforward cost story, a reasonable free tier for staging, and a single global endpoint. Consider Postmark if inbox placement on transactional flows matters more than price, Amazon SES if you already live in AWS, or Brevo if you need marketing automation baked in.

Quick reference

SMTP serversmtp.elasticemail.com
Port (STARTTLS)587 RECOMMENDED
Port (implicit TLS)465
Alternative port2525 (firewall bypass) or 25 (unencrypted, discouraged)
UsernameYour Elastic Email account email or a dedicated SMTP credential email (up to 15 per account)
PasswordPassword generated when you create the SMTP credential, shown once, then obfuscated

SMTP configuration

SMTP

smtp.elasticemail.com, single global endpoint

Route transactional and marketing email from any app, MTA, or plugin that speaks SMTP. Authentication uses SASL LOGIN/PLAIN over STARTTLS on 587 or implicit TLS on 465.

Hostname
smtp.elasticemail.com
Single global endpoint, no regional variants published. IP pool tiering is handled server-side by Reputation Automation.

Port
587 · 465 · 2525
Use 587 with STARTTLS for most stacks. Fall back to 2525 if outbound 587 is blocked. Port 25 works but ships unencrypted, avoid.

Auth method
SASL LOGIN / PLAIN
Elastic Email accepts LOGIN or PLAIN over TLS. No OAuth on the SMTP endpoint, credentials only.

Username format
email address
Either your account email or an alternative email attached to a dedicated SMTP credential. One credential per environment is best practice.

Setup steps

  1. Log in to your Elastic Email account and open Settings › SMTP/API to create a new SMTP credential. Copy the generated password immediately, only the last 5 characters remain visible after this screen closes.
  2. In your app or MTA, set the host to smtp.elasticemail.com, the port to 587, enable STARTTLS, and paste the credential email as the username and the generated password as the password.
  3. Add _spf.elasticemail.com to your domain’s SPF record and publish the Elastic Email DKIM TXT record at api._domainkey (see the Authentication section below).
  4. Verify the sending domain from Settings › Domains. Elastic Email will not let you send from an unverified domain in production.
  5. Send a test message, then check Statistics › Log for delivery status. Warm up gradually if you are on a new shared IP tier, large bursts on day one hurt your reputation score.

Authentication

SPF and DKIM setup

Elastic Email requires both SPF and DKIM before it will unlock production sending on a domain. Publish these DNS records exactly, the DKIM value is the same for every Elastic Email account (the key rotates only when Elastic Email publishes a new one).

; SPF, append include if you already have a v=spf1 record
@                TXT  "v=spf1 a mx include:_spf.elasticemail.com ~all"

; DKIM, publish exactly as-is
api._domainkey   TXT  "k=rsa;t=s;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCbmGbQMvxwtNQoXN0waGYaciuKx8mtMh5czguT4EZlJXuCt6V+l56mmt3t68FEX5JJ0q4ijG71BGoFRkl87uJi7LrQt1ZZmZCvrEII0YO4mp8sDLXC8g1aUAoi8TJgxq2MJqCaMyj5kAm3Fdy2tzftPCV/lbdiJqmBnWKjtwIDAQAB"

If your zone already carries a v=spf1 record, do not add a second one, append include:_spf.elasticemail.com inside the existing record. Two SPF records on the same domain cause a permanent SPF failure at every major inbox provider. After publishing, hit Verify in the Elastic Email Domains screen; propagation is usually under 15 minutes on Cloudflare, up to 24 hours on legacy registrars.

DMARC alignment

Elastic Email ships an in-app DMARC Generator under Settings › Domains. Their recommended path: publish DMARC at p=none first, confirm SPF and DKIM pass consistently in your aggregate reports, then move to p=quarantine and eventually p=reject. Because DKIM uses the api._domainkey selector on your own domain, alignment is automatic as long as the From: header uses that same domain. Remember DMARC applies to all mail from the domain, not just Elastic Email, so audit every other sender (Google Workspace, Zendesk, HubSpot, your ERP) before hardening the policy.

Rate limits & sending caps

LimitValueNotes
Free-tier daily cap100 emails/dayHard cap on the Free plan even though the monthly quota is 3,000 emails/month.
Concurrent SMTP connections20 per source IPDocumented in the help center; the classic bottleneck for MailWizz, PowerMTA and self-hosted queues.
Message size20 MBApplies to the full MIME body including base64-encoded attachments.
SMTP command timeout2 minutesSingle-command idle timeout on the SMTP conversation.
Per-hour throughputdynamicNot published, enforced by Reputation Automation and IP-pool tiering.

The soft-throttle model is the key thing to understand: Elastic Email deliberately does not publish a hard per-hour cap because your effective ceiling is a function of your reputation score and which shared IP pool you sit in. That is closer to how SendPulse and shared-tier Mailgun operate than the fixed daily quotas you get on Amazon SES.

Common setup gotchas

SMTP password is shown only once, regenerate if lost

When you create an SMTP credential, Elastic Email displays the password once, then obfuscates it (only the last 5 characters remain visible). There is no retrieval flow, if you lose it, delete the credential and issue a new one. Each account is capped at 15 SMTP credentials, so use per-environment (prod, staging, dev) rather than per-app to stay under the ceiling.

Free-tier 100 emails/day ceiling silently truncates bursts

The Free plan advertises 3,000 emails/month but enforces a hard 100 emails/day cap. A single welcome-email + password-reset burst on a busy staging day can hit the ceiling and fail silently. Move to a paid plan ($29/month Starter) before you route production traffic, or use the Free tier strictly for smoke tests.

20 concurrent connections per IP, cap your workers

The SMTP endpoint throttles at 20 concurrent connections from a single source IP. If you run MailWizz, PowerMTA, or a custom queue with worker pools, set delivery-server concurrency to 20 or lower, anything higher gets rejected with connection errors that look like transient network faults. This is a per-IP limit, so multi-server fleets each get their own 20-slot budget.

Shared-IP reputation is dynamic, you can be moved between pools

Elastic Email’s Reputation Automation shuffles accounts across shared IP pools based on your account’s score. A single bad campaign hurts both deliverability and the pool tier you qualify for on your next send. Warm slowly, clean lists with the built-in verification endpoint before large sends, and treat pool downgrades as a signal to audit content and list hygiene, not to switch providers.

Migrating SMTP setups

To Elastic Email from another provider

Migrating in is straightforward because the SMTP interface is standard. Point your app at smtp.elasticemail.com:587, swap the credentials for an Elastic Email SMTP credential, and publish the new SPF include + api._domainkey DKIM record alongside your existing sender’s records. Keep both providers active for the first 7 to 14 days, split traffic, and watch bounce and complaint rates in Statistics › Log. Once Elastic Email carries steady volume without reputation flags, remove the old SPF include. Coming from SendGrid or Mailgun? The concurrency ceiling is stricter here (20 vs their per-plan-configurable pools), so throttle worker pools before you cutover.

From Elastic Email to another provider

Leaving Elastic Email typically means one of two motivations: better inbox placement on transactional flows (Postmark, MailerSend) or deeper AWS integration (Amazon SES). Export contacts via GET /contacts on the v4 API, export suppression lists via GET /suppressions, and export campaign history via GET /statistics. On DNS, add the new sender’s SPF include and DKIM records first, verify the new domain, then dual-send for a week before removing _spf.elasticemail.com and api._domainkey. Delete your SMTP credentials in Elastic Email last, not first, so no in-flight retry attempts fail authentication mid-migration.

Frequently asked questions

What are the exact SMTP hostname and ports for Elastic Email in 2026?

The hostname is smtp.elasticemail.com. Port 587 with STARTTLS is the recommended default. Port 465 works for implicit TLS, port 2525 is available as a firewall bypass, and port 25 is accepted but unencrypted and discouraged. There is one global endpoint. Elastic Email does not publish regional variants.

How do I authenticate to smtp.elasticemail.com and where do I get the password?

Authenticate with SASL LOGIN or PLAIN over TLS. The username is either your Elastic Email account email or the email attached to a dedicated SMTP credential (you can create up to 15 per account). The password is generated when you create the credential in Settings, SMTP/API. Copy it immediately. Elastic Email obfuscates it after the creation screen closes, showing only the last 5 characters. If you lose it, delete the credential and issue a new one.

Why is Elastic Email rejecting connections after 20 concurrent workers?

Elastic Email enforces a documented cap of 20 concurrent SMTP connections from a single source IP. Above that, further connections are refused. If you run MailWizz, PowerMTA, or any custom delivery pool, set worker concurrency to 20 or below. Multi-IP fleets each get their own 20-slot budget, so horizontal scaling across IPs is the escape hatch.

How do I configure SPF and DKIM correctly for Elastic Email?

Publish a TXT record on your root domain with v=spf1 a mx include:_spf.elasticemail.com ~all (or append the include to your existing SPF record, never create a second SPF record). Publish the DKIM TXT record at api._domainkey with the k=rsa key value provided in your Elastic Email dashboard. Verify the domain in Settings, Domains. Propagation is usually complete within 15 minutes on modern DNS hosts.

Does Elastic Email require STARTTLS or implicit TLS on port 465?

Both work. Port 587 uses STARTTLS (the SMTP conversation starts plaintext and upgrades to TLS after EHLO). Port 465 uses implicit TLS (the whole conversation is encrypted from the first byte). Most modern clients and MTAs default to 587 with STARTTLS, use 465 only if your library does not support STARTTLS negotiation.

Why is my free Elastic Email account blocked after ~100 emails in a day?

The Free plan enforces a hard cap of 100 emails per day, independent of the 3,000 emails/month quota. Bursty transactional patterns (welcome flows, password resets, daily digests) can hit this ceiling before noon. Upgrade to the Starter plan at $29/month for headroom, or reserve the Free tier for smoke tests and staging.

AAlaa Touil RRabeb How we test →

This review follows our email infrastructure testing methodology. We disclose affiliate relationships in our editorial independence policy.