Help centre

How can we help?

Guides, FAQ, and integration walkthroughs. Search or browse by topic.

← All topics

AI receptionist (Bland legacy) Outbound

Bland outbound calling

Run a targeted outbound calling campaign against a list of leads. Same Bland key as the receptionist, different script, different goal: book meetings or qualify prospects at scale.

The operator UI is live at Campaigns > Calls. Create a campaign in five short steps: basics, list, script, schedule, review. Launch, then watch the Live monitor tab while calls run.

Before you start

  • The AI Receptionist already working. Same Bland API key, same account, same billing card. If you have not done that yet, do the Receptionist guide first.
  • A CSV of at least 50 leads. Fewer than that and you cannot measure conversion properly. Required columns: phone, first_name. Optional but useful: company, city, notes.
  • A single, clear campaign goal. Book a demo? Qualify budget? Confirm attendance? Pick one. Outbound AI calling with a vague goal converts at under 1 percent.
  • A caller ID phone number you actually own. Do not spoof - carriers block it and it damages the number's reputation.
  • A quiet room to listen to five test calls before you point it at real prospects.

Step 1: Confirm your Bland setup is live

  1. Go to Settings > Integrations > Bland.ai. Confirm the API key is set (shows bullets, not empty).
  2. Confirm Caller ID (outbound number) is filled in. This is critical for outbound - if blank, calls display Bland's default pool number and answer rates drop below 5 percent.
  3. If the receptionist is already live, the API key is fine. If not, go set that up first.

Step 2: Prepare the CSV

Bland does not need any special CSV format but the CRM's import expects specific column headers. Make the top row exactly this:

phone,first_name,last_name,company,city,notes

Rules that will save you an hour of debugging:

  • Phone numbers must be E.164 format: +447700900123 or +14155550100. No spaces, no brackets, no leading zero without country code.
  • Strip trailing whitespace. Excel silently adds spaces to phone numbers exported from other systems. Open the CSV in a text editor and eyeball it.
  • UTF-8 encoding, not UTF-8 BOM. If you save from Excel on Windows, choose "CSV UTF-8" not "CSV (Comma delimited)".
  • Deduplicate before uploading. Bland charges per call, not per unique number. Duplicates cost you money.
  • Remove any phone number that begins with +1900, +1976, +44870 or any premium prefix. Calls will fail and Bland charges you the failed-call fee anyway.

Step 3: Create the campaign

  1. Go to Campaigns > Calls in the main nav.
  2. Click + New campaign.
  3. Name it something you will recognise in 6 months: Q3 2026 SaaS trial expiries - book demo, not test 4.
  4. Choose Outbound mode.
  5. Pick your outbound caller ID number.
  6. Set the calling window. Do not call outside 9am-8pm local to the recipient. In the UK, calls before 9am or after 9pm violate Ofcom rules. In the US, TCPA sets 8am-9pm local time - and it is enforced with statutory damages of 500-1500 USD per call.
  7. Set the retry policy. Sensible default: 3 attempts, 4 hours apart. Never retry a number that hung up within 5 seconds - they meant to end the call.
  8. Set concurrency. Start at 5 concurrent calls. Increase only if the script quality holds.

Step 4: Write the script

Bland scripts are prompt-engineered instructions, not word-for-word dialogue. The AI improvises within your guardrails. Structure that works:

Opening (7 words max)

Hi {first_name}, it is Sam calling from Acme.

Use a real human name. Do not say "AI assistant" or "virtual agent" - answer rates crater. If the recipient asks "are you a bot?", the script must answer honestly ("I am an AI, yes - would you rather I get a human to call you back?"). Being caught lying about it kills your brand.

Permission ask

Have I caught you at an OK time? I have got about 40 seconds.

Naming the duration triples the "yes" rate. If they say no, offer a specific alternative: "Would 4pm today or tomorrow morning be better?"

The one-line reason

Why did you call this specific person? Not a generic pitch. Reference the CSV data: "I noticed your team was trialling our platform in June and it lapsed - was that a fit issue or a timing thing?"

The single ask

Book a call, confirm an address, get a yes/no answer. One ask, not three.

Objection handling

Give the AI three or four objections you actually hear and how to handle each. Format:

OBJECTION: "not interested"
RESPONSE: "totally understand - can I ask what would have to be true for it to be interesting?"

OBJECTION: "how much does it cost"
RESPONSE: "depends on team size. For a team like yours it is usually 400-800 per month. Want me to send exact numbers?"

OBJECTION: "send me an email"
RESPONSE: "I will do - what is the best email? And is 15 minutes on Tuesday to walk through it worth diarising?"

Close

Confirm what happens next and by when. If a meeting is booked, the script should say the exact date and time back to the caller: "Great - Tuesday 21st at 2pm your time. You will get a calendar invite in the next five minutes."

Step 5: Test on yourself

Before you point this at real leads:

  1. Upload a CSV with three entries: your own mobile, a colleague, and a friend who owes you a favour.
  2. Click Start.
  3. Answer the call. Behave like a real prospect. Interrupt. Ask a hard question. Say "not now, call me tomorrow".
  4. Listen for anything that sounds robotic, mis-pronounced, or scripted. Fix the prompt. Re-test.
  5. Do this at least three times before real launch. Every founder skips this and every founder regrets it.

Step 6: Launch and monitor

  1. Upload the real CSV via Import leads button.
  2. Confirm the number-of-calls count matches your CSV row count.
  3. Click Start campaign.
  4. Watch the first 20 calls in real time on the campaign dashboard. Listen to at least three full recordings.
  5. If the first 20 calls show an answer rate under 15 percent, pause the campaign. Something is wrong (bad caller ID, wrong time of day, list quality).
  6. If the first 20 look OK, let the campaign run and check back in 2 hours.

How to test it works

  1. Answer your own test call. Recording appears in the campaign detail view within 60 seconds of hangup.
  2. Transcript appears within 2 minutes.
  3. The contact record for your own phone number gets a new activity entry: "Outbound call: {disposition}".
  4. If the call resulted in a booking, an appointment is created in Appointments.

Common problems

Answer rate below 10 percent
Bad caller ID reputation (spam label) is the most common cause. Ring your own outbound number from a different phone; if the caller ID app labels it "Spam Likely", stop the campaign, get a new number, wait 2 weeks before using it heavily.
Every call disconnects after 3 seconds
Bland is having a rough hour, or your knowledge base is malformed and the agent errors on initialisation. Check the campaign log for the actual Bland error code.
Calls connect but the AI never speaks
Your welcome message field is empty. Bland waits silently. Put a welcome line in.
Transcripts show the AI making up product features
Your script is under-specified. Add a hard rule: "If asked about features not listed here, say: I do not know, let me have someone follow up." Then list the features you do have.
Cost is much higher than expected
Voicemail detection is off, or set to "answering_machine_hangup" was not enabled. Each voicemail run costs the same as a 60-second call. Turn on voicemail detection in the campaign settings and leave a brief message rather than hanging up (Bland charges you either way, might as well get the touchpoint).
Some countries block the calls entirely
Bland's carrier coverage is US, UK, Ireland and most of Western Europe. Australia and India work but with variable quality. Never launch a campaign to a region you have not tested with three real calls first.

Best practices

  • Keep it short. Under 200 words is the target. Longer scripts sound scripted and give the AI room to hallucinate.
  • One question at a time. Never stack two questions in a single sentence. The AI needs a natural place to stop and listen.
  • Name the person twice. Once in the opener, once in the ask. It sounds warm without sounding sales-y.
  • Always end with a clear next action. Book a diary slot, send a link, request a callback. Vague endings kill conversion.
  • Be honest about the AI. If asked "are you a bot?", the script must say yes and offer a human callback. Getting caught lying about it destroys trust.
  • Test on yourself first. Every script. Every time. Five test calls before real prospects.
  • Watch the first 20 live. Answer rates below 15 percent almost always mean bad caller ID or wrong time of day. Pause and fix rather than burning the whole list.

What this unlocks in the CRM

Every outbound call becomes a contact activity with transcript, recording and disposition (booked, callback, no-answer, do-not-call, unqualified). Bookings auto-create appointments. Do-not-call requests auto-flag the contact. The Analytics > Leaderboard view shows conversion by script version so you can A/B test properly. And you can scale beyond the number of hours your sales team can physically dial.

Still stuck?
Email us and we’ll come back within one business day.
info@unavoidablecrm.com