SendPulse does not publish an SMTP-only WordPress plugin. Its listed WordPress plugins cover the marketing side – a newsletter subscription form, a popup builder, web push notifications, a WooCommerce sync, a chatbot embed – none of which routes wp_mail(). To send transactional email through SendPulse from WordPress, install WP Mail SMTP, FluentSMTP, or Post SMTP in Other SMTP mode and point it at smtp-pulse.com:587 with the credentials from the SendPulse dashboard.
For the case for or against SendPulse as the sending service (the 12,000-a-month free tier, the $7.85 paid entry point, the mandatory profile approval before SMTP activates, the EU-resident sending, the steep price step at 100K/month), start at the SendPulse review. This page is the setup walk-through. It assumes the decision to use SendPulse has already been made.
Which plugin to install
Three plugins reach SendPulse in Other SMTP mode. All three use the same SMTP host, ports, and credentials; the choice comes down to what the plugin does around the send.
WP Mail SMTP does not ship a dedicated SendPulse mailer in its picker, but its Other SMTP option reaches smtp-pulse.com:587 with the SMTP credentials copied from the SendPulse dashboard. Pick it when the site benefits from WP Mail SMTP’s plugin-side logging (free), setup wizard, and on the Pro tier, backup connections and smart routing. This is the default recommendation for most WordPress operators.
FluentSMTP reaches SendPulse in generic-SMTP mode on the same host, port, and credentials. FluentSMTP is free and open-source with no upsell path, and its per-address routing rules are cleaner than WP Mail SMTP’s free tier. Pick it when the site runs multiple senders and needs per-address routing without paying for WP Mail SMTP Pro.
Post SMTP reaches SendPulse in generic-SMTP mode with the same credentials. Its differentiator is real-time failure notifications (Chrome push, Slack, Teams, and SMS on the paid tier); if a bounced order confirmation needs to page an operator within minutes, Post SMTP is the plugin.
For the plugin-by-plugin comparison in the general case (not SendPulse-specific), see best WordPress SMTP plugins.
Before touching WordPress
SendPulse gates the SMTP endpoint behind two upstream requirements: a verified sending domain with DKIM and SPF live in DNS, and a manual profile approval by SendPulse’s review team. Both have to clear before the SMTP credentials will authenticate. Neither is instant, and the second one can take up to 24 hours.
Register and wait for profile approval
Sign up at sendpulse.com and complete the account profile. SendPulse asks what the SMTP will be used for, how the email addresses were collected, and whether the site includes an unsubscribe link. The account is created immediately, but the SMTP endpoint refuses authentication until a SendPulse reviewer clears the profile. Their published SLA is up to 24 hours; in practice it is often faster, but any WordPress project that needs transactional email working the same day should not pick SendPulse.
If SMTP appears to be configured correctly on the WordPress side but every test send returns a 535 authentication error, the profile approval is the most likely explanation. The approval status is visible in the SendPulse dashboard under Settings; check there before working through the plugin.
Verify the sending domain and publish DKIM and SPF
In the SendPulse dashboard, navigate to Settings > SMTP > Sender Address (Domain) and add the domain the WordPress site sends From:, meaning example.com, not mail.example.com. SendPulse returns two records to publish: a TXT record at sign._domainkey.<your-domain> containing the DKIM public key, and an SPF include to add at the domain apex.
The DKIM record is a TXT entry, not a CNAME – SendPulse hosts the key value directly rather than delegating to a rotation endpoint the way MailerSend or SES do. The selector name is fixed at sign, which is unusual (most providers use k1, s1, or their own selector prefixes). If the domain already has a TXT record at sign._domainkey from a previous provider, publishing SendPulse’s record on top of it breaks the earlier signature; retire the previous provider’s DKIM before publishing SendPulse’s, or delete the old TXT record. The full DKIM setup steps are documented at
sendpulse.com/knowledge-base/smtp/how-can-you-configure-dkim-sendpulse-smtp.
The SPF include adds include:mxsspf.sendpulse.com to the domain’s existing SPF record at the apex. If the domain already has an SPF record covering Google Workspace or another sender, edit it to add the include; do not create a second SPF record at the apex, because a domain with two SPF records at the same name is a permanent SPF error under RFC 7208 regardless of what the records say. If the domain has no SPF record, publish v=spf1 include:mxsspf.sendpulse.com +a +mx ~all, which is the exact string SendPulse recommends. The SPF merger folds the SendPulse include into an existing string and counts the DNS lookups against RFC 7208’s ten-lookup ceiling before you publish.
Return to the SendPulse dashboard and confirm both records verify. Propagation is typically minutes when DNS is fast and up to several hours on slow nameservers. SendPulse’s documentation warns that DKIM and SPF verification can take up to several hours after DNS publish; the dashboard reports each record’s status separately.
DMARC is not SendPulse-specific but is required for domains sending more than 5,000 messages a day to Gmail or Yahoo under their 2024 bulk-sender rules. Publish _dmarc.example.com as TXT v=DMARC1; p=none; rua=mailto:[email protected] as a safe starting point; tighten to p=quarantine or p=reject once reports show no legitimate mail failing alignment. The bulk sender authentication checklist has the full order of operations.
Once DKIM and SPF verify in the SendPulse dashboard, the DNS auth checker reads how the DKIM TXT at sign._domainkey and the apex SPF resolve from a receiver’s perspective, which catches nameserver caches and mistyped selectors before real traffic does.
Retrieve SMTP credentials
Once the profile is approved and at least one domain has verified DKIM and SPF, the SMTP credentials appear in the SendPulse dashboard under Account Settings > SMTP > General. The dashboard shows the SMTP server address, port, login, and password on the same screen. SendPulse’s SMTP credentials are per-account, not per-domain – the same login and password authenticate for any sender address on any of the domains the account has verified, up to the plan’s sender-address and domain caps (three addresses and two domains on Free, five domains on the SMTP 25K and 50K paid tiers, unlimited from 100K up).
For the API path (a custom integration hitting https://api.sendpulse.com/smtp/emails), the equivalent step is Account Settings > API and copying the USER_ID and SECRET; those authenticate against SendPulse’s REST endpoint rather than the SMTP server. The mailer plugins on this page use SMTP, not the API, so the SMTP credential pair is the default path unless the site has a specific reason to prefer HTTP.
Configuring the mailer plugin
WP Mail SMTP install is standard: Plugins > Add New > search WP Mail SMTP > Install > Activate. Deactivate any other mailer plugin still active on the site before enabling WP Mail SMTP – two mailer plugins overriding wp_mail() at once is the most common cause of an install appearing to do nothing.
Under WP Mail SMTP > Settings > Mailer, pick Other SMTP. Set SMTP Host to smtp-pulse.com, Encryption to TLS, SMTP Port to 587. Enable Authentication and paste the SMTP login from the SendPulse dashboard as SMTP Username; paste the SMTP password as SMTP Password. Set From Email to a verified sender address at a domain SendPulse has cleared, and From Name to the site or brand name. A From: address at an unverified domain or a sender not on the SendPulse allow list is the most common first-day rejection.
If the WordPress host blocks outbound port 587, SendPulse also listens on 465 with implicit SSL and on 2525 as a plain fallback. Change the port and the encryption setting together: 465 pairs with SSL, 587 with TLS/STARTTLS, 2525 with None for the encryption dropdown. The WordPress email troubleshooter has the outbound-port test if none of the three ports connect.
The WP mail config generator returns the paste-ready SMTP block for the plugin fields, so the choice becomes which mailer, not which fields to populate.
Save. WP Mail SMTP does not run a validate-connection check on save; the Email Test tab is the confirmation. Send a test message to an address you can read. WP Mail SMTP round-trips the send through SendPulse’s SMTP server and reports success or the SMTP error in the admin. A success reply confirms the credentials, sender identity, and outbound port are wired up correctly; verify the message actually arrived at the destination before treating the setup as done, and open the message headers to confirm Authentication-Results shows dkim=pass for sign._domainkey.<your-domain> and spf=pass for the sending IP. If either fails, the DNS records did not propagate or were entered incorrectly at the DNS host; return to the SendPulse dashboard’s SMTP > Sender Address page and re-check.
For FluentSMTP, the equivalent configuration lives under FluentSMTP > Connections > Add Another Connection > Other SMTP with the same host, port, encryption, and credentials. Post SMTP uses its own setup wizard with the same field values.
Sending the first test and reading the failure
Three error patterns worth naming.
535 5.7.8 Authentication credentials invalid. Three possible causes on SendPulse specifically. First, the profile approval has not cleared yet – the SMTP credentials are visible in the dashboard from account creation, but they do not authenticate until a SendPulse reviewer approves the profile. Check the account status in SendPulse’s dashboard before assuming the credentials are wrong. Second, the SMTP login or password was mistyped or pasted with a leading space; copy them again from Account Settings > SMTP > General. Third, the sender address in the WordPress plugin’s From Email field is not on the account’s approved sender list; add it under SMTP > Sender Address or use one of the addresses the dashboard shows as approved.
550 or 553 sender-verification failures. The from-address is at a domain SendPulse has not verified, or the DKIM TXT record at sign._domainkey has not propagated. Check the SendPulse dashboard’s SMTP > Sender Address page shows the domain and its DKIM record as verified. [email protected] is a different domain to [email protected] under DKIM alignment rules; verify the domain the site actually sends from, not the domain the site is hosted at.
Connection timeouts or SMTP connect errors. The WordPress host blocks outbound SMTP entirely. Some shared hosts block outbound 25, 465, and 587 by default and require a support ticket to open them; SendPulse’s third port at 2525 works around some (but not all) of these blocks. If none of the three ports connect and the host will not open outbound SMTP, the practical option is switching to a provider whose WordPress plugin uses HTTPS instead of SMTP – SendPulse’s own API is HTTPS, but no mailer plugin routes it through SendPulse’s REST endpoint, so at that point the choice is a different provider (SMTP2GO, Postmark, or Amazon SES) or a custom API integration.
The SendPulse dashboard’s SMTP > Statistics view shows every send with delivery, opens, and any bounce or complaint reason, and retains twelve months of history on every plan. That is longer than most competitors publish – MailerSend clears logs at seven days on Starter and thirty on Professional, Postmark at forty-five days. Point the Statistics view at the last hour and the test sends appear near the top; a message that shows Delivered there but has not arrived at the destination is a receiver-side delivery decision, not a SendPulse problem, and the message headers are where the reason lives.
SendPulse-specific things to know
The profile-approval step is the single biggest operational quirk. SendPulse describes the approval as a review of the sender’s identity and use case; in practice, sites that register with a business email, describe the transactional use case clearly (order confirmations, password resets, form notifications), and confirm the site includes an unsubscribe link tend to clear the review in a few hours. Sites that register with a free mail provider (Gmail, Outlook) or leave the profile fields sparse tend to see longer delays or a request for more information.
The free tier’s real limits are hourly and daily, not monthly. Twelve thousand messages a month sounds generous, but the 50-per-hour and 400-per-day sub-caps are the ones a busy WooCommerce store will bump into first. A store processing more than roughly 15 orders an hour during a sale can rate-limit itself against the 50-per-hour cap when order-confirmation, shipping-notification, and password-reset emails all fire off inside the same window.
Log retention is one year on every plan. Unlike MailerSend or Postmark, SendPulse does not tier log retention by plan – the free tier gets the same twelve-month history as Enterprise. For a site that needs long log retention as a compliance requirement rather than a debugging convenience, SendPulse is unusually generous.
The EU-resident sending infrastructure is worth calling out for sites with an EU data-residency requirement (some public-sector sites, some GDPR-focused nonprofits, some sites operating under national data-protection guidance). SendPulse’s SMTP relay resolves into AWS’s Frankfurt region and the platform documents its transactional infrastructure as EU-based. A domain with a US-only data policy should look elsewhere.
The dedicated IP tier starts at 100,000 messages per month. Below that, sends share the platform’s outbound pool with other SendPulse customers. As with any provider, a dedicated IP is worth the money only when the monthly volume clears the roughly 50,000-message threshold below which the IP has too little traffic to build its own reputation – which means the SendPulse plan where a dedicated IP actually earns its keep is 100K or above by both the pricing tier and the deliverability math.
Webhooks are supported for delivered, opened, clicked, bounced (hard and soft), spam-marked, unsubscribed, and resubscribed events. SendPulse batches webhook deliveries every thirty seconds or after five hundred events, whichever comes first, which is coarser than Postmark’s or MailerSend’s near-real-time firing; sites that need immediate feedback on a bounce should either poll the API or accept the batching delay.
When another provider fits better
If the priority is transactional email working the same day the account is created, SendPulse’s 24-hour profile-approval window rules it out; SMTP2GO and MailerSend both activate SMTP immediately once the sending domain verifies. If the site is on the AWS side of the fence and cost per message dominates the decision, Amazon SES at $0.10 per 1,000 messages is cheaper than SendPulse at every paid tier. If deliverability at high volume is the priority and the budget supports the price step, Postmark is purpose-built for that. The SMTP cost calculator runs the crossover math against a site’s actual monthly send volume.
Related
When you are ready to go further:
- SendPulse review covers the case for and against SendPulse as a sending service, the pricing tiers, and the DNS reference.
- WP Mail SMTP review is the general-purpose mailer plugin most operators will pair with SendPulse.
- FluentSMTP review is the free, open-source alternative with cleaner per-address routing.
- Best WordPress SMTP plugins is the general-purpose plugin comparison, not SendPulse-specific.
- WordPress email setup guide places SendPulse inside the wider WordPress email stack.
