In today’s world, email is the best way to reach out to your customers. Amazon SES is the best affordable and reliable bulk email service available right now. The biggest problem with it is that we have to setup our application to send emails through it. Here comes Sendy, the self-hosted Php application to send emails through any SMTP provider mainly developed for Amazon and very efficiently handles the amazon ses bounce rate. You can buy it from sendy.co @$59 only. It is one-time cost you have to pay for the application, install this application on your server and connect ses with it to start sending emails. I am going to show you the pricing calculation and how it becomes one of the best and cheapest alternatives to MailChimp and many more email service companies.
1.Why Amazon Ses?
One needs a reliable and inexpensive email service for their business. Let’s see the price structure of MailChimp, one of the best email marketing service available in the world.
A)Price structure 1: For 2000 subscriber, you have to pay $25/mo, and you can send unlimited emails to them.
B)Price structure 2: For 2000 email credits, you have to pay $60, and if you buy higher email credits you have to pay less, but still it is much more compared to Amazon.
Now coming to Amazon ses pricing, there is no upfront pricing for Amazon. You have to pay for what you have used.
$.10 per 1000 emails that means if you send emails to 2000 subscribers every day, you have to pay (.10*2*30) i.e; $6. Some data charge is also there for the images you have attached to the email, but they are very low. I am not saying Mailchimp is charging too much as they have many features like web hooks, email templates and more. But for the newbie or the startups, Amazon SES comes up as the best self hosted Mailchimp Alternative where you need not pay anything for subscribers but just pay for the emails you have sent.
Additional Costs to keep in mind
1.You have to pay for hosting where you setup your application to send emails to the Amazon servers. I recommend you to use Digital Ocean as sendy hosting.
2.You have to purchase Sendy one time for $59, or you can develop your own application.
How To Install Sendy – Mailchimp Alternative
After you have bought sendy, you will get an email from sendy in which your license key and domain is provided. You can use that license for that particular domain only. If by mistake you have entered the wrong domain name while purchasing sendy, don’t worry as you can change your domain name any time by going to this link. Go to the bottom of the page, you will find one menu link called contact & support. Click on that link, and one popup will appear on your screen. In that popup, you will see domain change and resend license field.
Step By Step installation guide of sendy on Digital Ocean
Go to Digital Ocean and log in. Click On Create Droplet, then click on One-click apps, after that choose LAMP Stack 16.0.4 Ubuntu. Choose your plan (recommended $10/mo), then choose backup, name your droplet and lastly click on create a droplet. You will get an email from Digital Ocean containing your login credentials for the droplet.
Pointing Your Domain to your Digital Ocean Droplet
You have to point your domain to the droplet you have just created. To do this, check the Step 2 of the tutorial point your domain to digital ocean droplet.
Connecting The Digital Ocean Droplet From CLI
Now open MobaXterm(needs to be installed) in windows or terminal in Mac.
ssh root@your ip. It will ask the authenticity of the host, and will ask you if you are sure you want to connect, type yes and hit enter. It will ask for the password, type the password that you got in your email from the digital ocean (Note: as a security measure you will see nothing when you are typing). Once you have logged, in you will see the below screen.
Now open /root/.digitalocean_password. Type
vi /root/.digitalocean_password and copy the password written there. It is your MySQL password that you will need later.
Now as a security measure, we have to secure our MySQL. We need to run this command
It will ask you for the root password that we have copied earlier. After that, follow the steps provided in the image above. The answers are just Y and N. For medium password, you have to enter 1, and to change the password, we are going with no. But if you want to change your password, you can change it (as in my case, my password strength is showing as 50 only).
Install PHP Curl On Ubuntu
It is a very easy process. After securing the MySQL, we have to install some dependencies of sendy like curl, mod rewrite, etc. Let’s install curl for PHP 7 on Ubuntu.
apt-get install php7.0-curl
Enabling MOD_REWRITE On Ubuntu
sudo a2enmod rewrite
The above command will enable the mod_rewrite on your server which is essential for sendy. Now create a database for sendy and upload the files on the server.
Create Database On Ubuntu Server
mysql -u root -p
After typing the above command, it will ask you for the password of the root user for MYSQL. We have already copied the password, enter the password to login to MySQL. After successful login, you have to type the below command.
CREATE database sendyexample;
The above command will create the database named sendyexample. After that, type
exit; to successfully log out from MYSQL
Now, what do you have?
1.A database named sendyexample.
2.A database user named root.
3.A db password that you have copied above, or the password that you have changed during mysql secure installation.
We have installed everything that is required for the sendy installation. Now we have to upload the files to our server that we can do with any ftp provider, but we are doing it through command line only as it is the fastest and most reliable method.
Install unzip module on the server also so that if in future, you upload any zip file, you are able to unzip it.
apt-get install unzip
Configuration Of Sendy config.php
Download sendy file and unzip it on your Laptop/System. Navigate to includes folder and open config.php with any of your favourite editor like notepad/wordpad.
1.Enter the domain name that you have pointed to your droplet.
2.Your Database Username i.e. root.
3.Your Database Password that you have copied earlier.
4.Your Database Name that you have created earlier.
5.Your Database Host is localhost
Save and replace the old config file with this one.
Upload Sendy Files
Open Terminal on your mac or Mobxtream on your windows and type
rsync -avhrz -e ssh ~/downloads/sendy/ firstname.lastname@example.org:/var/www/html/
~/downloads/sendy: It is your file location on your system, it varies for mac/windows or any other systems. Just copy the location of your sendy folder and replace it with ~/downloads/sendy/. Suppose you have windows and you have the sendy files in Desktop under sendy folder, location will be C:\Users\(username)\Desktop\Sendy\ and for mac ~/desktop/Sendy/
Now go to the url that you have provided in the sendy config file(must be the same that you have pointed to your droplet). You will see a screen that tells you to provide the license, Name, Email, Zone, Amazon Credentials etc. Provide all these things and hit install. You will see that it will redirect you to the login page. Now you have working sendy installed on your server.
If you feel anything that I have missed out in this tutorial, please let me know in the comment section below. Also if you want professional setup, you can visit our store for the full sendy installation on your server with ses setup including DKIM, DMARC, SPF configuration that is very much needed to avoid spam.