Skip to content
NewSee how
outbound

Outbound in Crowded Inboxes: Send Less and Earn More

Buyers get more AI-written outreach than they can read. Build a per-account touch budget and test whether sending less lifts replies.

TL;DR: When every seller can generate personalized email at scale, the buyer's inbox becomes a crowd, and the scarce thing is attention. Control the pressure you add: set a touch budget per account, allow one voice per company, make saying no cheap and test whether sending less earns more replies than sending more.


#The point of view: you are managing pressure, not only writing messages

Most advice about crowded inboxes tells you to write a better message. That helps, and it is covered elsewhere.

Our angle is different. Every email you send adds pressure to a person who already has too much.

The decision you control most directly is how much pressure you add, and to whom.

So we treat outbound as a pressure budget. Decide how many touches an account may receive from your whole team, enforce the limit in your tooling and test whether staying under it earns more replies than going over.

#How this differs from our other AI email posts

We have three related posts, and this one does not repeat them.

AI slop in cold email covers what makes a message feel generic. How prospects spot AI-written emails covers the tells readers notice.

AI inbox screening covers how assistants summarize a message and how to write for that.

All three are about the message. This post is about volume and pressure across an account, and about the process that controls them.

Read those first if your message needs work, then come back for the system around it.

#Who this is for

You send outbound, alone or with a team, and you suspect your market is getting crowded. You want a way to decide how much to send that does not rely on guesses.

You may use the firstsales CLI to read and enforce the rules. The ideas work with any tool.

#What we know and what we do not

We should be careful here, because a lot of confident claims circulate about this topic.

#What we found

We found no public source that measures how many AI-written cold emails an average buyer receives, or how much assistants on the buyer side filter them. We make no claim about those numbers.

What we do have are named surveys about buyer behavior. Gartner's March 2026 release on a survey of 646 buyers reported that 67% prefer a rep-free buying experience and that 45% used generative AI during a recent purchase, mostly to gather information on vendors and products (Gartner press release).

A May 2026 Gartner release reports that 69% of B2B buyers turn to sales reps to validate AI-generated insights (Gartner press release). Buyers still talk to sellers, and they do it on their terms.

#What we infer

From those releases we infer two things, and we label them as inference. Buyers do much of their research alone, and they value a real person when they are ready to check something.

Neither source says inboxes are flooded. We reason that when sending is cheap, more people send, but we cannot give you a measured rate.

The experiment later in this post lets you test the effect in your own market.

#What you can verify yourself

Look at your own data. How many touches did your top accounts receive from your team last month?

How did reply rates change with the number of touches?

That is evidence you own, and it is more useful than a general claim.

#Why a crowded inbox changes the math

If attention is scarce, each message competes with the others for the same minute. That changes what a good send looks like.

#Volume has a cost for the buyer

Every email costs the reader a decision: open, skim, delete or answer. When many senders ask for that decision, the reader gets tired and starts to decide fast and negatively.

A tired reader treats a relevant message and an irrelevant one the same way. Sending more can lower the odds for the good ones.

#Volume has a cost for you

Mailbox providers also react to volume and complaints. Google's email sender guidelines 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. More sends to people who do not want them means more complaints, and complaints hurt placement for everything you send.

#Cheap sending is not free sending

It is tempting to treat each extra email as costless. It is not, because the cost shows up as reader fatigue, complaints and domain risk.

Our posts on spam complaint rate thresholds and cold email domain burn rate explain the second and third costs in detail.

#The touch budget

A touch budget is a limit on how many contacts one account may receive from you in a set period. It is the central tool in this post.

#Define it per account

Count every outbound touch to anyone at a company: emails, calls, LinkedIn messages and anything else. Set a maximum for a 30-day window.

We do not give a universal number. The right limit depends on your market, your deal size and how crowded your buyers are, and you will find it with the experiment below.

#Write it as a rule

State the budget in one sentence that anyone on the team can apply. For example: "No account receives more than N touches from us in 30 days, and no more than M people at the account are contacted in that window."

Replace N and M with numbers you choose. Put the rule in your playbook and your assistant's skill file.

#Why it must cover the whole team

The common failure is that each rep or each campaign stays within its own limit while the account receives all of them together. Four reasonable sequences from four senders add up to a flood.

A budget only works if it is enforced across campaigns, senders and channels. That is why the next sections focus on measurement and enforcement.

#Budget by account value

You may give high-value accounts a different budget than low-value ones. A small number of important accounts may deserve slower, more careful, more personal contact.

Write the tiers down and keep them few. A budget with ten tiers will not be followed.

#Measure your own pressure

Before you set a budget, find out what pressure you apply now. Most teams are surprised.

#Count touches per account

Export the contacts in your active campaigns and group them by company domain. The count of contacts per domain shows how many people at each account you are contacting.

If your export has the email in the first column, a quick count looks like this.

bash
awk -F, 'NR>1 {split($1, a, "@"); print tolower(a[2])}' leads.csv | sort | uniq -c | sort -rn | head -20

Adjust the column and delimiter to match your file. The output lists the domains with the most contacts in your campaigns.

#Pull the data with the CLI

Start by confirming your workspace, then read your campaigns and their leads.

bash
firstsales whoami --json firstsales campaigns list --org org_123 --workspace ws_123 --json firstsales campaigns leads --org org_123 --workspace ws_123 --campaign camp_123 --json firstsales companies list --org org_123 --workspace ws_123 --json firstsales contacts list --org org_123 --workspace ws_123 --json

The exact output shape varies, so look at a real response before you write a parser. Check firstsales commands --json for flags, including paging options such as --page and --limit, or --all where supported.

#Add the sequence depth

Pressure is also about how many steps each person receives. For each campaign, read the workflow and note the number of emails and the spacing.

bash
firstsales campaigns workflow get --campaign camp_123 --org org_123 --workspace ws_123 --json firstsales campaigns events --org org_123 --workspace ws_123 --campaign camp_123 --json

Multiply contacts per account by steps per sequence to estimate the touches an account can receive. That is your current pressure.

#Include other channels

Add calls, LinkedIn touches and anything else. If you log them in FirstSales, activities list shows them.

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

If some channels live elsewhere, export them and add them by hand. A budget that ignores a channel is not a budget.

#Make a pressure table

Build a simple table of your top accounts by touches received.

AccountPeople contactedTouches in 30 daysRepliesOver budget
Account A
Account B
Account C

Fill it from your data. The accounts with many touches and no replies are the first place to look.

#One voice per account

The simplest way to cut pressure is to make sure only one person on your side speaks to an account at a time.

#The problem with many voices

When several reps or several automated campaigns contact the same company, the buyer sees a pattern of people who do not know each other. It reads as disorganized and as pressure.

It also splits your attention. No one owns the relationship, so no one notices a negative reply.

#Assign an owner

Give each target account one owner. The owner decides who is contacted, in what order and how often.

Record the owner in your CRM or in a tag. The CLI has contact-tags and groups that can help organize this, and you should check the registry for exact flags.

#Coordinate inside the company

Contact one buying-group member first, then widen only with a reason. If the first person says "talk to my colleague," you have a reason to contact the colleague.

Avoid sending the same email to five people at once. It looks like a mass send because it is one.

#Watch for overlap

Before you launch a campaign, check whether its contacts already sit in another active campaign. A simple domain comparison finds most overlaps.

Our guide on importing leads and building lists from the terminal covers clean loading, and the same habit prevents overlap.

#Earn the send with a reason

If you must reduce volume, use the saved effort to send fewer, better-timed messages. A reason to write is the best filter.

#Signals as a filter

Use buying signals to decide who gets a message now. Our posts on buying signals for cold email, compound buying signals and negative signals in lead lists explain how to pick and combine them.

A signal is a reason to look, not a reason to send. Pair it with a person's judgment about whether the timing makes sense.

#Build an alert with a human step

You can build a path from a signal to a human decision. The post on building a live buying-intent alert shows a signed receiver, a Slack alert and an approve step.

For a version that fills a campaign list automatically and keeps the human check at the batch level, read starting a campaign when a buying signal fires. Use whichever fits the risk of the signal.

#Say the reason plainly

A reason is only useful if the reader can see it. "I am writing because your team posted a role for X" is clear.

A vague opener hides the reason and wastes the signal.

See custom pain points and cold email personalization at scale for ways to state a reason without sounding like surveillance. The creepiness line in personalization marks where to stop.

#Say nothing when you have nothing

If you have no reason and no relevance, do not send. A skipped send costs nothing, and a bad one costs attention and reputation.

This is the hardest habit for teams used to volume targets. It is also the one that most directly reduces pressure.

#Make no cheap

A buyer who wants you to stop should be able to say so in one step. That protects them, and it protects you.

#One-click unsubscribe

RFC 8058 defines the List-Unsubscribe-Post header that enables one-click unsubscribe. It requires a valid DKIM signature covering the headers, and a mailbox provider may offer its own unsubscribe button when the headers are present.

Google's sender guidelines also expect easy unsubscribe for bulk senders. Check that your sending setup supports it, and see the cold email deliverability checklist.

#Plain opt-out lines

Add a plain sentence that lets the reader say no without effort. "If this is not relevant, reply no and I will not write again" works, and then you must honor it.

The FTC's CAN-SPAM compliance guide covers US requirements for commercial email, including honoring opt-outs promptly. See the 2026 legality guide for a practical summary.

#Honor every no, everywhere

A no to one campaign should apply to all of them. Check suppression before every load and every send.

bash
firstsales suppression check [email protected] acme.com \ --org org_123 --workspace ws_123 firstsales blocked-domains list --org org_123 --workspace ws_123 --json

suppression check takes up to 100 addresses or domains and returns value, suppressed and reason for each. To block a whole domain, use blocked-domains add with an idempotency key.

bash
firstsales blocked-domains add example.com \ --org org_123 --workspace ws_123 --idempotency-key block-001

The post on do-not-contact lists through MCP covers the longer workflow.

#Read the nos

A reply that says no is information. Read the reasons, because a pattern tells you what pressure is too much.

Sort carefully. AI reply misclassification shows how an automated sorter can hide a polite no, and the reply handling playbook covers responses.

#Shorter sequences and real stop rules

Long sequences are a common source of pressure. The fifth email to someone who has not answered four is rarely welcome.

#Check where replies come from

Look at your own data: in which step do replies arrive? If most come from the first two steps, the later steps add pressure with little return.

Our post on follow-up email strategy and the data in cold email benchmarks can help you compare. Use your numbers first.

#Write stop rules

A stop rule says when a sequence ends for a person. Stop after a reply of any kind, after an unsubscribe, after a bounce and after the final step.

Also stop when another person at the account replies with interest, since the owner should take over. Put these rules in your workflow.

#Edit the workflow safely

To change a sequence, read the workflow, make the smallest edit, preview and read it back. The guide on editing a campaign workflow by chatting with Claude shows the safe loop.

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

For updates, use campaigns workflow update with a body file and --dry-run first. Check the registry for the exact flags.

#Single email sequences

Some audiences do better with one carefully written message than with a chain. Our post on the single email sequence describes when that works.

Test it against a longer sequence with a holdout before you commit.

#Use other channels as relief valves

When inboxes are crowded, a different channel can reduce pressure on email. It can also add pressure if you stack it.

#Choose, do not stack

Using email, calls and LinkedIn on the same person in the same week is more pressure, not less. Pick the channel that fits the person and move to another only with a reason.

Our posts on cold calling versus cold email, email and LinkedIn multichannel outreach and channel mix and cost per reply help you decide.

#Warm paths

A warm introduction avoids the crowd entirely. The warm intro pipeline describes how to build one, and conference-triggered outbound covers a natural reason to reach out.

Warm paths scale slowly, and they carry far less pressure per contact.

#Content and community

Being known before you write changes how the message lands. Posts, talks and community presence give the reader a reason to recognize you.

We do not have a measured effect to cite, so treat it as a long-term bet and not a quick fix.

#Protect your reputation while you send less

Cutting volume helps reputation only if the rest of your setup is sound. Check the basics.

#Authentication and warmup

Confirm SPF, DKIM and DMARC and check warmup state.

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 alerts list --org org_123 --workspace ws_123 --json

Our guides on setting up sending and tracking domains from the CLI, email deliverability and inbox placement rate cover the details.

#Sending limits per inbox

Lower volume per inbox is a reputation tool too. Emails per inbox per day explains the reasoning behind limits.

Spreading a small budget across healthy inboxes is safer than concentrating it.

#Launch with care

Before you start any campaign, run campaigns readiness and campaigns send-test-email, then have a person start it. The campaigns start body needs a savedVersionId, a readinessVersion, an idempotencyKey and a confirmation.

See the pre-launch checklist and sending a test email first. For agents, guardrails for email-sending agents lists limits worth setting.

#The experiment: does less earn more

Do not take our word for the benefit of sending less. Test it in your market.

#The design

Pick a set of comparable accounts and split them into two groups. Group A follows your current approach.

Group B follows the touch budget, with fewer people contacted and a shorter sequence.

Run both over the same dates with the same offer. Compare replies, meetings and negative replies per account, not per email.

#Why per account

Per-email rates reward sending more to a few. Per-account outcomes show whether you reached the company.

An account that replied in group B after two touches counts the same as one in group A after six. The comparison is about outcomes for accounts.

#Pre-register the decision

Before you start, write down what result would make you adopt the budget and what would make you drop it. Include the minimum number of accounts you need.

We do not give a sample size, because it depends on your baseline rates. A small test can mislead, so be honest about what it can show.

#Experiment table

ItemGroup AGroup B
Contacts per accountCurrentCapped by budget
Sequence lengthCurrentShorter
TriggerCurrentSignal or reason required
ChannelsCurrentOne at a time
MeasureReplies and meetings per accountReplies and meetings per account

#Read the result carefully

If group B matches or beats group A with less volume, you have saved effort and risk. If group B loses, you learned your market rewards volume, at least for now.

Either way, write down the result and the date. Markets change, and you may want to repeat the test.

#Good and bad pressure practices

A short checklist makes the budget easy to audit. Mark each line for your own team.

PracticePressure-awareVolume-first
Touches counted per account across all senders✓✗
One owner decides who at the account is contacted✓✗
Signal or reason required before a send✓✗
Suppression checked before every load✓✗
Sequence ends on any reply or opt-out✓✗
Channels chosen per person, not stacked✓✗

#How to use the checklist

Run it once a month with the people who send. Any line marked in the right column becomes a task with an owner and a date.

Keep the list short on purpose. A checklist of thirty items gets skimmed, and a skimmed checklist changes nothing.

#Three illustrative cases

These cases are made up to show the reasoning. They are not data from any real company.

In the first, a team of four reps each runs a three-step sequence into the same twelve-person finance department. No rep breaks a personal limit, but the department receives a dozen emails in a week.

The fix is one owner and one contact at a time.

In the second, a team sends a long sequence of seven steps and finds that every reply arrived by step three. The later steps added pressure and produced complaints.

The fix is a shorter sequence and a clear stop rule.

In the third, a team has strong signal data and sends only when a signal fires. Volume is low and each message states its reason.

The team still tests the approach against a holdout, because a good story is not a result.

#What to do with a negative reply

A negative reply is the cheapest feedback you will get. Read it, tag the reason and apply it to the account, not only to the campaign.

If the reason is "too many emails," count the touches that account received and compare them to your budget. If the count was within budget, your budget is too high for that kind of account.

Lower it for that tier and test again.

#What to tell your team

Explain the budget as a way to protect the work that already earns replies. People accept limits more easily when they see the limit protects their best accounts.

Share the pressure table in the weekly review so nobody is surprised when a send is held. A held send is a decision, and the table shows why it was made.

#Where the budget can fail

A budget can fail in three ways. It can be too loose to matter, too tight to test or ignored by a campaign that someone launched outside the process.

The pre-launch check catches the third failure, and the monthly review catches the first two. Treat both as part of the same system, and revisit the numbers when your market or offer changes.

#Enforce it with the CLI

A rule nobody checks is a wish. Put a check in front of every launch.

#The pre-launch pressure check

Before launch, compare the new campaign's contacts to existing ones by domain, and check counts against the budget. If any account would exceed it, stop.

The flow is simple, and the diagram shows where the gates sit.

graph TD
    A[New list ready] --> B[Group by company domain]
    B --> C[Compare to active campaigns]
    C --> D{Any account over budget}
    D -->|Yes| E[Remove or defer contacts]
    D -->|No| F[Suppression check]
    E --> F
    F --> G{All clear}
    G -->|No| H[Remove suppressed]
    G -->|Yes| I[Readiness check and test email]
    H --> I
    I --> J[Human starts campaign]

#Fail closed

Write the check so it stops on any error. If the CLI call fails, the launch does not proceed.

A check that continues on failure turns into a report. Test the failure path by pointing the script at a bad base URL.

#Use a narrow key

Run the check with a key that can read but not send. Create it with firstsales api-keys create, using the least access that covers the reads.

API keys for outbound agents explains how. Never paste a key into a prompt or a post.

#Assistants and the check

An assistant can draft the check, run it and summarize the output. It should not have the power to start campaigns.

If you connect the product MCP server at https://api.app.firstsales.io/mcp, check the live tools/list for what your grant allows. We did not confirm that MCP can create a campaign, so create with firstsales campaigns create and use MCP to read and edit.

See what is MCP for sales and MCP security for outbound for the basics and the risks.

#A review routine

Pressure drifts upward when nobody watches. A short routine keeps it in check.

#Weekly

Review the pressure table for your top accounts, new nos and the accounts nearest their budget. Pause anything that crosses the line.

The posts on the daily outbound standup in one prompt and weekly campaign reports with cron and the CLI show how to automate the reading.

#Monthly

Review the experiment results, adjust the budget and read a sample of negative replies in full. Look at the complaint trend and the placement trend too.

Check Google Postmaster Tools and email deliverability monitoring for signals on your side.

#When you change the budget

Change it deliberately, announce it and record the reason. A budget that moves quietly is not a rule.

For the wider system, see the five layers of an AI outbound agent stack and running outbound from the terminal.

#FAQ

#Are buyers buried in AI cold email?

We found no public source that measures how many AI-written cold emails a typical buyer receives, so we do not claim a number. We reason that cheap sending leads to more of it, and we suggest testing the effect in your own market.

#What is a touch budget?

A limit on how many touches one account may receive from your whole team in a set period, across emails, calls and other channels. You choose the numbers by testing.

#Why count touches per account instead of per email?

Because the buyer's company experiences the total. Four reasonable sequences from four senders add up to a flood that no single sender sees.

#How do I measure my current pressure?

Group contacts in active campaigns by company domain, multiply by sequence steps and add other channels. Use campaigns leads, contacts list and activities list to pull the data.

#What does one voice per account mean?

One owner decides who is contacted, in what order and how often. It prevents several reps or campaigns from contacting the same company at once.

#Does sending less lower my results?

It might, or it might not. Run the experiment with a holdout and compare outcomes per account, not per email.

#How do I run the experiment?

Split comparable accounts into two groups, one on your current approach and one on the budget, with the same offer and dates. Decide beforehand what result will make you adopt or drop the budget.

#What sample size do I need?

It depends on your baseline rates, so we do not give one. A small test can mislead, so state what yours can and cannot show.

#How do I make opting out easy?

Support one-click unsubscribe headers as defined in RFC 8058, add a plain opt-out line and honor every no across all campaigns.

#How do I check suppression before sending?

Run firstsales suppression check with up to 100 addresses or domains. It returns value, suppressed and reason for each.

#How do I block a whole domain?

Use firstsales blocked-domains add with the domain and an --idempotency-key. List what you have blocked with blocked-domains list.

#Should I shorten my sequences?

Look at which step your replies come from. If most arrive in the first two, later steps add pressure with little return, and you can test a shorter sequence against the current one.

#What stop rules should I use?

Stop after any reply, an unsubscribe, a bounce or the final step. Also stop when a colleague at the account replies with interest and hand the account to its owner.

#Can another channel reduce pressure on email?

Yes, if you choose a channel per person instead of stacking all of them. Stacking email, calls and LinkedIn on the same person adds pressure.

#How does this relate to AI inbox screening?

That post covers how assistants summarize a message and how to write for it. This one covers how much you send and to whom.

#Will a lower volume help my deliverability?

It can, because fewer sends to uninterested people means fewer complaints. You still need authentication, warmup and healthy inboxes, so check email-auth and warmup status.

#Can an AI agent enforce the budget?

It can run the check and summarize the output on a read-only key. A person should decide what to cut and start every campaign.

#Can MCP create campaigns?

Not that we confirmed. Create with firstsales campaigns create and use MCP to read and edit, checking the live tools/list for your tenant.

#What if my market rewards volume?

Then your test will show it. Record the result and the date, and repeat the test later because markets change.

#Where should I start?

Pull your active campaigns, group contacts by company domain and build the pressure table. The accounts with many touches and no replies are your first targets.

#Conclusion

In a crowded inbox, the lever you control most directly is how much pressure you add. A touch budget, one voice per account and an easy no turn that lever into a process.

The short version:

  • Measure pressure per account across campaigns, senders and channels.
  • Set a touch budget and enforce it before every launch.
  • Send when you have a reason, and skip when you do not.
  • Make opting out one step, and honor every no everywhere.
  • Test less against more with a holdout, judged per account.
  • Keep a person on the decision to start a campaign.

To begin, run firstsales whoami --json, pull your active campaigns and build the pressure table. Next, read AI inbox screening for the writing side, and building a live buying-intent alert for a reason-led way to decide who to contact.

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

Keep reading

Outreach that keeps going after you log off.Leads, emails, follow-ups and replies, handled.

Connect unlimited mailboxes and let AI agents find leads, write each email and follow up. Or send your own templates in manual mode. From $29/mo.

$1 for 3 days · Cancel anytime · No contract

Install with AI

Your coding agent sets up the FirstSales CLI and skills for you.

Prompt for Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.