---
title: "Outbound Process Audit: Email and Calls Both Failed"
description: "When replies and call connects drop at the same time, the cause is shared. A seven-step audit to find it, with CLI evidence at each step."
date: "2026-10-04"
tags: "outbound, audit, diagnosis, cold-calling, cold-email, process"
readTime: "28 min read"
author: "FirstSales Team"
slug: "outbound-process-audit"
canonical: "https://firstsales.io/blog/outbound-process-audit/"
---

# Outbound Process Audit: Email and Calls Both Failed

**TL;DR:** When email replies and call outcomes fall at the same time, the cause is almost never copy or a single channel. It is something both channels share: your measurement, your list, your offer, your timing, your reputation or your process. Audit those in order, cheapest first, and change one thing at a time.

---

## Table of contents

- [The point of view: a shared failure has a shared cause](#the-point-of-view-a-shared-failure-has-a-shared-cause)
- [How this differs from the posts about AI-written email](#how-this-differs-from-the-posts-about-ai-written-email)
- [First, confirm it is real](#first-confirm-it-is-real)
- [The seven shared causes](#the-seven-shared-causes)
- [Check 1: measurement](#check-1-measurement)
- [Check 2: the list](#check-2-the-list)
- [Check 3: the offer](#check-3-the-offer)
- [Check 4: timing and the market](#check-4-timing-and-the-market)
- [Check 5: sender reputation and reachability](#check-5-sender-reputation-and-reachability)
- [Check 6: the process and the people](#check-6-the-process-and-the-people)
- [Check 7: the content, last](#check-7-the-content-last)
- [The audit worksheet](#the-audit-worksheet)
- [Fixing one thing at a time](#fixing-one-thing-at-a-time)
- [Illustrative cases](#illustrative-cases)
- [Writing the audit memo](#writing-the-audit-memo)
- [FAQ](#faq)
- [Conclusion](#conclusion)

## The point of view: a shared failure has a shared cause

Most outbound advice treats each channel on its own. Email is a deliverability and copy problem, calls are a script and timing problem.

That advice breaks when both fall at once. Two channels with different mechanics rarely fail from different causes in the same week, so the likelier story is a cause upstream of both.

That is the unique angle here. We treat a simultaneous drop as a differential diagnosis: list the shared causes, rank them by how cheap they are to check, rule them out in order and only then look at channel-specific fixes.

## How this differs from the posts about AI-written email

We already published two posts about how email reads. [AI slop in cold email](/blog/ai-slop-cold-email) covers what makes messages feel generic, and [how prospects spot AI-written emails](/blog/how-prospects-spot-ai-written-emails) covers the tells.

Both focus on the message. This post does not, because a message problem would not explain a drop in call results.

Content is check seven, the last on the list. If you reach it, those two posts are the right place to go next.

### Who this is for

You run outbound with email and calls, alone or with a team. You noticed that replies, connects or meetings dropped, and you suspect it is not one cause.

You may use the `firstsales` CLI for the email side and a separate dialer for calls. The audit works with any setup, and the CLI commands show where evidence lives on the FirstSales side.

### What we can and cannot show

We do not have a public benchmark for how often a double drop occurs or what the usual cause is, so we make no such claim. The ordering below is a reasoned checklist, not a ranking from data.

The cases near the end are illustrations we made up to show the method. They are not customer stories and carry no real numbers.

## First, confirm it is real

Before you audit, make sure there is something to explain. Many drops are noise, a short window or a change in how you count.

### Pick a baseline and a window

Choose a window long enough to smooth out weekly swings and compare it to an earlier window of the same length. Write both dates down.

Avoid comparing a holiday week to a normal week. Seasonality is a cause in its own right, and we cover it in check four.

### Use rates and counts together

A rate can fall because you sent to a worse list, or because you sent more. A count can fall because you did less work.

Record both for each channel: attempts, connects or deliveries, replies or conversations, and meetings. A drop at one stage points to a different cause than a drop at every stage.

### The stage map

| Stage | Email | Calls |
|---|---|---|
| Attempt | Sent | Dials |
| Reach | Delivered | Connected |
| Engage | Replied | Conversation over a set length |
| Convert | Meeting booked | Meeting booked |

A fall at the reach stage in both channels suggests the contact data or the reputation of your outreach. A fall at the engage stage suggests the offer or timing.

A fall at convert suggests the offer or the follow-up process.

### Rule out a counting change

Ask whether anything changed in how you measure. A new dialer, a tracking domain switch or a changed definition of "conversation" can create a drop on paper.

If you find one, fix the measurement first and re-run the comparison. Many audits end here.

## The seven shared causes

Here is the full list, in the order we suggest checking. The order reflects cost and likelihood of being wrong, not frequency data.

| # | Shared cause | Why it hits both channels | Cost to check |
|---|---|---|---|
| 1 | Measurement | Both dashboards read the same broken source | Low |
| 2 | The list | Both channels use the same contacts | Low |
| 3 | The offer | Both channels ask for the same thing | Medium |
| 4 | Timing and market | Buyers pull back from everyone | Medium |
| 5 | Reputation and reachability | Buyers and systems stop letting you through | Medium |
| 6 | Process and people | The same team runs both | Medium |
| 7 | Content | Both reuse the same message | Low |

Content is cheap to check but unlikely to explain a double drop, which is why it comes last despite the cost.

### Gartner context on buyers

It helps to know the environment. Gartner's June 2025 release on a survey of 632 B2B buyers reported that 61% prefer a rep-free buying experience ([Demand Gen Report, summarizing Gartner](https://www.demandgenreport.com/industry-news/news-brief/3-out-of-5-b2b-buyers-prefer-a-rep-free-buying-experience-gartner/49802)).

Gartner's March 2026 release on a survey of 646 buyers put the share at 67% and found that 45% used generative AI during a recent purchase ([Gartner press release](https://www.gartner.com/en/newsroom/press-releases/2026-03-09-gartner-sales-survey-finds-67-percent-of-b2b-buyers-prefer-a-rep-free-experience)).

These are different surveys with different samples, so treat the change as a direction and not a precise trend. The point for an audit is that buyers are less open to seller contact in general, which can pull down every channel at once.

## Check 1: measurement

If both channels look worse, ask first whether the numbers are right. This check is cheap and it ends more audits than you would expect.

### What to look for

Look for a change in how data is captured. A new tracking domain, a disconnected mailbox, a dialer that stopped syncing outcomes or a CRM field that was renamed can all hide results.

Compare raw records to dashboards. Count a handful of calls and emails by hand and see if the totals match.

### Evidence from the CLI

Pull the campaign figures directly and compare them to what your dashboard shows.

```bash
firstsales whoami --json
firstsales campaigns list --org org_123 --workspace ws_123 --json
firstsales campaigns analytics --org org_123 --workspace ws_123 --campaign camp_123 --json
firstsales campaigns progress --org org_123 --workspace ws_123 --campaign camp_123 --json
firstsales campaigns events --org org_123 --workspace ws_123 --campaign camp_123 --json
```

Check the registry with `firstsales commands --json` for the flags each command accepts. The events list lets you spot gaps, such as a day with no activity or a sudden change in event types.

### Calls in FirstSales

If you log call outcomes into FirstSales, `activities list` shows them and `activities log` records new ones. Confirm that logging is still happening, because a missing log looks exactly like missing results.

```bash
firstsales activities list --org org_123 --workspace ws_123 --json
```

If calls live only in your dialer, export a sample from there and compare it to the summary report. Write down any mismatch.

### Open and click tracking

Be careful with open rates. Mailbox privacy features make opens unreliable, and our post on [open rates as a dead metric](/blog/email-open-rates-dead-metrics) explains why.

Base your comparison on replies and meetings, which do not depend on tracking pixels.

If you changed a tracking domain, verify it. The CLI offers `tracking-domains list` and `tracking-domains verify`.

### Pass or fail

| Check | Pass | Fail |
|---|---|---|
| Hand count matches dashboard for a sample | ✓ | ✗ |
| No gaps in event history in the window | ✓ | ✗ |
| Call logging worked throughout | ✓ | ✗ |
| No change to definitions or tools in the window | ✓ | ✗ |

If any check fails, fix it and recompute before you go on.

## Check 2: the list

Both channels draw on the same contacts. If the list got worse, both channels got worse.

### Ways a list gets worse

Data ages. People change jobs, companies merge and numbers go dead.

[B2B data decay and list hygiene](/blog/b2b-data-decay-list-hygiene) covers the pattern.

A list can also shift without aging. A new source, a looser filter or a change in who is in the target segment changes who you reach.

### Compare the cohorts

Split your contacts by when they were added and by source. Compare outcomes for old cohorts against new ones.

If recent cohorts do worse in both channels, suspect the source or the filter. If older cohorts do worse than they used to, suspect decay.

### Evidence from the CLI

```bash
firstsales contacts list --org org_123 --workspace ws_123 --json
firstsales contact-lists list --org org_123 --workspace ws_123 --json
firstsales contact-tags list --org org_123 --workspace ws_123 --json
firstsales companies duplicates --org org_123 --workspace ws_123 --json
```

Look at list sizes, tags that mark sources and duplicate groups. Duplicates mean some people received multiple contacts, which hurts both channels.

Use `suppression check` on a sample to see how many contacts are already suppressed, in batches of up to 100.

### Check contactability

For calls, how many numbers are valid and direct? For email, how many addresses bounce?

A list with many invalid numbers and addresses depresses reach in both channels. Verify a random sample by hand before you trust it, and see [the sample-and-verify test in our Claude Code lead-gen post](/blog/claude-code-lead-gen).

### Check the fit

Does the list still match who buys? If your best customers changed and the list did not, response drops quietly.

Compare the last ten wins to your target filter. If most would not pass it today, your targeting is stale.

### Pass or fail

| Check | Pass | Fail |
|---|---|---|
| Recent cohorts perform like older ones | ✓ | ✗ |
| Sampled contacts are valid and current | ✓ | ✗ |
| Duplicate groups are few | ✓ | ✗ |
| Recent wins would pass today's filter | ✓ | ✗ |

## Check 3: the offer

Both channels ask for the same thing. If the ask stopped landing, both suffer.

### What changes an offer's strength

The market moves. A competing option appears, a budget cycle ends, a problem you solved becomes less urgent or an offer that felt new now sounds common.

Look at the ask itself. "A 30 minute demo" asks for a lot from a stranger, while a smaller step may fit better.

[Cold email offer clarity](/blog/cold-email-offer-clarity) covers how to make an ask easier to accept.

### Read the replies

The best evidence is what people say. Read the last fifty replies and call notes and tag the reasons for no.

Common tags are "not now," "already have something," "not relevant," "no budget" and "wrong person." A shift in the mix tells you what changed.

### Evidence from the CLI

```bash
firstsales inbox threads --org org_123 --workspace ws_123 --json
firstsales inbox thread --org org_123 --workspace ws_123 --thread thread_123 --json
```

Use `inbox threads` to pull recent conversations and read them yourself. Be careful with automated sorting, because [AI reply misclassification](/blog/ai-reply-misclassification) can hide the very pattern you need.

### The knowledge base matters

If your messaging claims drifted from what you sell, buyers notice. Check that the claims in your emails and call scripts match your current offer.

The post on [loading product knowledge from Claude Code](/blog/knowledge-base-offers-claude-code) describes a claims register that keeps one version of the truth.

### Pass or fail

| Check | Pass | Fail |
|---|---|---|
| Reasons for no look like the past mix | ✓ | ✗ |
| The ask is small enough for a cold contact | ✓ | ✗ |
| Email and call claims match the current offer | ✓ | ✗ |
| Recent wins still match the pitch | ✓ | ✗ |

## Check 4: timing and the market

Sometimes nothing is wrong with you. Buyers pull back for reasons outside your control, and both channels feel it.

### Calendar effects

Holidays, quarter ends, budget freezes and fiscal year boundaries change who answers. Our post on [fiscal year timing as a buying signal](/blog/fiscal-year-timing-buying-signal) explains why a segment can go quiet at predictable times.

Compare against the same window last year if you have it. A drop that appeared last year at this time is probably seasonal.

### Segment effects

Check whether the drop is uniform or concentrated. If one industry or region fell and the rest held, look at that segment's conditions.

A uniform drop across every segment points inward, to measurement, reputation or process. A concentrated drop points outward, to the market.

### Check the buyer side

Buyer behavior shifts over time. Gartner's survey releases, cited above, report growing preference for rep-free buying and growing use of generative AI by buyers.

A separate Gartner release from May 2026 reports that 69% of B2B buyers turn to sales reps to validate AI-generated insights ([Gartner press release](https://www.gartner.com/en/newsroom/press-releases/2026-05-20-gartner-survey-finds-sixty-nine-percent-of-b-two-b-buyers-turn-to-sales-reps-to-validate-ai-generated-insights)). Together these suggest buyers still talk to sellers, but later and with more prepared questions.

If your outreach asks for time before the buyer has done their own research, you may be early. That is a hypothesis to test, not a conclusion.

### Pass or fail

| Check | Pass | Fail |
|---|---|---|
| Same window last year looked similar | ✓ | ✗ |
| Drop is spread evenly across segments | ✓ | ✗ |
| No known freeze or event in target accounts | ✓ | ✗ |

A fail here is not something you fix. It tells you to adjust expectations and timing instead of rewriting everything.

## Check 5: sender reputation and reachability

Reputation affects email directly, and it can affect calls in less obvious ways.

### Email reputation

If mail lands in spam or is rejected, replies fall. Authentication and complaint rates are the usual causes.

Google's [email sender guidelines](https://support.google.com/a/answer/81126) set expectations for bulk senders on authentication, easy unsubscribe and spam complaint rates. Microsoft published requirements for high-volume senders to Outlook.com in its [Defender for Office 365 blog](https://techcommunity.microsoft.com/blog/microsoftdefenderforoffice365blog/strengthening-email-ecosystem-outlook%E2%80%99s-new-requirements-for-high%E2%80%90volume-senders/4399730).

### Evidence from the CLI

```bash
firstsales email-auth status --org org_123 --workspace ws_123 --json
firstsales email-auth verify --domain acme.com --dkim-selector s1 \
  --org org_123 --workspace ws_123 --json
firstsales warmup status --org org_123 --workspace ws_123 --json
firstsales domains list --org org_123 --workspace ws_123 --json
firstsales alerts list --org org_123 --workspace ws_123 --json
```

Check the registry for exact flags. These commands show authentication, warmup state, your sending domains and open alerts.

Our guides on [the cold email infrastructure audit](/blog/cold-email-infrastructure-audit), [deliverability monitoring](/blog/email-deliverability-monitoring), [Google Postmaster Tools](/blog/google-postmaster-tools-cold-email) and [deliverability incident response](/blog/deliverability-incident-response) cover this in depth.

### Calls and reputation

Phone numbers can be flagged as spam by carriers and call-labeling apps, which lowers answer rates. That is a reachability problem on the call side that mirrors a spam folder.

Check how your numbers appear on a test device, and ask your dialer provider what labeling your numbers get. We did not find a public source for how often this happens, so we make no claim about frequency.

### Brand reputation

Buyers may also have heard something. A bad thread in a community, a complaint or a pattern of poor messages can make both channels harder.

Search your company and sender names. Read what a skeptical buyer would see, and compare to [how prospects spot AI-written emails](/blog/how-prospects-spot-ai-written-emails) if the complaint is about tone.

### Pass or fail

| Check | Pass | Fail |
|---|---|---|
| SPF, DKIM and DMARC pass on all sending domains | ✓ | ✗ |
| Warmup and sending volumes look stable | ✓ | ✗ |
| No open delivery alerts | ✓ | ✗ |
| Test calls display as expected | ✓ | ✗ |
| Search results show nothing damaging | ✓ | ✗ |

## Check 6: the process and the people

The same team runs both channels. A change in who does the work, or how, shows up in both.

### Capacity

Did headcount, hours or focus change? A rep who moved to inbound, a manager who left or a new product to learn can cut effort without anyone noticing.

Compare activity counts to the baseline. If attempts fell in both channels, the cause is effort, not results.

### Handoffs

Look at what happens after a positive response. A slow follow-up kills good leads, and it hits both channels equally.

Measure time from reply or connect to first human action. [Speed to lead in outbound](/blog/speed-to-lead-outbound) covers why this matters.

### Evidence from the CLI

```bash
firstsales members list --org org_123 --json
firstsales inbox threads --org org_123 --workspace ws_123 --json
firstsales dashboard get --org org_123 --workspace ws_123 --json
```

Check who is active, how many threads sit unread or unassigned and what the dashboard shows. The CLI also offers `inbox assign` and `inbox read` for routing, though you should check flags before use.

### Tools and changes

List every change in the window: a new tool, a script change, a campaign edit or a new rule. Compare the dates to when the drop began.

If you used an AI agent in the loop, check whether prompts or settings drifted. [Why AI SDRs fail](/blog/why-ai-sdrs-fail) and [AI SDR prompt drift](/blog/ai-sdr-prompt-drift) describe common process failures.

### Pass or fail

| Check | Pass | Fail |
|---|---|---|
| Activity counts match the baseline | ✓ | ✗ |
| Replies get a human response quickly | ✓ | ✗ |
| No unexplained tool or setting change | ✓ | ✗ |
| Ownership of each stage is clear | ✓ | ✗ |

## Check 7: the content, last

Only now do you look at the message and the script. If checks one to six pass, content is the likely cause.

### Compare versions

Pull the copy and call script from the baseline window and the current window. List what changed.

If nothing changed in the content, it cannot explain a new drop. If something did, test the old version against the new one before you decide.

### Read the replies for tone

Negative replies about tone, relevance or "this sounds automated" are direct evidence. The posts on [AI slop](/blog/ai-slop-cold-email) and [spotting AI-written emails](/blog/how-prospects-spot-ai-written-emails) cover what to fix.

For personalization problems, see [cold email personalization mistakes](/blog/cold-email-personalization-mistakes).

### A word on testing

Change one thing and hold the rest. Use a split, so some contacts get the old version and some get the new, and compare over the same dates.

Do not rewrite everything at once. You will not know what helped.

## The audit worksheet

Use one sheet for the whole audit. It keeps you honest and gives you something to share.

### The columns

| Check | Hypothesis | Evidence source | Result | Pass or fail | Next action |
|---|---|---|---|---|---|
| 1 Measurement | Data capture changed | Hand count, event history | | | |
| 2 List | Cohort quality fell | Cohort comparison, sample | | | |
| 3 Offer | Ask stopped landing | Reply and call reasons | | | |
| 4 Timing | Seasonal or market | Prior year, segments | | | |
| 5 Reputation | Reach fell | Auth, alerts, test calls | | | |
| 6 Process | Effort or handoff changed | Activity, response time | | | |
| 7 Content | Message changed | Version compare, split | | | |

Fill it in order. Do not skip ahead because you have a favorite theory.

### The flow

The diagram shows the order and the exit points.

```mermaid
graph TD
    A[Confirm the drop is real] --> B{Measurement changed}
    B -->|Yes| B1[Fix and recompute]
    B -->|No| C{List worse}
    C -->|Yes| C1[Clean or replace list]
    C -->|No| D{Offer stale}
    D -->|Yes| D1[Test a new ask]
    D -->|No| E{Season or market}
    E -->|Yes| E1[Adjust expectations]
    E -->|No| F{Reputation problem}
    F -->|Yes| F1[Fix sending and numbers]
    F -->|No| G{Process changed}
    G -->|Yes| G1[Restore effort and handoffs]
    G -->|No| H[Test content changes]
```

Several checks can fail at once. Record all of them, then fix in the order shown.

### Time boxes

Give each check a time limit before you start. Without one, an audit drifts into endless analysis.

We do not give hours here because they depend on your size and data. Pick a limit, write it down and stop when it ends.

## Fixing one thing at a time

An audit that finds three problems tempts you to fix all three at once. Resist that.

### Why one change at a time

If you change the list, the offer and the copy together, you will not know which one helped. You also may not know if one made things worse.

Order fixes by confidence and by how easily you can undo them. Start with the one you can reverse.

### Use a holdout

Keep a small group of contacts on the old setup while the rest get the change. Compare them over the same dates.

This is the cleanest way to tell a real effect from the calendar. It costs a little volume and buys a lot of certainty.

### Safe mechanics in the CLI

When you change a campaign, follow the safe loop: confirm identity, read state, make the smallest change, preview with `--dry-run`, add an idempotency key, then re-read to verify.

```bash
firstsales campaigns workflow get --campaign camp_123 --org org_123 --workspace ws_123 --json
firstsales campaigns pause --org org_123 --workspace ws_123 --campaign camp_123 --json
firstsales campaigns resume --org org_123 --workspace ws_123 --campaign camp_123 --json
```

Pausing a campaign while you fix a reputation issue is often wise. The guide on [starting, pausing and resuming campaigns from the CLI](/blog/start-pause-campaigns-cli) covers the mechanics.

Before you restart anything, run `campaigns readiness` and `campaigns send-test-email`, then have a person start it. See [the pre-launch checklist](/blog/campaign-readiness-check-cli).

### Edit workflows with care

To change steps, use `campaigns workflow get` and `campaigns workflow update`, or follow [editing a campaign workflow by chatting with Claude](/blog/edit-campaign-workflow-with-claude). Preview every change and read the result back.

Delete commands cannot be undone, so do not clean up contacts or lists during an audit unless you have a backup.

### Do not paste keys

If an assistant helps with the audit, never paste an API key into a prompt. Use environment variables and a key with the least access, created with `firstsales api-keys create`.

[API keys for outbound agents](/blog/api-keys-for-outbound-agents) explains how to scope one. A read-only audit rarely needs more than read access.

## Illustrative cases

These are made-up examples that show the method. They are not customers and contain no real figures.

### Case A: the tool switch

A team replaces its dialer and sees fewer logged conversations the same week email replies seem flat. Check one finds that the new dialer does not sync outcomes to the CRM.

The calls were happening, and the logs were missing. Fixing the sync restores the numbers, and email was never the problem.

### Case B: the aging list

A team reuses a list from a year ago for both channels. Check two finds that older contacts perform far worse than recent ones, and a hand sample shows many have changed jobs.

They refresh the list and re-run a small batch. Reach recovers in both channels, which is what a shared cause predicts.

### Case C: the stale ask

A team still asks cold contacts for a long demo. Check three shows the reasons for no shifted toward "not now" and "already have something."

They test a smaller first step with a holdout. The audit did not prove the cause, but it pointed to a change worth testing.

### Case D: a quiet domain problem

Email replies fall, and calls fall too because reps rely on email warm-ups before calling. Check five finds an authentication failure on one sending domain.

Fixing it restores email reach, and the call numbers follow once the warm-ups work again. A shared dependency linked the two.

### What the cases teach

In each case, the channels moved together because one thing sat under both. Look for the dependency, not the symptom.

When you cannot find it, widen the search to the workflow, the tools and the handoffs between channels. For channel-level comparisons, see [cold calling versus cold email](/blog/cold-calling-vs-cold-email), [email and LinkedIn multichannel outreach](/blog/email-linkedin-multichannel-outreach) and [channel mix and cost per reply](/blog/channel-mix-cost-per-reply).

## Writing the audit memo

End the audit with a short document. It turns work into a decision and a record.

### What to include

Write the baseline, the window, the checks you ran, what passed, what failed and what you will change first. Add the evidence for each claim.

Keep it to a page or two. A long memo gets skimmed, and a short one gets used.

### Name what you did not check

List any check you skipped and why. A memo that admits its gaps is more useful than one that implies completeness.

If you could not access call data, say so. If you have no prior-year numbers, say so.

### Set a re-check date

Pick a date to compare results after the fix. Put it on a calendar and assign an owner.

For a longer-running view, [AI SDR post-mortems](/blog/ai-sdr-post-mortem) and [sales funnel metrics](/blog/sales-funnel-metrics) show how to keep tracking.

### Build a habit

Run a light version of the audit monthly, even when nothing looks wrong. Catching a slow slide early costs less than explaining a collapse.

[The daily outbound standup in one prompt](/blog/daily-outbound-standup-prompt) and [weekly campaign reports with cron and the CLI](/blog/weekly-campaign-report-cron-cli) help you keep the numbers in view. For the wider setup, see [running outbound from the terminal](/blog/outbound-from-the-terminal).

## FAQ

### Why would email and calls fall at the same time?

Two channels with different mechanics rarely fail from separate causes in the same window, so the likelier cause is something they share: measurement, the list, the offer, timing, reputation or process.

### What should I check first?

Measurement. A tool change, a sync failure or a changed definition can create a drop on paper, and checking it is cheap.

### How do I know the drop is real?

Compare equal-length windows, use both rates and counts and avoid holiday weeks. Then confirm nothing changed in how you measure.

### Can I use the CLI for call data?

Only if you log calls into FirstSales. `activities list` shows logged activities and `activities log` records them.

Otherwise, use your dialer's reports.

### Which CLI commands help with an audit?

`campaigns analytics`, `campaigns progress`, `campaigns events`, `inbox threads`, `email-auth status`, `warmup status`, `domains list`, `alerts list` and `members list` give evidence. Check the registry for flags.

### Should I pause campaigns during the audit?

Pause if you suspect a reputation problem, since sending more can make it worse. Use `campaigns pause`, and run `campaigns readiness` and `campaigns send-test-email` before you resume.

### Why is content the last check?

A message problem would not explain a drop in call results, and it is easy to blame because it is visible. Check the shared causes first.

### How do I tell a list problem from an offer problem?

Compare cohorts. If new cohorts do worse than old ones, suspect the list source or filter.

If every cohort does worse and the reasons for no changed, suspect the offer.

### What if the cause is seasonal?

Compare the same window last year and check whether the drop is even across segments. If it is seasonal, adjust expectations and timing instead of rewriting everything.

### Do buyers avoid sellers now?

Gartner's surveys report growing preference for a rep-free experience, with 67% in a March 2026 release. A May 2026 release says 69% turn to reps to validate AI-generated insights, so buyers still talk to sellers, later in their process.

### How can phone numbers hurt reach?

Carriers and call-labeling apps can flag numbers as spam, which lowers answer rates. We found no public figure for how often, so test your own numbers on a device.

### Should I change several things at once?

No. Change one thing, keep a holdout on the old setup and compare over the same dates.

### What is a holdout?

A small group of contacts that stays on the old setup while others get the change. It separates a real effect from the calendar.

### Can an AI agent run the audit?

It can pull data, draft the worksheet and summarize replies. Keep it on a read-only key, keep a person on every change and never paste keys into a prompt.

### What if all seven checks pass?

Then the drop may be noise, a very small sample or a cause you did not list. Extend the window, add data and recheck before you change anything.

### How long should an audit take?

It depends on your data and team. Set a time box for each check up front and stop when it ends.

### What goes in the audit memo?

The baseline, window, checks, results, what you will fix first, what you did not check and a re-check date.

### How often should I audit?

Run a light version monthly and a full one when results fall together. Early checks are cheaper than late repairs.

### Does this apply without FirstSales?

Yes. The seven checks work with any setup.

The CLI commands show where evidence lives if you use FirstSales.

### What if I find several problems?

Record all of them, rank by confidence and ease of undoing and fix one at a time. Use a holdout so you can see what helped.

## Conclusion

When cold email and calls fail together, look for the cause they share. Rule out measurement, the list, the offer, timing, reputation and process before you touch the message.

The short version:

- Confirm the drop with equal windows, rates and counts.
- Work the seven checks in order and record pass or fail.
- Use evidence from the CLI and your dialer, not memory.
- Fix one thing at a time with a holdout.
- Pause sending if reputation is in doubt.
- Write a short memo with what you did not check.

Start with `firstsales whoami --json` and pull the campaign analytics for the two windows. Next, read [the cold email infrastructure audit](/blog/cold-email-infrastructure-audit) if check five flags a problem.

Never paste an API key into a prompt or a post, and remember that delete commands cannot be undone.