
Ask HN: How do you send email in your early stage startup? - yeukhon
Say you are launching your startup idea, trying to get some early users. You have account-related emails (registration, forgot password), and marketing emails.<p>Do you run smtp off of your EC2&#x2F;DO&#x2F;GCP machine? Or do you use Amazon SES, Mailgun, Mailjet, MailChimp, SendGrid and blah so you get the benefits of DKIM and volume handling?<p>Budget: I am not sure what&#x27;s a good budget, but I see $20 budget to start with. Obviously if there&#x27;s spike, I hope a &quot;free-tier&quot; buffer would cover.
======
cimmanom
Split your mail into 3 classes:

1) Interpersonal. This is your own email that you type and send from your own
mail client. Internal discussions. Scheduling a meeting with an investor. Etc.
Use a hosted IMAP+SMTP service for this (g suite, zoho, fastmail, whatever).

2) Transactional mail. This is mail that's related to specific interactions on
your platform: "thanks for registering" or "you have a new private message" or
"your order is in the mail". Legally, there's no obligation to allow users to
unsubscribe. You'll be automating the sending of this with code, and once you
write and design each message it will be changed infrequently and probably by
developers. If you need to do automated processing of incoming mail, it also
falls into this bucket. For this you want cheap SMTP and ideally a robust API
with pre-parsing of incoming mail. For this you want a service like Mailgun or
Sendgrid.

3) Marketing mail. This is newsletters, offers, etc. Broadcast-only (not a
conversation). Your marketing team will be customizing these each time they go
out, so you need a WYSIWYG interface. Ideally this is also hooked up to a CRM
so that you can segment your messaging. You also need automated unsubscribe
for compliance purposes. And this is the mail most likely to be actively
marked spam, so you want to send from a different hostname and IP than your
interpersonal and transactional mail so that your interpersonal/transactional
mail won't be auto-filtered as spammy just because users mark your marketing
mail as spam. This is what services like mailchimp or constant contact are
for.

~~~
shostack
Having dealt with this stuff quite a bit, I'd caution about keeping all your
transactional mail siloed. True, many emails may seem not worth having in a
business user-friendly ESP where your marketing emails live, but if you keep
transactional email on a separate system, you lose a lot of visibility into
the role of those emails in your business unless you incorporate them into an
analytics system elsewhere.

A check confirmation email, account renewal notice or other transactional
email couple play a critical role in your funnel or with combating churn. If
you don't have it married up with everything else, you'll lose a lot of that
insight.

Any ESP friendly enough for a business user will likely have an API for
sending programmatically. Rates might be a bit higher over something like SES,
but that may be worth it depending on your scale. It also let's business users
manage templates and such without needing to have an engineer touch code, and
the reporting is all there.

~~~
cimmanom
You make a good point. The cost balance may depend on your use case and size.
I'm currently at a B2C company that sends hundreds of millions of
transactional emails per month. We use Sendgrid. They provide basic open and
click tracking, which is more information than our small team has the
bandwidth to make use of at this point anyway.

If you're a B2B sending 10,000 emails per month with high potential value per
interaction, integrating transactional and marketing mail and tracking email
interactions with transactional mail on a granular level may be worth the
additional cost.

And a large team may have use for more detailed data, or the capacity to build
out reporting and integrations for themselves.

But super early stage, that's not the low hanging fruit you should be worried
about.

And even if you end up using the same platform, for conceptual purposes, for
compliance purposes, and for optimizing deliverability you'll want to consider
marketing and transactional email separately.

------
leonroy
SendGrid for sending signup, password reset emails. They have an API and SMTP
support which we prefer since it avoids lock in.

We use MailChimp for our marketing mails purely because of habit. SendGrid can
handle that too.

On the free plan for both for ages and ages so didn’t have to worry about the
cost until we started ramping up.

I would advise against your own SMTP server. I maintain one for ‘fun’ for my
personal emails and between SPF, DKIM etc. it’s more time and effort than it’s
worth for an early stage project.

You also get cool analytics with MC and SG which shows who received their
emails, who hit spam, who clicked, etc. very handy for diagnosing signup mail
problems.

------
amingilani
Mailgun has a free tier and they give SMTP access. Perfect for when I'm
setting up a new Rails app.

I've never had to pay them, ever. Even though they handle all my small
startup's traffic.

------
muzani
Early stage? As fast as possible. Just plug it into something like MailChimp,
even if it's more expensive. You can cut costs later, but honestly manpower is
money, so it's usually not worth setting up your own.

------
mchannon
Call this super-lazy, but it works for me, and it's cheap.

Say my startup is foo.com and I've registered it at namecheap. I'll get a
corresponding gmail account (foodotcom@gmail.com) and use that for my outgoing
correspondence.

Where you want to impress with your custom domain is incoming email, and in
that case, you can set up mail redirects (catchalls in particular) for your
new foo.com domain. So if I meet VC Mike at an event, I can direct him to
sales@foo.com or info@foo.com. The "handoff" for when I email him back out of
the blue from my foodotcom@gmail.com can be a little fraught, but it's good
enough until I want to afford actual gmail services or similar.

It's a great way to segment off new areas of your business, so if you hire
Vickie in customer service, you can autoforward support@ to
vickie@personalmail.mail or vickiefoo@gmail.com, until you hit the big
leagues.

~~~
zakk
> The "handoff" for when I email him back out of the blue from my
> foodotcom@gmail.com

As far as I remember GMail can send emails on behalf of another address you
own:

[https://support.google.com/mail/answer/22370?hl=en](https://support.google.com/mail/answer/22370?hl=en)

This way VC Mike will have a seamless experience writing you to your @foo.com
address.

~~~
mchannon
Gmail used to do that for free, and if you signed your domain up, you're
grandfathered in (I have a few domains still like that).

They don't do it for free anymore, and their mail hosting for new accounts is
surprisingly expensive (though I suppose most things are, when you're used to
getting them for free).

~~~
hashkb
I think you're talking about GSuite users. They are not free. Regular GMail
can send mail as another account you prove ownership of. (For free)

------
superasn
Ses would be the best option for your budget. They give you shared ips but
I've seldom seen any transactional mails go to spam.

Also if you're using route 53 configuring dkim, etc for your own domain is
just 1 click away.

~~~
yeukhon
Interesting. I am pretty familiar with AWS infrastructure so ideally I would
love building on there first, but the cost is something I am pretty sketchy
about, in general for EC2 and whatnot. So I was thinking start off with a $5
Digital Ocean droplet.

~~~
superasn
If cost is a big factor for you, you can try finding services that give free
aws credit. Like Stripe atlas have me 5000usd just for signing up. product
hunt also gives you. I'm sure there are others too. the need of the hour is to
always launch quickly. even if you manage to save a few bucks on digital ocean
but waste 2 weeks on migration and learning something new you have to
calculate the cost of 2 weeks my personal l opinion is to get it done as
quickly as possible worry about such costs later.

------
Topgamer7
I have tried the MailJet trial. However there is no feedback as to when you go
over the 200 messages a day, which is not acceptable to me, for their business
being in email, I figure sending me a warning email would be simple enough.

Following that I use Amazon Ses because it has the best value. I use name
cheap which has free email forwarding for an entire domain. I forward all
emails on my domain to a Gmail account with a matching name, and use that for
inbound emails. This method is rather limited, but very cheap.

~~~
yeukhon
Are you using GSuite so you don't end up replying as foo@gmail.com?

~~~
Topgamer7
No, I just created a Gmail email with my domain name before the @

------
niftylettuce
If you're using Node, you can use [https://github.com/Niftylettuce/email-
templates](https://github.com/Niftylettuce/email-templates) along with
Postmark for transactional emails and any other provider for bulk incl SES.

------
mabynogy
I'd do that with a gmail account. I wrote a bash script with ssmtp to send
mails from the command line. Here is the critical line:

    
    
      echo "$body" | /usr/lib/sendmail -C $config $mail
    

I can give you the full script. Just tell me if you need it.

------
magicbuzz
I think an SMTP setup would be overly complex. I setup a Lua-based mail sender
in nginx for a startup a few years back that just sent to gmail iirc. But that
now seems a bit too much effort. SendGrid seems interesting as you can setup
templates and then just make a Rest API call.

------
mindcrime
We have a MailChimp account and have a couple of lists set up there for
newsletters / marketing stuff. For "transactional" emails (account creation /
password reset / etc) or anything that is done programmatically, we use SES.

------
amypinka
SES works for me. Do any of the cloud providers even allow SMTP from their
IPs?

~~~
jazoom
All of them?

At least all those I've ever used or looked into do.

~~~
kalmi10
IP ranges used for VMs are often problematic. I wouldn’t recommmend them for
outgoing mail. See:
[https://news.ycombinator.com/item?id=7634890](https://news.ycombinator.com/item?id=7634890)

~~~
jazoom
Perhaps I misunderstood. Since he/she mentioned "SES" I thought the "cloud
providers" were SendGrid, etc.

