Custom HTML email builder
Utilize your coding skills and create custom emails with our HTML email builder. Design responsive and dynamic email templates that meet your unique requirements while showcasing your brand identity!
It's easy to create new templates and send them via the API. The customer support is great! They are very fast to reply to your request with a solution.
Work faster with our HTML email editor
Save time and speed up your workflow with specialized functionality including syntax highlighting, autocompleting tags and error tagging. Easily add variables to personalize your emails for recipients at scale.
Create HTML emails that work in all email clients
MailerSend’s automatic CSS inline feature formats your CSS so it works with email clients that strip out CSS style blocks. Have confidence that your emails will be properly displayed for all recipients.
Save time with ready-to-use snippets
Copy and paste pre-made snippets to effortlessly add template elements, such as conditional tags, columns, buttons and footers. Save time on template building to use elsewhere.
Import existing code
Have a pre-existing HTML email template? You can easily import the code to the HTML email builder via file upload or URL to edit or start sending.
Preview HTML emails before sending
Create professional email designs that look good in Gmail and Outlook by previewing them in real time. Send test emails to check how your custom HTML code, CSS, fonts and GIFs appear in different email clients.
Split test email templates
Learn which content, subject lines and CTAs resonate more with recipients by split testing up to 5 variants of a template. Use your results to inform changes and improve performance.
Send quickly with pre-built code
curl -X POST \
https://api.mailersend.com/v1/email \
-H 'Content-Type: application/json' \
-H 'X-Requested-With: XMLHttpRequest' \
-H 'Authorization: Bearer {place your token here without brackets}' \
-d '{
"from": {
"email": "your@email.com"
},
"to": [
{
"email": "your@client.com"
}
],
"subject": "Hello from MailerSend!",
"text": "Greetings from the team, you got this message through MailerSend.",
"html": "Greetings from the team, you got this message through MailerSend."
}'
use MailerSend\MailerSend;
use MailerSend\Helpers\Builder\Recipient;
use MailerSend\Helpers\Builder\EmailParams;
$mailersend = new MailerSend(['api_key' => 'key']);
$recipients = [
new Recipient('your@client.com', 'Your Client'),
];
$emailParams = (new EmailParams())
->setFrom('your@email.com')
->setFromName('Your Name')
->setRecipients($recipients)
->setSubject('Subject')
->setHtml('Greetings from the team, you got this message through MailerSend.
')
->setText('Greetings from the team, you got this message through MailerSend.');
$mailersend->email->send($emailParams);
const Recipient = require("mailersend").Recipient;
const EmailParams = require("mailersend").EmailParams;
const MailerSend = require("mailersend");
const mailersend = new MailerSend({
api_key: "key",
});
const recipients = [new Recipient("your@client.com", "Your Client")];
const emailParams = new EmailParams()
.setFrom("your@email.com")
.setFromName("Your Name")
.setRecipients(recipients)
.setSubject("Subject")
.setHtml("Greetings from the team, you got this message through MailerSend.
")
.setText("Greetings from the team, you got this message through MailerSend.");
mailersend.send(emailParams);
package main
import (
"context"
"fmt"
"time"
"github.com/mailersend/mailersend-go"
)
var APIKey string = "Api Key Here"
func main() {
ms := mailersend.NewMailersend(APIKey)
ctx := context.Background()
ctx, cancel := context.WithTimeout(ctx, 5*time.Second)
defer cancel()
subject := "Subject"
text := "Greetings from the team, you got this message through MailerSend."
html := "Greetings from the team, you got this message through MailerSend.
"
from := mailersend.From{
Name: "Your Name",
Email: "your@email.com",
}
recipients := []mailersend.Recipient{
{
Name: "Your Client",
Email: "your@client.com",
},
}
variables := []mailersend.Variables{
{
Email: "your@client.com",
Substitutions: []mailersend.Substitution{
{
Var: "foo",
Value: "bar",
},
},
},
}
tags := []string{"foo", "bar"}
message := ms.NewMessage()
message.SetFrom(from)
message.SetRecipients(recipients)
message.SetSubject(subject)
message.SetHTML(html)
message.SetText(text)
message.SetSubstitutions(variables)
message.SetTags(tags)
res, _ := ms.Send(ctx, message)
fmt.Printf(res.Header.Get("X-Message-Id"))
}
from mailersend import emails
mailer = emails.NewEmail()
mail_body = {}
mail_from = {
"name": "Your Name",
"email": "your@domain.com",
}
recipients = [
{
"name": "Your Client",
"email": "your@client.com",
}
]
mailer.set_mail_from(mail_from, mail_body)
mailer.set_mail_to(recipients, mail_body)
mailer.set_subject("Hello!", mail_body)
mailer.set_html_content("Greetings from the team, you got this message through MailerSend.
", mail_body)
mailer.set_plaintext_content("Greetings from the team, you got this message through MailerSend.", mail_body)
mailer.send(mail_body)
require "mailersend-ruby"
# Intialize the email class
ms_email = Mailersend::Email.new
# Add parameters
ms_email.add_recipients("email" => "your@client.com", "name" => "Your Client")
ms_email.add_recipients("email" => "your@client.com", "name" => "Your Client")
ms_email.add_from("email" => "your@domain.com", "name" => "Your Name")
ms_email.add_subject("Hello!")
ms_email.add_text("Greetings from the team, you got this message through MailerSend.")
ms_email.add_html("Greetings from the team, you got this message through MailerSend.")
# Send the email
ms_email.send
Manage your templates in one place
Organize your transactional email templates into categories like CRM and e-commerce, then reuse favorites by duplicating them. Set default settings like subject, sender and email address for easy, automatic sending.
Award-winning customer support
MailerSend’s friendly and knowledgeable customer support team is on-hand 24/7 to help you with your account and sendings. Get help with setting up, advanced features and troubleshooting your account.
Frequently Asked Questions
What options are available for creating templates?
In addition to the custom HTML email creator, there is also the user-friendly drag and drop email editor and rich-text email editor available. All members of your team can create beautiful emails with the the free email templates or from scratch, no coding skills needed.
Does MailerSend have ready-made templates available?
Yes, you’ll get access to a rich gallery of professionally designed, responsive transactional email templates ready for you to customize and make your own.
How can I create HTML emails in MailerSend?
You can easily create HTML emails by selecting the HTML editor when you go to create a new template. From there, you can choose a pre-made HTML template to get a headstart, build a template from scratch, or import the HTML code for a pre-existing template via file upload or URL.
Can I use MailerSend for email marketing campaigns?
MailerSend is a transactional ESP. While you could send email newsletters and other campaigns, we recommend using a dedicated email marketing service, and keeping transactional emails separate for maintaining maximum deliverability and performance.
Can I add dynamic content to templates built on MailerSend?
You can easily send personalized, dynamic emails to multiple recipients via a single email. Simply add dynamic content to your custom HTML template, or use the dynamic content blocks in the drag and drop email builder.
More features to explore
Send emails
Email delivery
Enjoy the flexibility of sending a few emails or scaling quickly to send a few million.
Transactional emails
Intuitively-designed tools allow anyone to contribute, while an advanced infrastructure lets you scale fast.
SMTP relay
Use Simple Mail Transfer Protocol when you want to quickly send emails using a reliable Internet standard.
Email API
Start sending and tracking your emails with our easy API integration process and clean documentation.
Dynamic email templates
Build one-to-one customer relationships on a mass scale using a single email template.
Email verification
Verify a single email address or upload an entire email list to verify in bulk.
Email address validation API
Keep your recipient list clean and maintain great deliverability by automatically verifying incoming email addresses with the email address validation API.
Control your sendings
Webhooks
Get notified as email events happen so your integration can automatically trigger reactions.
Advanced email tracking
Every email is a learning experience. Monitor your email performance to find what works best.
Manage the unsubscribe page
Whether people are unsubscribing, give them a compelling reason to stay.
Email suppression list management
Protect your sending reputation by adding email addresses and domains that you should not send to.
Activity and performance logs
Track the results
Create emails
Drag & drop email template builder
Our drag & drop email editor empowers you to create professionally-designed transactional emails.
Rich-text email editor
Create plain text emails with the formatting capabilities of HTML. Add links, images, bullet points and style text with ease.
Email split testing
Email split testing will improve engagement with your transactional emails by helping you learn what your customers want more.
Send surveys
Understand your customers and users on a deeper level and gain valuable insights to help you improve your product and customer experience with surveys.
Control your account
User management
Invite your team members to collaborate on projects by assigning roles and granting permissions.
File manager
Streamline your workflow by organizing and keeping all your files in one place in the cloud.
Multiple domains
Use multiple domains to manage different brands or products with one MailerSend account.
Dedicated IP
Take control of your sending reputation with your own dedicated IP address and optimize your sendings for improved deliverability.
MailerSend iOS app
Access email activity, domain settings, and analytics on the go with MailerSend iOS app.
Start designing custom templates now
Try MailerSend for free: Design your templates and send up to 100 emails with a trial domain. Add your own domain to get 3,000 emails/month free and start sending.