New guide: how to warm up a dedicated IP without hurting your reputation. Read now →
Log in
MigoSMTP
SMTP Relay

Plug any app into reliable email delivery

Point your application, CMS or device at MigoSMTP and keep sending exactly as you do today, with authentication, TLS and limits handled for you.

An AI copilot explains every bounce and deferral in plain English.

New SMTP credential
Username
[username]
Password (API key)
••••••••••••
Create
Credentials ready
Scoped key
Revocable
Create SMTP credentialsGenerate a username and a scoped API key in the dashboard. Each key can be limited to one domain and revoked at any time.
smtp.migosmtp.com:587
> EHLO mail.example.com
< 250-STARTTLS
> STARTTLS
< 220 Ready to start TLS
> AUTH PLAIN ••••
< 235 Authenticated
Session open
STARTTLS
AUTH PLAIN
Connect over TLS and authenticateYour server upgrades the connection with STARTTLS, then signs in. The relay answers with a status code at every step.
Mail settings
Rails
Laravel
Django
Node
Django
MAIL_HOST=smtp.migosmtp.com
MAIL_PORT=587
MAIL_USERNAME=[username]
MAIL_ENCRYPTION=tls
Test mail sent
Any stack
No SDK needed
Drop into any frameworkAnything that speaks SMTP works: set the host, port and credentials in your framework config and keep your code.
PriorityOTPs, resets
BulkNewsletters
MigoSMTP relayPacing per provider
Priority first
Paced behind
Priority queue
Fair pacing
One relay, two speedsPassword resets and receipts jump the queue while newsletters wait their turn, all through the same connection.
Log assistant
AI
Why was msg_a41b deferred?
read_session(sess_9f2c) → 451 4.7.1
lookup_code("451") → Temporary, retry
The receiver asked us to slow down.
It retried in 5 minutes and was delivered.
SMTP log
Code reference
Explains codes
Raw log kept
Ask the SMTP log instead of reading itAsk why a message was deferred and the assistant reads the session log, finds the response code and explains the fix. The raw log stays one click away.
Delivery events
Signed events
/hooks/mail
200 OK
Analytics
200 OK
CRM sync
200 OK
Signed events
Retries
Results flow back to youDeliveries, bounces and complaints are signed and posted to your endpoints, so your app always knows the outcome.
Credentials
Handshake
Plug in
Priority
AI log reader
Feedback
SMTP relayREST APIWebhooksDedicated IPsDKIM signingInbound parseTemplatesAnalyticsSuppression listsReputation monitoringEmail validationTeam roles and audit logSMTP relayREST APIWebhooksDedicated IPsDKIM signingInbound parseTemplatesAnalyticsSuppression listsReputation monitoringEmail validationTeam roles and audit log
Capabilities

Standard SMTP, with the controls teams actually need

Standard SMTP over TLS

Works with any framework, CMS, plugin, script or device that can send over SMTP. Connect with STARTTLS; unencrypted connections are not accepted.

Most frameworks, CMS plugins, printers, scanners and legacy scripts already know how to send over SMTP, so there is nothing new to install. You enter the host, username and key from your dashboard, choose STARTTLS, and your existing mail flow starts going through MigoSMTP. Connections without encryption are refused, which keeps credentials and message content protected on the wire.

  • Works with WordPress, Laravel, Django, Rails, Node and device firmware that speaks SMTP
  • STARTTLS required on every connection
  • No code change for most applications

Separate account per app

Create credentials per application, environment or client, so you can rotate or disable one without touching the others.

A separate SMTP account for each application, environment or client means one leaked password never exposes everything. Name accounts after what they serve, for example billing, support or staging, and every report and log line is attributed to the right one. Agencies and platforms use this to keep client traffic apart.

  • Rotate or disable one account without touching the rest
  • Usage and logs shown per account
  • Clear ownership for audits and support

Per-account sending limits

Cap volume per account so one runaway job or leaked password cannot drain your quota or your reputation.

Sending limits are set on the account itself, so a bug that loops over a list or a compromised credential hits a ceiling instead of your whole quota. Limits protect shared reputation as well as cost: a sudden burst from one app cannot drag down mail from the others.

  • Limit each account independently
  • Pace sending instead of failing it outright
  • Raise a limit when a real campaign needs it

IP allowlist

Lock an account to the server addresses you trust, so stolen credentials are useless from anywhere else.

An optional allowlist ties an SMTP account to the server addresses you trust. A stolen username and key then fail from any other network. It is the simplest second layer for production systems whose outbound addresses never change.

  • Add and remove addresses yourself
  • Enforced per account, not globally
  • Pairs with scoped credentials

Automatic bounce and complaint handling

Hard bounces and complaints are suppressed for you, and temporary failures are retried before they count as failed.

Hard bounces and complaints are added to your suppression list automatically so you stop sending to addresses that cannot or will not receive mail. Temporary failures are retried with backoff before they are counted as failed, which protects deliverability and saves support time.

  • Hard bounces suppressed automatically
  • Complaint feedback handled for you
  • Retries on temporary failures

Searchable message logs

Find any message and see its SMTP responses, retries and final status, so support can answer where an email went.

Every message has a record you can search: recipient, subject, status, SMTP responses, retry history and the final outcome. Support teams can answer 'did this email go out, and what did Gmail say' without asking an engineer.

  • Search by recipient, subject or message ID
  • Raw SMTP responses visible
  • Full retry timeline per message

How it works

Your appA CMS, framework, script or device sends over SMTP with TLS.
MigoSMTP relayAuthenticates the account, applies limits, signs with your DKIM key, queues, retries and throttles per mailbox provider.
Mailbox providersGmail, Outlook, Yahoo and others receive authenticated mail.
STEP 1

Add and verify your domain

Publish the SPF and DKIM records we give you and add a DMARC policy. Each record turns green when it is verified.

STEP 2

Create an SMTP account

Generate a username and a scoped key, then set the sending limit and optional IP allowlist for that app.

STEP 3

Point your app at MigoSMTP

Change host, port and credentials in your app or plugin, send a test message and confirm the result in the message log.

See it in action

SMTP relay in action

Each stage plays automatically. Select one to pause on it. Illustrative interface: all figures and addresses shown are sample data.

app.migosmtp.com/smtpSample data
Accounts
6
Auth
Scoped key
TLS
Required
Sample activityConnect
accountapp-billing created
keyscoped key issued
tlsSTARTTLS negotiated
testfirst message accepted
Limit
Per account
Allowlist
2 IPs
Pacing
On
Sample activityControl
limitdaily cap applied
allowlistoffice network added
rotateold key disabled
auditchange recorded
Queued
1,240
Retries
Backoff
Bounces
Suppressed
Sample activityDeliver
acceptedmessage queued
deferredretry scheduled
deliveredaccepted by provider
bounceaddress suppressed
Search
By recipient
Status
Final
History
Full
Sample activityTrace
searchorder confirmation
response250 accepted
retry1 attempt
resultdelivered
Control

Decide exactly who can send, and how much

Every SMTP account is separate, so you can rotate, limit or disable access for one app, environment or client without touching anything else.

  • Separate credentials and sending limits per account
  • IP allowlisting for each account
  • Rotate or disable access instantly
  • Usage by account in reports and logs
At a glance01 / 06
AuthenticationSMTP username and scoped key per account
EncryptionTLS required on every connection
LimitsPer account and per workspace
Access controlOptional IP allowlist per account
LogsSearchable message logs with SMTP responses
Compatible withAny SMTP-capable app, CMS or device
Overview

What is SMTP relay?

An SMTP relay is a mail server that accepts messages from your application over the standard SMTP protocol and delivers them to recipients' mailbox providers on your behalf. Your app authenticates, hands off the message and moves on. MigoSMTP runs the relay on MigoMTA, so we handle queuing, retries, authentication signing and provider-specific throttling instead of you running and tuning your own mail server. You keep your existing code and libraries and change only the host, port and credentials.

Anything that can speak SMTP can use the relay: web frameworks, CMS plugins, ticketing and billing tools, scripts, printers and scanners. Each app, environment or client gets its own SMTP account with separate credentials, sending limits and an optional IP allowlist, so you can rotate or disable one without touching the rest. TLS is required on every connection. Per-account limits stop one misbehaving app from using up your quota, and usage reports show which account sent what.

A relay matters for deliverability because mailbox providers judge the sending infrastructure as much as the content. A managed relay signs mail with your domain's DKIM key, applies consistent authentication, slows down when a provider defers, retries temporary failures and suppresses addresses that bounce or complain. When something does go wrong, the message log shows the raw SMTP responses and our AI assistant explains them in plain language, so your team and your support desk can see what happened and what to change.

Use cases

Common SMTP relay use cases

Move a WordPress site's mail

Replace unreliable server mail with an SMTP relay for WordPress. Enter the host and credentials in your SMTP plugin, and order confirmations and password resets stop landing in spam.

One account per client

Agencies can create a separate SMTP account for each client site, each with its own limits, so a compromised plugin on one site cannot exhaust the shared quota or damage another client.

Web apps and frameworks

Laravel, Django, Rails, Node and CodeIgniter apps already have SMTP settings. Point the mail configuration at the relay and keep your existing mailers, templates and queues.

Legacy apps and devices

Printers, scanners and older line-of-business software often only support SMTP. The relay gives them authenticated, encrypted sending with no firmware changes and no rewrite.

CRM, helpdesk and billing tools

Connect ticketing, CRM and invoicing software that sends its own email, so customer replies and receipts come from your authenticated domain instead of a shared server.

Staging versus production

Use distinct accounts for staging and production with different limits and allowlists, so test traffic never mixes with live reputation or customer data, and both stay easy to audit.

Choosing a method

SMTP relay or email API?

Both deliver through the same infrastructure. Pick the one that fits the software you are connecting.

SMTP relayEmail API
Best forExisting apps, CMS plugins, printers and legacy systemsNew code that wants templates, idempotency and richer responses
Code changesHost, port and credentials onlyIntegrate a REST client or SDK
Access controlPer-account credentials, limits and IP allowlistScoped API keys
VisibilitySearchable logs with SMTP responsesLogs plus webhook events

You can use both. Many teams keep SMTP for legacy tools and use the API for new services, under one workspace and one set of reports.

AI features

AI-assisted SMTP relay

Copilot

Bounce and deferral explainer

An AI copilot reads raw SMTP responses and logs, then explains in plain language why a message was deferred or bounced and suggests a fix. You decide whether to act.

Predictive

Anomaly alerts on volume

Models learn each account's normal sending pattern and flag sudden spikes or drops, such as a runaway loop or a compromised credential. You choose whether to pause the account or only be notified.

Risk

Credential risk scoring

Risk scoring highlights accounts with unusual behaviour or new source IPs and recommends rotating the password or tightening the allowlist. Nothing changes until you approve.

Assist

Migration assistant

Paste your old provider's settings and the assistant drafts the host, authentication and DNS changes needed to switch. A person reviews the checklist before any traffic moves.

AI features are assistive: they explain and suggest, and your team approves any change to accounts, limits or routing.

Best practices

Best practices for SMTP relay

Use one SMTP account per app

Separate credentials let you rotate, limit or disable a single application without disrupting others, and make usage reports easy to attribute.

Authenticate your domain first

Publish SPF and DKIM and a DMARC policy before sending real traffic. Unauthenticated mail is the most common reason for early spam placement.

Set per-account sending limits

A sensible cap contains damage from loops and leaked credentials. Start close to your real volume and raise it deliberately as you grow.

Allowlist your server addresses

If your app sends from fixed IPs, restrict the account to them. A stolen password is then useless from anywhere else.

Keep credentials out of code

Store the username and key in environment variables or a secret manager, never in a repository or a front-end bundle, and rotate them on a schedule.

Test before you cut over

Send a test message, then read the message log and the headers. Confirm TLS, the From address, DKIM and the final status before you move live traffic.

FAQs

SMTP relay: frequently asked questions

Still unsure about a setting? Our team can review your setup before you cut over.

What is an SMTP relay and how does it work?

An SMTP relay accepts email from your application and forwards it to the recipient's mail server. Your app authenticates with credentials over TLS and hands off the message. The relay then manages queuing, retries, signing and provider throttling, so you do not have to run your own mail server.

How do I set up an SMTP relay for my website?

Verify your sending domain, create an SMTP account in the dashboard and enter the host, port and credentials in your app or plugin. Send a test message and check the log. For WordPress, add the same settings to your SMTP plugin.

What is the difference between an SMTP relay and an email API?

SMTP lets existing software send with no code changes, using a standard protocol. An email API is a REST interface that suits new code and offers templates, idempotency and richer responses. Both deliver through the same infrastructure, so you can use each where it fits.

Can I use more than one SMTP account?

Yes. Create as many accounts as your plan allows, each with its own credentials, sending limits and optional IP allowlist. This isolates apps, environments and clients and lets you disable one without affecting the rest.

What happens to emails that bounce?

Bounces and complaints are recorded in your message logs. Hard bounces and complaints are added to your suppression list so you stop sending to them, and temporary failures are retried before they are treated as failed.

Do I need to set up SPF, DKIM and DMARC?

Yes, and we recommend doing it before you send real traffic. Authenticating your domain is the most important step for reaching the inbox. The dashboard shows the exact records to publish and marks each one when it verifies.

Can I send from a device that only supports basic SMTP?

Usually, if the device supports authentication and TLS. Create a dedicated account with a low sending limit and an IP allowlist for it. If the device cannot use TLS, talk to us about options before you connect it.

Does the AI assistant change my SMTP settings automatically?

No. The assistant explains bounces, flags unusual volume and suggests fixes, but your team approves any change to credentials, limits or routing. You can review its reasoning next to the underlying logs.

From the blog

Latest analysis, trends and market data

Start sending in minutes.

Create an account, add your domain and send your first email.