Updated 2026-10-08
How to Send Email From n8n Through SMTP
In n8n, add a Send Email node, create an SMTP account credential with Host smtp.bulko.io, Port 587, SSL/TLS turned off (the connection upgrades with STARTTLS) and your Bulko username and password, then set From Email to an address on your domain. For port 465, turn SSL/TLS on instead.
n8n SMTP settings
| Field | Value |
|---|---|
| User | Your Bulko SMTP username, for example smtp_xxxxxxxxxxxxxxxx |
| Password | Your Bulko SMTP password from Dashboard > SMTP Access |
| Host | smtp.bulko.io |
| Port | 587 (or 2525; or 465 with SSL/TLS on) |
| SSL/TLS | Off for 587 and 2525, On for 465 |
| Disable STARTTLS | Off (leave unchecked so 587 and 2525 are encrypted) |
| Client Host Name | Leave empty |
| From Email (node) | Name <[email protected]> on a domain you control |
Step-by-step setup
- Get SMTP credentials on the Bulko SMTP Relay page. After payment the username and password are shown in Dashboard > SMTP Access and sent to your email.
- Open your workflow in n8n, click + and add the Send Email node. Choose the Send operation (use Send and Wait for Response only for approval flows).
- In Credential to connect with, select Create new credential. n8n opens the SMTP account credential form.
- Fill in User and Password with your Bulko credentials, Host
smtp.bulko.ioand Port587. Leave SSL/TLS off: on port 587 the connection starts plain and is upgraded with STARTTLS. Leave Disable STARTTLS off and Client Host Name empty. Save the credential. - Back in the node, set From Email (you can include a name, for example
Acme Alerts <[email protected]>), To Email (comma-separated for several recipients, or an expression such as{{ $json.email }}), Subject and Email Format (Text, HTML or Both). - Under Options, add Reply To if replies should go to a different mailbox, CC Email or BCC Email if needed, and Attachments with the name of the binary property. Turn off Append n8n Attribution if you do not want the footer line "This email was sent automatically with n8n".
- Optional: verify your domain in Sending Domains and add the DKIM TXT record (selector
bk1) and thebnc.yourdomain.comCNAME so SPF, DKIM and DMARC align.
The same SMTP account credential works for every Send Email node in your instance, on n8n Cloud and on self-hosted n8n. No environment variables are needed for workflow emails. Note that Bulko is outgoing only, so the Email Trigger (IMAP) node cannot connect to it; keep using your normal mailbox for incoming mail.
n8n SMTP credential and Send Email node values
Credential: SMTP account
User: smtp_xxxxxxxxxxxxxxxx
Password: your-bulko-smtp-password
Host: smtp.bulko.io
Port: 587
SSL/TLS: off (587 and 2525 upgrade with STARTTLS)
Disable STARTTLS: off
Client Host Name: (leave empty)
Alternative: Port 465 with SSL/TLS on (implicit TLS)
Node: Send Email (Operation: Send)
From Email: Acme Alerts <[email protected]>
To Email: {{ $json.email }}
Subject: Your report is ready
Email Format: HTML
Options > Reply To: [email protected]
Send a test email
Point To Email at an inbox you can read, then click Execute step on the Send Email node. On success the node output shows the SMTP server response, including accepted with your recipient and a response line starting with 250. If the node fails, n8n shows the SMTP error text in the output panel: compare it with the table below. Open the received message, view the original headers and check that SPF and DKIM pass before you switch the workflow to production.
Troubleshooting
| Problem | Fix |
|---|---|
| Greeting never received or connection timeout | Outbound port 587 or 465 may be blocked on your server or Docker host. Try Port 2525 with SSL/TLS off, or open the port in your firewall. |
| wrong version number or SSL routines error | SSL/TLS does not match the port. Use SSL/TLS off with 587 or 2525, and SSL/TLS on with 465. |
| Mail is sent without encryption or the server asks for STARTTLS | Make sure Disable STARTTLS is off. With it on, ports 587 and 2525 stay unencrypted and authentication can be refused. |
| 535 Authentication failed / Invalid login | Recheck User and Password in the SMTP account credential, copied from Dashboard > SMTP Access without spaces. The username looks like smtp_xxxxxxxxxxxxxxxx, not your email address. More causes: bulko.io/en/smtp-errors/535/. |
| 554 5.7.1 rejected | Bulko's content filter blocked the message as phishing, malware, impersonation or a scam. Check the generated content, especially links and sender name produced by earlier nodes. |
| Errors after many items in one run | Bulko allows 2,000 emails per day per SMTP account by default. Batch large lists with the Loop Over Items node and a Wait node, or ask [email protected] for a higher limit. |
FAQ
Should SSL/TLS be on or off in the n8n SMTP credential?
Off for port 587 or 2525, because those ports use STARTTLS after connecting. On for port 465, which uses implicit TLS from the first byte.
Can I use Bulko with the n8n Email Trigger (IMAP) node?
No. Bulko SMTP is outgoing only and has no inbox or IMAP. Use your regular mailbox for the trigger and Bulko for sending.
Does this work on n8n Cloud and self-hosted n8n?
Yes. The Send Email node and SMTP account credential are the same in both. On self-hosted n8n, make sure the server can reach smtp.bulko.io on the chosen port.
How many emails can an n8n workflow send?
The default limit is 2,000 emails per day per SMTP account, which [email protected] can raise. Packages are pay-as-you-go: $5 for 5,000, $15 for 20,000, $30 for 50,000 or $60 for 150,000 emails, and unused emails never expire.
Can I use a Gmail address as From Email?
Use an address on a domain you control. A gmail.com or outlook.com From address sent through another server fails DMARC checks and is likely to be rejected or filtered.
Get SMTP credentials for n8n
One-time payment by card or crypto, no subscription. Unused emails never expire. 2,000 emails per day per SMTP account.
What you can send: Acceptable Use Policy.