Tips for Identifying Bad Data – Possible Invalid Email Addresses

Marketo Employee
Marketo Employee

Instructions to identify possible invalid email addresses and to set them to Marketing Suspended while you manually clean them up. In this example, Marketo hasn't marked them automatically as Email Invalid yet. Alternatively you can skip setting the records to Marketing Suspended and simply use a Smart List to review and fix the records.

Create a batch campaign to set suspected invalid email addresses to Marketing Suspended.

Smart List


Email Address contains









In the flow besides setting the Marketing Suspended field to True, I am going to set a custom field called 'Marketing Suspended Reason' to 'Set Marketing Suspended to True due to possible invalid email address.'




As I mentioned earlier, you can also skip setting a batch campaign and simply use a Smart List to review and fix the records.

Note: I am unaware of natively being able to fix email addresses in Marketo in an automated fashion. For now it's only a dream.

Level 10 - Community Moderator

With the upfront warnings that...

[a] changing an address from an apparent typo should only be done for leads who aren't engaged; and

[b] if you "fix up" user-provided input incorrectly, you may end up spamming another person

... then this is quite easily automated using FlowBoost:

var domainMisspellings = [


        typos : ["",""],

        correct : ""



        typos : ["",""],

        correct : ""



var currentEmail = {{lead.Email Address}},

    domainMatch = currentEmail.match(/@(.+)/),




if ( domainMatch ) {

  currentDomain = domainMatch.pop();


  correctableDomain =  domainMisspellings.find( domain =>

    domain.typos.some( typo =>

      currentDomain.toLowerCase() == typo.toLowerCase()




  if (correctableDomain) {

      correctedEmail = currentEmail.replace(currentDomain, correctableDomain.correct);



Not applicable

Sanford Whiteman 2 (FigureOne) So awesome that you provided this code.

My bigger problem is that Marketo marks many emails with 550 (email invalid) errors even when the emails have been verified via Outlook. This is eroding trust in the mass email system.

I have no real way of knowing at this point if:

a-the 550 error is actually because of a default setting that fires off from the recipient email server

b-the 550 error is due to someone on our shared IP behaving badly

c-the 550 error is  a reflection of a+something I did -- like a file size on an email being too large or a bitly link flagging a spam trap

Thoughts anyone?

Not applicable

We're having the same issue right now. I'm not sure what the cause or the solution is either.

Level 10 - Community Moderator

It's Sanford Whiteman actually.   ("... 2" is one of my secondary accounts.)

As you've discovered, even end-to-end SMTP success from one sending server (i.e. Outlook/Exchange) to the remote mailbox doesn't mean that you won't get an SMTP error from another sending server (Marketo), since servers vary in reputation and the recipient's server is under no obligation to add any nuance to their error message. They're free to (re)use the SMTP 550 for any old rejection, and really, when you're rejecting what you believe to be unwanted email there's a tendency to tell the sender to, in essence, shove it and hope they never try to send again.

An oversize message but otherwise not suspect message should be SMTP 522, 534, or 552, not 550 -- but you can't send attachments via Marketo so that can't be the case here.

A content-dependent error is more likely to be 554 than bare 550, but not always.

So a 550 from Marketo, for the same mailbox that will accept person-to-person mail from Outlook, is most likely (though not definitely) not something you can fix by changing content, though as you say, it may be fixed by changing IPs.

There's no way to use Marketo alone for a full diagnosis... only by comparing to other mail paths can you be absolutely sure.

Not applicable

So it's accurate to say that the only way to resolve the 550 errors is to change IPs?

Level 1

Great content, Thanks!