> ## Documentation Index
> Fetch the complete documentation index at: https://docs.instantcampaign.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Deliverability and domain warm-up

> Monitor DNS authentication, blocklists, DMARC alignment and reputation for every sending domain, and ramp up new domains with a warm-up plan.

The **Deliverability** page (sidebar: **Compliance → Deliverability**) shows the health of every sending domain in your workspace on one screen. The same checks run before a campaign sends, so a problem you can see here is a problem that can hold up a send.

## What the page shows

Each domain you've added under **Settings → Domain Authentication** gets a row. Click a row for details: messages sent, **Delivered**, **Bounced** and **Complaints** counts, **DMARC coverage**, and any **DNS drift**. The header shows the reporting window (by default the last 30 days).

| Column              | What it tells you                                                                                                                                                                                              |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **DNS auth**        | Whether the published DNS records still match what was verified. **Drifted** means a record changed or disappeared after verification. The detail shows what we expected and what we found.                    |
| **Blocklists**      | The result of the last sweep against public DNS blocklists (Spamhaus DBL, SURBL, Spamhaus ZEN, Barracuda): clear, **Listed**, or partly **Unreachable** when some zones didn't answer.                         |
| **DMARC alignment** | How much of your mail passed DMARC alignment, based on the aggregate reports mailbox providers send us. **No reports** until reports arrive. See [DMARC reports](/guides/sending-and-workspace/dmarc-reports). |
| **Reputation**      | A daily verdict from your bounce and complaint rates: **Healthy**, **Watch**, **At risk** or **No data**.                                                                                                      |
| **Warm-up**         | The domain's warm-up ramp: **Not started**, the current day and `{sent}/{cap} today`, or **Paused**.                                                                                                           |

### Reputation thresholds

Reputation is judged per domain, per day:

| Verdict     | When                                                                                                           |
| ----------- | -------------------------------------------------------------------------------------------------------------- |
| **At risk** | The domain is on a blocklist, **or** the bounce rate is 5% or more, **or** the complaint rate is 0.1% or more. |
| **Watch**   | The bounce rate is 3% or more, or the complaint rate is 0.05% or more.                                         |
| **Healthy** | Below those rates. Days with fewer than 100 sends are always Healthy, because rates on tiny volumes are noise. |
| **No data** | Nothing was sent.                                                                                              |

The At risk limits match the levels at which Amazon SES starts an account review, and Watch warns you before you get there.

## Refreshing the checks

Owners and administrators see three buttons at the top of the page:

* **Check DNS** re-reads every domain's published records and updates drift.
* **Sweep blocklists** re-checks every domain against the blocklists.
* **Recompute reputation** recalculates the reputation snapshot from recent sends.

A grey banner tells you when some domains have never been checked or swept. *Unchecked is not the same as clean*, so run the checks after you add a domain.

## When a domain blocks sending

A red banner at the top lists how many domain issues will block sending, broken down into DNS drift, blocklist listings and at-risk reputation. Before a campaign sends, its sender's domain goes through these checks:

| Check              | Blocks the send when                                         | Warns when                                                   |
| ------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| DNS authentication | Published records have drifted.                              | DNS hasn't been re-checked since verification.               |
| DMARC reporting    | Your DMARC `rua=` no longer points at our reporting address. | —                                                            |
| Blocklists         | The domain is listed.                                        | Never swept, or some zones didn't answer.                    |
| Reputation         | The latest verdict is At risk.                               | Watch, no snapshot yet, or a stale snapshot.                 |
| Warm-up            | The ramp is paused, or today's cap is spent.                 | The domain was verified in the last 30 days and has no ramp. |

Fix the cause, run the matching check again, and the block clears.

<Note>
  If the banner says the pre-send gate is in warn mode, your InstantCampaign installation is set to warn only, so these findings don't stop sends.
</Note>

## Domain warm-up

A new domain that jumps from zero to thousands of emails a day gets filtered, because mailbox providers want to see volume grow gradually. A warm-up ramp sets a daily sending cap that grows every day.

<Steps>
  <Step title="Start a ramp">
    On the **Deliverability** page, find the domain and click **Start warm-up**. The domain must be verified.
  </Step>

  <Step title="Set your target">
    Enter a **Target daily volume**: the number of emails a day you eventually want to send. The page previews the ramp, for example "8-day ramp: 50 → 5000 a day".
  </Step>

  <Step title="Begin">
    Click **Begin ramp**. Day 1 starts now.
  </Step>
</Steps>

**How the ramp works**

* The cap starts at 50 emails on day 1 and doubles each day until it reaches your target. The last day is the target itself. A ramp never lasts more than 60 days.
* Days follow the UTC calendar: a new day starts at 00:00 UTC whether or not you sent anything. When the last day passes, the ramp is complete and the cap is lifted.
* Campaigns and journeys sending from the domain count toward the same daily cap.

**What happens when today's cap runs out**

* **Campaigns** send as many recipients as today's cap allows. The rest of the send is parked and continues automatically at 00:00 UTC. The campaign page shows a note like "Warm-up: day 2 cap of 100 reached — the rest continues at 00:00 UTC".
* **Journeys** send one email at a time. Once the cap is spent, further journey emails from that domain are held until the next UTC day.

**Pausing and ending**

* **Pause warm-up** stops all sending from the domain. The pre-send check blocks while a ramp is paused.
* **Resume warm-up** continues at today's day on the calendar, not the day you paused. Days keep counting while a ramp is paused.
* **End warm-up** finishes the ramp early and removes the cap.

<Warning>
  A running ramp **pauses automatically** if the domain's reputation turns **At risk** (a blocklist listing, or bounce or complaint rates over the limits). Sends from the domain stay blocked until an owner or admin investigates and clicks **Resume warm-up**.
</Warning>

## Troubleshooting

<AccordionGroup>
  <Accordion title="A domain shows DNS drift">
    Open the row to see which record changed and what we expected. Restore the record at your DNS provider, then click **Check DNS**.
  </Accordion>

  <Accordion title="A domain is on a blocklist">
    Follow the blocklist operator's delisting process, then click **Sweep blocklists**. A listing usually follows a spike in complaints or sending to purchased or stale addresses, so clean your list before you send again.
  </Accordion>

  <Accordion title="My campaign stopped partway through">
    If the domain is warming up, the send was parked at today's cap and resumes at 00:00 UTC. Check the note on the campaign page.
  </Accordion>
</AccordionGroup>
