· By the AgentSDR team
The short version
In many markets WhatsApp is how business gets done: quotes, scheduling, quick questions and follow-ups all happen there, and people read it far more reliably than email. That is also why it is guarded. People treat it as a personal space, WhatsApp polices it hard, and a number that annoys people does not just underperform, it disappears.
So the right frame for B2B WhatsApp is closer to a warm follow-up than to a cold blast. This guide covers consent and etiquette, how to start a new number, how much to send, the difference between messages and calls, and what to think about before recording. It ends with how AgentSDR’s WhatsApp messaging and calling enforce those habits in code. It is general guidance and not legal advice.
Consent and etiquette
WhatsApp’s Terms of Service and its Business policies are the source of truth, and they are what a ban is decided against. Read them before you send anything. AgentSDR’s own responsible use page summarises the position: WhatsApp forbids unsolicited bulk messaging, and numbers that people report get banned.
Beyond the platform, the law also applies. Phone-based marketing is regulated in many countries, and the consent that is needed differs between business-to-business and consumer contact, between countries and between channels. Ask a lawyer who knows the countries you sell into.
Good reasons to message someone
- They filled in a form or asked for a call, and gave a number.
- They were introduced to you by someone they know.
- You met at an event and exchanged numbers.
- An existing customer or active opportunity wants to continue there.
- They already replied to you on another channel and prefer WhatsApp.
Poor reasons
- The number came from a bought list or a scrape.
- You have the number, but the person has never heard of you.
- Email did not get a reply, so you try again somewhere more intrusive.
Etiquette that protects the number
- Introduce yourself in the first line: who you are, which company, how you have their number.
- Keep the first message short and give a clear, easy way to say no.
- Respect silence. One or two spaced follow-ups is enough.
- Stop immediately when asked, and remember it on every channel.
- Do not message at night or on weekends, unless the person’s market works that way.
Numbers and warm-up
A WhatsApp number has a history. A number that was just registered, has no contacts, and immediately starts conversations with strangers is the profile of a spammer. The safer pattern is to give a new number a quiet start: use it for real conversations, let people save it, and delay anything proactive for a while.
There is no single published warm-up length. The common view is that the first day should not involve messaging strangers at all and the first weeks should stay well below your eventual volume. Treat that as practice, not a rule.
New chats a day
What matters is how many new conversations a number starts, not how many messages it sends. Answering someone who wrote first, or continuing an existing chat, is ordinary use. Starting conversations with people who do not have the number saved is what gets reported.
Because WhatsApp publishes no figure, careful operators keep new-chat numbers in the low dozens per number per day, even for a number with a long history, and add numbers rather than turning one up. Spread sending through the working day, leave seconds between messages instead of firing them in a burst, and watch for signals that something is wrong: messages not delivering, people replying that they did not ask to be contacted, or the number being asked to verify itself.
| Setting | Careful approach |
|---|---|
| First day on a new number | Answer chats; start none |
| New chats a day | Low dozens per number at most; less when new |
| Gap between messages | Seconds at least; longer is safer |
| Follow-ups | One or two, days apart |
Writing the messages
A WhatsApp message is read on a phone, usually in a few seconds. It should read like a message from a colleague, not like a brochure: two or three sentences, one idea and one question.
- Open with who you are and why you are writing to them specifically.
- Skip attachments and long links in the first message; they invite suspicion.
- Personalise with real details, and preview with leads that have missing data, since an empty field can leave “Hi ,”.
- Vary the wording across a list. Identical text sent to many people is a common spam signal.
- Ask something easy to answer, such as whether they want details or a quick call.
Sequences should be short: a first message and a few follow-ups, with waits that are measured in days, and a clear stop when the lead replies on any channel.
Calls or messages
A message is asynchronous and easy to ignore. A call is richer and more personal, and for some buyers it is how a deal progresses. Neither is automatically better, and the choice depends on the relationship.
- Message first when the person does not know you. An unexpected call from an unknown number is more intrusive than a message, and it is easier for the person to say no to a message.
- Call when a person has asked for one, has replied positively, or has agreed a time. It is also useful for qualifying a warm lead quickly.
- Follow a call with a short message: a summary, the details you promised, or a link to book a time.
Recording and consent
Recording a call is a separate decision from making it. Many places require everyone on a call to consent before it is recorded, and some require you to announce it. Others need only one party to consent. You are responsible for the law where you and the other person are, and the rules can differ if you are in different countries. The safe habit is to tell people at the start of the call that it is being recorded and why, and to stop if they object.
Beyond consent, a recording and its transcript are personal data. Decide how long you will keep them, who can listen, and how you will delete them on request. Store recordings privately and give access through short-lived links rather than public files.
AgentSDR’s guardrails
AgentSDR reads WhatsApp numbers that you link in Unipile and sends through them. Every WhatsApp send, whether a reply from Messages, a CRM reply, a campaign message or a call follow-up, passes the same server-side checks under a per-number lock, so two sends at the same instant cannot both slip through.
| Guard | Default | Allowed | What happens |
|---|---|---|---|
| Warm-up after linking | 24 hours | 0 to 336 hours; warns below 24 | The number answers existing chats but starts no new ones |
| New chats per day, per number | 25, in a rolling 24 hours | 1 to 200; warns above 25 | Further new chats are refused; existing chats can still be answered |
| Seconds between sends | 10 | 3 to 600; warns below 10 | A faster second message is refused with a wait time |
| Do Not Contact | Always on | Not configurable | The message is refused |
A number AgentSDR has never seen connected cannot start new chats at all until you sync it. A “new chat” is a number the account has never messaged, so chats the lead started, or that you started from your phone, do not count against the limit. A message can be up to 4,096 characters, and a number’s own “New chats a day” overrides the organization rule.
Message campaigns
- A sequence is a first message plus up to five follow-ups, waits from 1 hour to 30 days (48 hours by default).
- Importing leads needs only a phone number, takes up to 5,000 rows, and unmapped columns become merge fields.
- Each connected number sends at most one message per round, follow-ups before first messages, and a lead stays on the number that sent its first message.
- Optional sending hours for campaigns; with none set, campaigns send at any time.
- When a guard refuses a message AgentSDR reacts to the reason: it waits, holds first messages while still sending follow-ups, skips a disconnected number, or stops the lead if it is Do Not Contact.
- A claim is recorded before each send, so a step is never sent twice. If delivery is uncertain AgentSDR does not resend, and marks the lead Failed for you to check.
- A reply on any channel stops the sequence, and AgentSDR checks the chat again just before sending.
Calling in AgentSDR
AgentSDR places WhatsApp calls through WhatsApp Web in your own Chrome (version 116 or newer). A small extension, the Call Recorder, presses Voice call, records the call and uploads it; AgentSDR then keeps the recording on the lead.
- Only calls placed from AgentSDR’s Call button are recorded. Your own calls in WhatsApp Web are never touched.
- The recording is stereo, with your microphone on the left and the lead on the right, and it starts at pickup, not the first ring. A call nobody picks up is discarded.
- Recordings go to your own Cloudflare R2 bucket, are never public, and each play uses a short-lived link.
- With a transcription model chosen in Settings, AgentSDR transcribes each recording on your own OpenRouter key and adds a short English summary. Speaker labels are inferred.
- After a call you mark the outcome, such as No answer, Interested or Do not call. A lead who does not answer comes round again after 1, 2 and then 4 days, then is done.
- A number that WhatsApp bans loses its calling too.
Consent is yours to handle: AgentSDR’s documentation says to tell people when you record, and you are responsible for the law where you and the lead are.
Checklist
- Everyone you message has a reason to expect you, and you know how you got their number.
- Outreach uses a dedicated number, not the one your customers use.
- A new number answers chats before it starts them.
- New chats per number stay low, and you add numbers rather than turning one up.
- Messages are short, specific and varied, with an easy way to say no.
- Any reply, on any channel, stops the sequence.
- You tell people when you record a call, and know the rules where you both are.
- Recordings and transcripts are stored privately, with a retention plan.