Bulk Email CRM app

I am interested in designing a bulk email CRM app for a vertical market.

Each account will need to have their own return email address, so the customers can get return emails from their clients.

How do you keep the service from being blacklisted?

I know of another small company doing something similar and I was wondering what the pitfalls are in setting something up like this.

Mailchimp requires that senders’ emails are verified through a web host for each sender. This would be complicated and near impossible for the clients to handle.

Just trying to find out the hurdles before I begin.


I wrote one in Xojo (www.bulkemailapp.com).

I get the user to input their own SMTP credentials and server limitations. It will only send emails that are under those credentials, so hopefully will not get blacklisted.

I tried to determine a way to verify the recipient email address, but was unsuccessful. I would be interested in what you discover.

If you’re going to send all emails from your servers, I am not sure how you can stop getting blacklisted if a client of yours starts to use it for Spam or sending 10,000 emails per minute.

You can check the CURL Email example coming with MBS Xojo CURL Plugin.
We send our emails using our own code.

I would recommend to add in each email an UUID to the headers as extra field, so you can match each return email to the relevant email sent.
Also you may need to have an unique ID for each email to track the unsubscription link clicks.

I found the example:

I wasn’t going to let the end-user send the emails. I wanted to have outgoing emails totally automated and then use a service like Amazon SES for SMTP. I wanted to segment the list and only send to those due for a recall (maybe 25-50 emails per client per week for each recall campaign).

It seems list management software has difficulty running a drip campaign with the flexibility I need. For example, after 4 monthly tries, the recall campaign resets to try again next year. In addition, the drip campaign has to stop sending emails for those customers who have returned since their last email.

How large a list can you send using cURL?

With CURL we send individual emails. Easily 2000 a day without problems.

We send them in something like 10 per minute to not get marked as spamming.

[quote=438965:@Christian Schmitz]With CURL we send individual emails. Easily 2000 a day without problems.

We send them in something like 10 per minute to not get marked as spamming.

OK, I didn’t realize that was possible.

[quote=438965:@Christian Schmitz]
We send them in something like 10 per minute to not get marked as spamming.[/quote]
Is not dependent of your internet provider or/and mail server provider ?
I’m not sur your can do that with gmail.

Yes, this is dependant on your hosting company. It’s not really a good idea to send out that many mails with SMTP. There are services around to do mass mails with Gmail. Which again is not a good idea.

Just use something like SendGrid, MailChimp or Amazon to send out many mails. Pay for a dedicated IP if you want to make sending out mails more secure.

I agree that SendGrid (or other) is better for this sort of task for sure. The problem I encounter is that it require for the customer to have domain name and web hosting and configure it accordingly (SPF, DKIM, …) for each customer that want to use this mailing feature.
Or are you talking about using Sendgrid with the developer account ?

Our delay is because if we sent 2000 newsletter and 100 hit the same receiving email server quickly, they think it’s a wave of spam and block them all.

It’s better to send a few per minute and sort recipients randomly to avoid that.

@Franois Van Lerberghe: I use SendGrid to send users a confirmation about a finished task in my app. This is done with my credentials.

@Christian Schmitz: you can get 2500 email addresses at MailChimp for 30$ per month. Amazon is much cheaper.

Ok. That seems to me the easy part. What if you want your users be able to send a reasonably large amount of emails (100 per day or 500 once per week for example) ?

The marketing stuff like MailChimp gets pretty expensive fast. The normal mails from SendGrid are free up to 100mails/day. The cheapest plan costs 15$ for 100k mails/month.

My main concern is actually the end-user settings (web hosting, spf, dkim, …) required when you use this kind of services (Sendgrid, SendinBlue, Mailjet, Mailgun, Sparkpost or other), not the price. No one have dedicated IT team and I’m not excited to do that manually for each one. Should I ?

DKIM and the like are the jobs of the companies you pay to send your emails. I just checked a random mail from MailChimp and got a nice DKIM entry:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchimpapp.net;

I don’t remember what SPF does. Same as for using a plugin in Xojo IMO it’s better to let the professionals do their job.

I know how I must configure my web hosting adding SPF and DKIM entries. But the end-user not. And I suppose I can’t do that automatically with Xojo or and other programming Language.
If I want to add email feature in my software, I don’t imagine to ask to my user to set this himself. In consequence, since Sendgrid is certainly the best solution, I cannot use it for this usage. But perhaps did I misunderstand…

I find this same problem. Often times my end user does not even know the passwords for their web host account, so it is hopeless to set up DKIM and SPF for them. I am using the Mandrill API to send emails, but I had to Set Up Custom Domain Authentication. For a few clients, I actually purchased a domain name (similar to theirs) so I could do that - but if I wanted to work on a larger scale, what options do I have? I literally said to the client, just give me the log in for your web host and I will do the rest, but they couldn’t.

I use a small CRM company that did exactly that - they have set up a similar domain to mine to send the emails.


There was a time when I thought I could do this too. I wrote this using RS / Xojo … before IMAP was a thing. For some years the app worked reasonably well with POP accounts. It doesn’t work even with POP accounts any more, because email has changed so much in the past decade.

Bulk email is best left to those who are devoting their careers to it, e.g. MailChimp.

It’s certainly sure for marketing emailing. But, as said, for transactional emailing (invoices, notifications, …) that’s not always a workable solution.