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

# Run an outbound reactivation campaign

> Reactivate a cold contact list with an AI outbound calling campaign in SmartAlex: build the agent and objective, import contacts, set calling hours, attach a number, launch, and read the results in analytics.

Old leads are rarely dead leads, they are usually just unworked. An outbound reactivation campaign puts your AI voice agent on the phone with a cold list, re-opens the conversation, qualifies who is still interested, and books the warm ones straight into a callback or meeting. This recipe shows you how to reactivate old leads with AI end to end, from a list you already own to results you can read in analytics.

<Note>
  Outbound campaigns require the **Outbound Campaigns** add-on: \$49/month (\$490/year) on the Professional plan. It is bundled at no extra cost on the Real Estate and Enterprise plans. See [add-ons](/essentials/add-ons) or [pricing](/pricing) to enable it.
</Note>

## Before you start

An AI outbound calling campaign needs four things in place. Run this pre-flight check before you hit start:

| Check         | What it means                                                | Where                                                          |
| ------------- | ------------------------------------------------------------ | -------------------------------------------------------------- |
| **Agent**     | A voice agent that will make the calls                       | [Agents](/essentials/agents) or [Studio](/studio/create-agent) |
| **Objective** | The one North Star the agent keeps in view on every call     | Set on the agent                                               |
| **Contacts**  | The cold list you want to reactivate, imported and segmented | [Contacts](/essentials/contacts)                               |
| **Number**    | A phone number attached to place the calls                   | [Phone numbers](/essentials/phone-numbers)                     |

<Tip>
  Reactivation works best on people who already know you: past enquiries, lapsed customers, event sign-ups, or quotes that went quiet. Make sure you have a prior relationship and consent to call, and keep your calling windows inside local quiet-hours rules.
</Tip>

## How a reactivation campaign flows

```mermaid theme={null}
flowchart LR
  A[Agent + objective] --> B[Import contacts]
  B --> C[Set calling hours and timezone]
  C --> D[Attach a phone number]
  D --> E[Start campaign]
  E --> F{Call outcome}
  F -->|Answered| G[Qualify and book callback]
  F -->|No answer| H[Retry next window]
  F -->|Voicemail| I[Message or SMS follow-up]
  G --> J[Results in analytics]
  H --> J
  I --> J
```

## Build the campaign

<Steps>
  <Step title="Pick or build the agent and set its objective">
    Choose an existing agent or spin up a new one in [Studio](/studio/create-agent) by chatting with Alex, the in-app assistant. Give the agent one clear objective (its North Star) so every call stays on track. For reactivation, that objective is usually: re-open the conversation warmly, confirm the person still has the need, and book a callback or meeting for anyone who is interested.

    ```text theme={null}
    You are calling past enquiries who went quiet. Be warm, brief, and
    low-pressure. Remind them who we are and why they reached out. Ask one
    simple question to check if the need is still live. If yes, book a
    callback or meeting. If no, thank them and close politely. Never push.
    ```

    Switch on the tools the agent needs under Tools, for example Schedule callback, Create booking, Create lead, and Send SMS. See [agent tools](/essentials/agent-tools) for the full list.
  </Step>

  <Step title="Import your contact list">
    Upload your cold list from a CSV in [Contacts](/essentials/contacts), map the columns (name, phone, and any fields you want the agent to reference), and segment it. Segmenting lets you target one audience per campaign (for example "2024 quotes, no reply") so your messaging and results stay clean.
  </Step>

  <Step title="Set calling hours and timezone">
    Define the calling window and the timezone the campaign should respect, so calls land at a sensible local time for each contact and never outside your allowed hours. The campaign only dials inside this window and picks up again in the next one for anyone it did not reach.
  </Step>

  <Step title="Attach a phone number">
    Attach a [phone number](/essentials/phone-numbers) for the campaign to call from (numbers start from \$2/month). A local-presence number in your contacts' region tends to lift answer rates. Concurrency, how many calls run at once, is set by your call slots, so a larger list clears faster with more slots.
  </Step>

  <Step title="Start the campaign">
    With the pre-flight checks green, start the campaign. The agent begins dialing through your list inside the calling window and handles each conversation live: qualifying interested contacts, booking callbacks, leaving a voicemail or SMS follow-up where there is no answer, and retrying missed contacts in later windows.
  </Step>
</Steps>

## Read your results

Every call is logged and scored, so you can watch reactivation working in near real time. Open [analytics](/essentials/analytics) to track:

* **Reach**: dialed, connected, and answer rate across the list.
* **Outcomes**: qualified, callbacks booked, not interested, voicemail, and retries.
* **Conversation quality**: per-call summaries, sentiment, and a quality score.
* **Cost**: minutes used against your included allowance, then pay-as-you-go from a blended average of \$0.05/min on top.

Drill into any single conversation in [call logs](/essentials/call-logs) for the transcript, the recording, and the exact next step the agent took. Callbacks the agent booked show up in [callbacks](/essentials/callbacks), and new interested leads flow into your CRM as deals.

## Tips for a higher reactivation rate

<AccordionGroup>
  <Accordion title="How many contacts should one campaign hold?">
    Keep each campaign to a single clean segment with a shared reason for the call. Narrow, well-labelled segments (one offer, one audience) reactivate better and make the analytics far easier to read than one giant undifferentiated list.
  </Accordion>

  <Accordion title="What happens when nobody answers?">
    The agent leaves a voicemail or sends an SMS follow-up where those tools are enabled, then retries the contact in a later calling window. Nobody is dropped after a single missed attempt.
  </Accordion>

  <Accordion title="Can the agent book straight into my calendar?">
    Yes. Connect your calendar and turn on Create booking or Schedule callback, and interested contacts get a real slot while still on the call rather than a promise to follow up later. See [agent tools](/essentials/agent-tools).
  </Accordion>

  <Accordion title="Can I trigger campaigns from my own systems?">
    The live programmatic surfaces are the [MCP server](/mcp/overview) and [Custom HTTP Tools](/guides/http-tools/overview), so an AI agent or your backend can act on campaign results. A public REST API and TypeScript SDK are in private beta: contact support for early access.
  </Accordion>
</AccordionGroup>

## Related

<CardGroup cols={2}>
  <Card title="Campaigns" icon="megaphone" href="/essentials/campaigns">
    Set up, schedule, and manage outbound campaigns.
  </Card>

  <Card title="Contacts" icon="address-book" href="/essentials/contacts">
    Import, segment, and manage the lists your campaigns call.
  </Card>

  <Card title="Analytics" icon="chart-line" href="/essentials/analytics">
    Track reach, outcomes, and quality across every campaign.
  </Card>

  <Card title="Add-ons" icon="puzzle-piece" href="/essentials/add-ons">
    Enable Outbound Campaigns and other add-ons for your plan.
  </Card>
</CardGroup>
