My question is - do we have to use a
3rd party email management software
like a MailChimp or SendGrid to send
such emails or should we send them
directly?
For this sort of scenario you're much better off with a third party service to do the mailing.
For things like invites / marketing messages / non-essential notices, yes.
For passwords and password resets -, I personally wouldn't but you need to see what works for you.
Fact of the matter is, people even report mail they asked for as spam... so as a small site you're going to have a lot of trouble dealing with spam complaints etc.
A third party also means you'll get more mail through (deliverability), and quite likely, you'll get much better metrics on what people click on, if at all, when they read it.
You can do it yourself... but it takes a lot of time and effort. I've worked at places where we had a good relationship with the Abuse department at AOL... but that took years to develop.
As someone who's sent a LOT of email in his time, I opt to use third party services wherever possible, since it's so cheap thesedays, and it all gets through :)
Like others said;
- Keep your domainkeys etc records perfect and up to date.
- Don't send 10000000 / hour to a single server they'll tarpit you.
- Monitor the RBLs in case you do get on them... then pick up the phones, emails, etc.
Hint: When you send your mass mail out to all users... don't sort by domain. Let it send in whatever order it's in, so you're not doing 3000 yahoo addresses in one go.
- Don't send people 20 things they don't need, and serve no purpose... that's how you get spam complaints from legitimate emails.
Happy mailing :)