Mailfully logo

Why emails go to spam

Work through the four causes of inbox placement failure in order: authentication, list quality, content, and sending reputation.

Placement is decided by the receiving network, not by Mailfully, and four things drive it: authentication, list quality, content, and sending reputation. Work them in order, because each one gates the next. A domain that fails authentication never gets its content or its reputation judged at all.

Start with authentication

DKIM signs mail for your sending domain, and SPF authorizes the MAIL FROM subdomain that sits beneath it. Domain verification is what confirms both records actually resolve. A domain with status verified already has both configured, which is the floor every sender starts from before anything else on this page can matter. See Verify a domain and Publishing your DNS records for the records involved.

Then list quality

Hard bounces and spam complaints are the strongest negative signal a receiving network reads, and on Mailfully they are also an account-survival issue, separate from how any single provider treats your mail. Two thresholds decide it:

MetricThresholdDefinition
Complaint rate0.07%Spam complaints ÷ delivered emails
Bounce rate4%Hard (permanent) bounces ÷ accepted emails

Cross either one and Mailfully may suspend the account immediately and without notice. Soft bounces do not count toward the bounce rate; only permanent failures do.

These numbers are stricter than the 0.3% Gmail complaint figure further down this page, and the two measure different things. Mailfully's thresholds decide whether your account keeps sending at all. Gmail's decides whether Gmail keeps trusting your domain. Mailfully's is the one that binds first. See Policies, Why an address was suppressed, and Suppressions.

Content comes third

Google describes Gmail's filters as AI-driven, weighing signals such as the sending IP's characteristics, the domain and its subdomains, whether a bulk sender is authenticated, and what recipients report. Its sender guidelines call out the display name: it should identify the sender rather than use emoji or non-standard characters to imitate graphics. See Google's overview of Gmail's spam filters and Email sender guidelines.

Reputation comes last

Reputation accumulates from the first three over time rather than from any single message. See IP pools and Warming up a new domain for how that accumulation works and how to manage it deliberately.

Measure instead of guessing

GET /v1/analytics/external-reputation returns Gmail's own view of your sending domains: the latest Gmail Postmaster spam-rate observation, per verified domain. See Analytics for the full endpoint.

Google publishes 0.3% as the complaint-rate ceiling it enforces through Postmaster Tools. The field the endpoint returns, gmailSpamRate, is a fraction, not a percentage, so the two ceilings on this page line up like this:

CeilingAs a percentageAs the fraction the API returns
Google's Postmaster ceiling0.3%0.003
Mailfully's complaint-rate threshold0.07%0.0007

A sample response:

{
  "data": {
    "domains": [
      { "domain": "mail.acme.com", "gmailSpamRate": 0.0007, "observedAt": "2026-07-06T09:00:00.000Z" }
    ],
    "worstGmailSpamRate": 0.0007
  }
}

gmailSpamRate: 0.0007 reads as 0.07%, exactly Mailfully's own threshold and comfortably inside Google's 0.3% ceiling. Read the field as a fraction before comparing it to any percentage figure quoted elsewhere on this page, or you'll misjudge the margin by a factor of a hundred.

What Mailfully does for you

ResponsibilityPlatformYou
DKIM signing and SPF for the MAIL FROM subdomainYes
Automatic suppression of hard bounces and complaintsYes
Warm-up pool placement for new accountsYes
Publishing the DMARC recordYes
Keeping the list opt-in and currentYes
Writing content that doesn't trip the structural signals aboveYes