Why Sendy Instead of Mailchimp or ConvertKit
Mailchimp charges $350/month for 50,000 subscribers. ConvertKit charges $400/month. Sendy is a one-time purchase ($69) that runs on your own server and sends through Amazon SES — which costs $0.10 per 1,000 emails. At 100,000 emails/month, that's ₹800. Total monthly cost: around ₹500–800 including your VPS.
The tradeoff: you own the infrastructure. If something breaks, you fix it. But for bootstrapped Indian SaaS founders, the cost difference is significant enough to justify the setup time (about 2–3 hours).
What You Need Before Starting
- A VPS — any ₹300–600/month plan from Hostao, DigitalOcean, or Vultr will do
- A domain (for your email sending infrastructure — preferably a subdomain like mail.yourdomain.com)
- An Amazon AWS account (for SES)
- Sendy licence ($69 one-time from sendy.co)
Step 1: Set Up Your VPS
Spin up an Ubuntu 22.04 server. You'll need Apache or Nginx, MySQL, and PHP 8.1+. The Sendy documentation has a recommended LAMP stack configuration. If you're on Hostao shared hosting with cPanel, you can install Sendy directly without a separate VPS — just ensure PHP 8.1 is available and MySQL is accessible.
Step 2: Configure Amazon SES
- Create an AWS account and navigate to SES (Simple Email Service)
- Verify your sending domain (follow the DKIM and SPF DNS instructions — takes 24 hours to propagate)
- Request production access (you start in sandbox mode, which only sends to verified addresses). The production access request takes 24–48 hours and requires a brief description of your use case
- Create SMTP credentials in the SES SMTP Settings section
- Note your SMTP endpoint (e.g., email-smtp.us-east-1.amazonaws.com), port 587, and your credentials
Step 3: Install and Configure Sendy
- Download Sendy and upload to your server's web root (or a subdirectory)
- Create a MySQL database and user for Sendy
- Edit the config.php file — set your database credentials, application URL, and Amazon SES details
- Run the database setup by visiting yoursendy.domain/installer
- Set up a cron job to run Sendy's scheduled tasks every minute:
* * * * * php /path/to/sendy/scheduled.php > /dev/null 2>&1
Step 4: DNS Configuration
This is the step most people rush and then wonder why their emails go to spam. You need: