7

I am using Gmail servers to send email from my system, with a program. Recently I started getting errors like this:

Data command failed: 421 4.7.0 Temporary System Problem. Try again later (WS). 6sm3756432pab.11 - gsmtp

The reasons are given in the support.

Can anybody tell me what is the number of emails that can trigger this issue?

Or is it because of some other reasons?

Harikrishnan
  • 3,664
  • 7
  • 48
  • 77
  • #1 You've got '421, "4.7.0", Temporary System Problem. Try again later.' and not '421, "4.7.0", Our system has detected an unusual rate of unsolicited mail originating from your IP address.', haven't you? #2 If you had the latter one, then: no, I don't think there is a specific number of emails, which Gmail communicated to senders. Just do not spam people but only email them if they consented. – lukeA Aug 23 '16 at 13:47
  • I am getting the error '421, "4.7.0", Temporary System Problem. Try again later.' error. What can cause this error? – Harikrishnan Aug 24 '16 at 04:12
  • The error could be caused be a temporary system problem at gmail. Check the [Gmail App Status](https://www.google.com/appsstatus#v=status). Anyway, it's a so called soft bounce and you are supposed to try to deliver the message again later on. – lukeA Aug 24 '16 at 07:41
  • 1
    Ok. I am getting this error more frequently. so it might not be a system problem with gmail, right? – Harikrishnan Aug 25 '16 at 06:22

7 Answers7

15

If you are using your free Gmail account to send bulk emails your are likely to see this kind of responses early on as the service is not intended to send application transaction messages, newsletters etc., event to subscribers that has opted in. The IMAP/SMTP service provided is for you to be able to use an email client like Microsoft Outlook with your Gmail account.

If you need to send transaction messages, I suggest you google "AWS SES" for starters.

Henkealg
  • 1,466
  • 1
  • 16
  • 19
  • 1
    I tried sending a single email not bulk emails and immediately got this error. So it happens regardless of bulk or not. – emirhosseini Aug 31 '19 at 15:01
5

I agree with Anubhav Shrimali that the error occurs if Gmail gets multiple requests simultaneously. I had solved the problem using Nodemailer in Node.js by adding the 1 second delay between each successive email as follows:

array.foreach(function(data, index) {
    setTimeout(() => {
        sendmail();            
    }, 1000 * index);

    function sendmail() {
        transporter.sendMail(mailOptions, function (error, info) {
            if (error) {
                console.log(error);
            } else {
                console.log('Email sent' + info.response);
            }
        });
    }
});
4

This error occurs if you are using scripts to send emails in quick successions. An easy way out is to apply a sleep timer in between sending emails.

I applied a timer for 1 second between each successive email.

import time
time.sleep(1) // equivalent to 1 second sleep
  • Not necessarily just happening when sending in quick succession. It happened for me with a brand new gmail account the very first time I tried sending email with it from code. – emirhosseini Aug 31 '19 at 15:02
  • this was happening to me for messages being sent out in quick succession. g-suite support was useless because they kept saying they cant see that error in their system logs despite it being the reply from their system. – jtlindsey Jun 01 '20 at 17:41
1

I too had the same issue when I tried to send bulk emails using the multi threaded program in Java. Then I heard about Thread Pool Executor. I used it by setting Thread Pool size as 10. After that, this issue has been solved for me.

1

If this situation is encountered, it should be placed in the retry queue, and the monitoring will be notified if multiple retries fail.

Hope this link can help you:

https://support.google.com/a/answer/3726730

Kenshin
  • 11
  • 1
0

This is probably a result of bulk email sending from the same IP address. As mentioned, use the python sleep function so that there is a bit of a wait between sendings. I find that 1 second is not usually enough time for me, and I sometimes go with a random number of seconds between 1 and 5 for the most optimal results.

import random
import time
time.sleep(random.randint(1, 5))

Don't forget to import the correct modules.

dcinderdiu
  • 171
  • 5
-1

have a rest for 20 minutes , and try again, the error gone

relaxslow
  • 29
  • 5