# How do I meet Gmail and Yahoo bulk sender requirements?

> Gmail, Yahoo and Outlook require SPF, DKIM, DMARC, one-click unsubscribe and low spam rates from bulk senders. Here's how to meet each rule with Emailit.

Gmail, Yahoo and Microsoft Outlook require senders of large volumes to authenticate their mail and make unsubscribing easy. Google defines a bulk sender as anyone who sends about 5,000 or more messages a day to Gmail addresses. Once you reach that, the rules apply to all your mail from that domain. This article maps each requirement to what Emailit does and what you need to do.

## Symptoms

- Gmail rejects messages with replies such as `550 5.7.26` (unauthenticated) or `421 4.7.28` (rate limited because of unusual volume or a high spam rate).
- Mail to Gmail, Yahoo or Outlook lands in spam while other providers deliver it fine.
- Google Postmaster Tools reports a high spam rate or failing compliance checks.

## Cause

Each requirement has to be met by your domain setup, your sending practices or both:

| Requirement | With Emailit |
| --- | --- |
| SPF passes | Done when your domain is verified. The SPF record lives on `emailit.acme.com`, the return-path subdomain, and aligns with your domain. |
| DKIM passes and aligns with the From domain | Done when your domain is verified. Emailit signs with `d=acme.com`. |
| DMARC record, at least `p=none` | **You publish it.** Emailit suggests the record on the domain page. |
| TLS and valid reverse DNS | Handled by Emailit. Mail is sent with STARTTLS when the receiving server offers it. |
| One-click unsubscribe (RFC 8058) for marketing mail | Automatic for campaigns. **You add it** for marketing mail sent through the API or SMTP. |
| Unsubscribes honored within 2 days | Campaign unsubscribes take effect at once. Handle your own links promptly. |
| Spam complaint rate below 0.3% | **Your list practices.** Aim for under 0.1%. |

## Fix

1. **Verify your sending domain.** SPF, DKIM and the return path must all show **OK** in **Email API → Domains**. See [Domain verification](/docs/domains/verification/).

2. **Publish DMARC.** Add a TXT record at `_dmarc.acme.com` with `v=DMARC1; p=none;`. On Pro and Business, enable [DMARC reports](/docs/dmarc/set-up/) to monitor results before you move to `quarantine` or `reject`.

3. **Use campaigns for newsletters.** [Campaigns](/docs/campaigns/) add `List-Unsubscribe` and `List-Unsubscribe-Post: List-Unsubscribe=One-Click` headers to every email. Also include the `{{unsubscribe_url}}` link in the content.

4. **Add one-click unsubscribe to API marketing mail.** Pass both headers in the [`headers`](/docs/email-api/headers-and-metadata/) parameter, and make sure your URL accepts a `POST` request:

```json
{
  "headers": {
    "List-Unsubscribe": "<https://acme.com/unsubscribe?u=8f3a>, <mailto:unsubscribe@acme.com>",
    "List-Unsubscribe-Post": "List-Unsubscribe=One-Click"
  }
}
```

   Over SMTP, add the same headers to your message. Transactional mail such as receipts and password resets doesn't need them.

5. **Keep complaints low.** Send only to people who opted in, remove inactive recipients and honor every unsubscribe. Emailit suppresses complaining addresses automatically. See [Bounces and complaints](/docs/deliverability/bounces-and-complaints/).

6. **Monitor your spam rate.** Register your domain in Google Postmaster Tools and Yahoo's Sender Hub, and check [sending health](/docs/deliverability/sending-health/) in Emailit.

For broader advice, see [Deliverability best practices](/docs/deliverability/best-practices/) and [Why are my emails going to spam?](/docs/kb/emails-going-to-spam/).

## Still stuck?

[Contact support](/contact/) or ask in [Discord](https://discord.emailit.com). Include the rejection message and a few affected email IDs.

---
Source: https://emailit.com/docs/kb/gmail-yahoo-bulk-sender-requirements/
