Send over 1000 emails per day via gmail, amazon sns, or own smtp - email

I'm trying to code a mail sender service. Previously I built a simple desktop application which uses my shared hosting mail server to send html mails. But now it's not enough and I plan switching to Gmail or Amazon SNS.
For Gmail I have to use min 15 different accounts to be able to send up to 1500 emails. Also sometimes gmail blocks the accounts and I have to login and change the passwords.
I've just signed up for Amazon SNS but it does not looks to what I need. You first have to subscribe users then send emails. Also emails are sent from no-reply#sns.amazonaws.com addres. Is this the all service or I can configure it as I wish?
I also read some suggestions to lookup the MX records for the destination mail servers How to send 1000+ emails per day using an ASP.NET Web site
I want a minimum cost solution. So which is best and is there a better solution?

We use Mailjet for 3 sites now. Initially we used the free plan (6000 / month) to test the set-up and reporting. Now the 3 sites are run on it. Very satisfied - especially since they offer dedicated IP monitoring. According to us, it's rather easy to install. SMTP very easy and one of the sites integrates with the API. I'd recommend

There are a multitude of services available for you that will allow you to send 1500+ emails per day and will get the headache of email deliverability off your plate.
PostageApp (Ours!)
SendGrid
Postmark App
Deliver
Mailjet
Take a look and see which fit your needs and have the implementation method that you are looking for. They each have a free service, so it's definitely easy to try.
(Full Disclosure: I am the Product Manager of PostageApp. Let me know if you have any questions!)

A relatively new option for transaction emails that seems pretty good from Mailchimp:
Mandrill
Looks like it has decent integration with their main service as well.

You can utilize some premium services to send 1000 emails here, daily for free
Remember, you should not spam in the services listed, just you create multiple lists in all accounts & send emails daily.

Related

How to send any amount of emails? My own server or third party service?

I am working on a project where I want to allow my clients send a large amount of emails at any given time.
The issue I am having is that usually hosts have a very limited amount of emails allowed to send.
At the moment I am using third party service called Mailgun and it works fine but it is rather expensive since I have to send up to 300 000 emails per months and the number is growing.
Even if I rent a virtual server for example on scaleway where I have to set everything up myself, they have limitations.
Or are those limitations if I use their smtp?
Can anyone clear this one for me?
So my questions are:
Can I create my own smtp or any other way to send emails?
Is it possible to set up my own server and email server and send emails without any limitations?
If yes can you give me a tutorial or a course on that?
Or is it too much of a headache to do it myself and I should stick to third party services?
Thank you!
SMTP is not and headache but IP reputation management is. That's why most hosting providers limit SMTP usage and third party service florish.
As for the question "should I stick to third party ?", there is no right answer possible, only opinions:
If your emails are information requested by users (like forgot my password stuff, or notifications) you could use your own servers, because your IP reputation is going to be good.
If you send marketing stuff, all I can say is that my biggest customers all rely on third party services. Probably for good reasons

How to acheive high email deliverability without sharing data with 3rd party ESP?

We are hosting customer data on behalf of companies/clients, and one of our tasks is to send out a very specific transactional email from us (with our email address as sender and reply-to) to clients customers.
We are trying to move away from storing the personal part of a customers data, including his email address. Of course, in order to be able to send out an email to a customer we need to at some point have access to the email address, but in our view it's a step in the right direction to retrieve the email address from the client during a session instead of retreiving it from our own database.
The problem now is that our unwillingness to have email addresses stored anywhere rules out using email service providers like Sendgrid. Instead we need to send out lots of emails through our own server, and this might hurt deliverability. I've been looking for a kind of "self hosted Sendgrid". One who will enable us to send bulks of emails, and one we can tweak to not store the sent emails.
One solution I've found is sendy.co who defines themselves as:
Sendy is a self hosted application that runs on your web server.
This sound promising, but then I read that emails are sent through Amazon's cloud:
Sendy uses multi-threading to send emails via Amazon SES.
I suppose this leads us back where we started, because then Amazon is storing the email addresses.
As I understand, the high deliverability that ESPs achieve is not only caused by state-of-the-art email headers, but also by their servers being recognized by Google/Gmail, Microsoft and other email hosts. So maybe a high deliverability just isn't possible without an ESP. But is there an alternative approach that lets us acheive relativly high deliverability without needing to involve a 3rd party server to do the sending?
The reason that people tend to pay for this service is because it is reasonably difficult/complicated/time consuming. If sending this email is a core part of your business, you'll want to hire a deliverability engineer to handle this. If it's not, I'd start by contacting the various transactional ESPs and see if you can find one that has an enterprise offering they're willing to tailor to this use case.
I think that I'm a little late to this. I hope that you figured out your question by now.
If you haven't then:
One alternative that you can try is to host your own server with an on-premise option. I would check out SocketLabs Hurricane MTA.
SocketLabs is a cloud ESP, like Sendgrid. But they also have a powerful on-premise option.
https://www.socketlabs.com/blog/introducing-hurricane-mta-3-0/

How to create an email account and set up email receiver when using AWS EC2 and SES?

So we are planning to use AWS SES for sending emails. But how do we set up the email receivers? And how do we create an email accounts? When activating AWS SES, it asks to verify an email account (eg. help#example.org)...
I tried to create a mail server on one of the instances using postfix following this article: http://flurdy.com/docs/postfix/, but it's not easy at all... Does anybody know any better alternatives?
Thanks.
SES is for sending email only. As you note, you must have some other way set up to receive email at least at the "From" address you intend to use, because Amazon will verify it before letting you send.
While you certainly could set up an email server and domain on an EC2 instance, it's very complicated. I recommend that you get an email service for just that purpose. If you only need a single address for all your messages, just get a free address from Google, Microsoft, Yahoo, etc.
If you need multiple addresses, consider getting Google Apps for Business, either for an existing or new domain name (it's easiest to set up if you have it register a new domain name for you). It's no longer free, but it's still quite cheap. A single user account can receive emails for every address in the domain, it's flexible, and it's reliable. It's a good companion to using SES for sending automated emails.
Use Amazon WorkMail if you prefer AWS. Gmail for work, Office 365, Hostgator, are some other examples. FYI, none of these providers simply provide domain emails. They come bundled with many other things such as chat clients, calenders, etc. Pricing of these services depends on what other things they are bundled with.
$4/user/month for AWS
$5/user/month for Google
$5/user/month for Microsoft
Since you are in AWS cloud, I will tell you a few things about Amazon WorkMail.
You get your own domain and 50GB of storage per user.
You get calendars for free.
You cannot use just any desktop mail client. You have to either use Outlook, or Mac's mail client, or the web interface. This is their weakest point. However, including other IMAP clients is in their roadmap (I guess atleast a year).
Integrates nicely with SES.
Important links:
FAQ page.
Features page.
There are many more features such as remotely removing emails from a device, managing your users, and so on.
What I can recommend you is to use Amazon WorkMail because they almost provide all the features supported by others, and you are tied with AWS anyway. AWS also recently launched Workspace and Workdocs (both separately billed) that will allow you to create a complete work solution. These services also combine nicely with IAM.

How can I test an email-sending script that will send out to over 1,000 users?

I have a PHP web app that is going to send out about 1,000 emails. I would love to test the performance beforehand. Is there any kind of service that provides dummy email addresses to send to, for this kind of testing? I can't find anything that's not just a general bulk-email service. The key here is I just want dummy addresses to send to.
If you have the ability to just purchase a domain name from a hosting service, I know at least 1&1 gives you like 2500 email addresses per domain so you could literally spam yourself to death and not worry about any other 3rd party. You can pick up a domain name for like
When you say "test the performance", do you mean you want to know about your deliverability rates, or how your emails look?
Deliverability Rates
This is entirely dependent on your SMTP server and the reputation of the IP that it will be sending from along with your domain's SPF records and the content of your email. To maximize this, I would recommend using a marketing email service such as MailChimp or MadMimi.
Appearance of Emails
You could always just send yourself a test email to see how it looks. An alternative is to use a service like PostageApp that has a built in template designer that has both an easy email preview function and a test send email function.
(Full Disclosure: I am the Product Manager of PostageApp.)
If you use "Post Hoc" you can send email to an unlimited number of email addresses. Post Hoc acts like an SMTP server, and receives the email messages that you are sending, but it does not forward them on anywhere. You do not need to set up any email inboxes ahead of time, so there is no problem if you have 1000 different unique email addresses. They do not need to be from a single domain -- you can use any email address you want. It stores the email messages received so that you can inspect them if necessary. You would run it locally so that there is no concern about network problems, and it is very low overhead since it does almost no processing of the email. This way, the performance measure will be mostly the sending side processing. Best of all, it is open source and freely available:
Find it on GitHub: GitHub for Post Hoc
Also see the blog post: PostHoc: Testing Apps that Send Email

Bulk email configuration - phplist + sendgrid or some suggestions on process

I have a large user list which is distributed in two groups. 1. Phplist 2. Vbulletin
Phplist has around 50,000 users while vbulletin has some 70,000 users. These all are double optin safe lists and completely legal.
We have a dedicated server and use phplist tos end mails but a single mails takes 3 days to process given phplist limitations. I am very keen to use Sendgrid / Amazaon SES or something so that i can shoot pur monthly newsletters much faster ( we have some 20 news letters including jobs, announcements login etc).
At present we send emailes from a different domain than the main one and its like www.mydomainnewsletter.com while main site and corporate emails are www.mydomain.com ( my main site is on drupal)
Now how do I build a process where all transaction and corporate mails go from mydomain.com while all newsletters go from mydomainnewsletters.com. users shall subscribe and unsubscribe at mydomain.com and this email list shall be synchronized with www.mydomainnewsletter.com.
My server has qmail intalled. So can somebody guide me through the process. I am not techie at all.
You have a few options, that I can think of. I definitely don't think you should do this in-house unless you want to deal with the huge mess of dealing with deliverability.
Here are some non-in-house options:
Build a scheduler, server side, to shoot out the emails to third party providers like SendGrid and Amazon SES, or make bulk email API calls using PostageApp
Use a service built for newsletters, like MailChimp, which can manage your lists for you and send out bulk emails without any problems whatsoever.
At least with these services, you're looking at a much faster delivery time. (Three days is attrocious.) They have the resources to send these emails, they worry about the deliverability, and you can focus on making an awesome newsletter and/or working on your website.
Full Disclosure: I am the Product Manager of PostageApp.