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

# Outreach

> When and how Tenzo reaches out to a candidate — outreach hours, retries, cooldown, and what stops outreach

When you add a candidate to a job, Tenzo decides **when** to contact them and **how** based on a set of rules: the candidate's stage, your outreach hours, the job's retry budget, cross-job cooldown, and the candidate's contact preferences. This page walks through each of those rules and points to where you can adjust them.

For the high-level pipeline, see [Candidate Stage Lifecycle](/candidate-stage-lifecycle/overview).

## When outreach starts

A candidate becomes eligible for outreach the moment they enter the **Outreach** stage. That happens automatically when:

* Their [resume passes review](/resume-review/overview) (or the job has resume scoring turned off), or
* A recruiter clicks **Progress to Interview** on a candidate in **Resume Rejected**. Any rejection email that was queued for them is cancelled at the same time.

If the candidate is already being reached out to on another job at your organization, they go to **[Cooling Down](#cooldown-across-jobs)** first and pick up the new job's outreach later.

## Scheduling the first attempt

Tenzo schedules each outreach attempt for the next valid slot inside your **Outreach Hours**, in the candidate's local timezone.

* **Weekday window**: configurable (default 8 a.m. – 9 p.m.).
* **Weekend window**: optional, configurable separately. Weekends are enabled by default.
* **Timezone**: taken from the candidate record. When a candidate is added, Tenzo sets the timezone from any value the ATS supplies, then falls back to the zip code, then to the candidate's location point (for example a city/state look-up when there is no zip), then to the phone's area code. If none of those are available, the candidate is treated as Eastern Time.

You can adjust outreach hours under **Settings → Outreach Hours**.

### Initial Outreach Method

Each job has an **Initial Outreach Method** setting that biases how the first contact looks:

| Method                       | What happens                                                                                                                                                                                                                                                                                                                      |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Outreach Hours** (default) | On the **first contact attempt**: if it's inside outreach hours → Tenzo places a call; if it's outside → Tenzo sends an SMS now (with a companion email) so the candidate gets a same-day touch instead of waiting until morning. Retry attempts always wait for the next outreach window — they never fire an SMS outside hours. |
| **Call**                     | Always start with a call (subject to consent and phone-line type).                                                                                                                                                                                                                                                                |
| **SMS**                      | Always start with an SMS plus a companion email.                                                                                                                                                                                                                                                                                  |

Change this under **Job Settings → Phone Call Outreach Settings → Initial Outreach Method**.

### Video interview jobs

Some jobs are configured so the candidate completes their interview in the browser instead of by phone — controlled by the **Call Type** setting on the job. For these jobs, **outreach is an email containing a link** the candidate clicks to schedule and start their interview; Tenzo does not place an outbound phone call. The same retry budget and outreach-hours rules apply: each retry sends another invite email at the next valid slot. Link expiration is configurable under **Job Settings → Video Interview Outreach Settings → Interview Link Expiration** (default: no expiration).

## Retries

If a call ends in voicemail, no-answer, or busy, Tenzo schedules a retry. Three settings control the cadence under **Job Settings → Auto-Reschedule on Voicemail**:

| Setting            | Default | What it controls                                                                    |
| ------------------ | ------- | ----------------------------------------------------------------------------------- |
| Retry on voicemail | On      | Master switch — turning it off disables both voicemail retries and consent retries. |
| Retry count        | 5       | Number of follow-up attempts after the first call.                                  |
| Retry hours        | 26      | Hours between attempts.                                                             |

Every rescheduled attempt is re-bounded to outreach hours, so retries never fall outside your window. When the retry budget is used up without a successful interview, the candidate moves to **Max Attempts - No Interview** and Tenzo stops calling.

**Incomplete interviews (Hung Up).** If a candidate hangs up before finishing the scripted interview, Tenzo may schedule a follow-up call (subject to the same retry budget and outreach-hours rules), even when their completion percentage is high: the candidate must reach the scripted outro for the call to count as finished. This does **not** apply when the candidate reached the scripted outro **and** graded question completion is above **75%**: those calls are marked **Completed** and Tenzo does not auto-retry them, even if the completion percentage is below 100%. If the outro was reached but completion is **75%** or below, Tenzo treats the attempt as incomplete for retries.

## Cooldown across jobs

When a candidate is added to a job and they're already being contacted for another job at your organization, Tenzo holds them in a **Cooling Down** stage instead of starting a second outreach in parallel. Once the other outreach concludes, the candidate automatically resumes on the new job.

### Entry

A candidate is placed in **Cooling Down** when they're added to a job and any of the following is true on another job at your organization:

* They're currently being reached out to.
* They have an outreach attempt queued up.
* They were called within your configured cooldown window.

### While in Cooling Down

The candidate receives no outreach of any kind — no calls, texts, or emails — until they exit the stage.

### Exit

Cooling Down candidates exit automatically as soon as they're ready:

| Condition                                        | Result                                                                     |
| ------------------------------------------------ | -------------------------------------------------------------------------- |
| The other outreach has concluded                 | Resume is reviewed (if applicable) and the candidate moves to **Outreach** |
| The candidate has been waiting more than 14 days | Moves to **Cooldown Expired** (no outreach is sent)                        |
| A recruiter clicks **Progress to Interview**     | Outreach begins immediately                                                |

The 14-day expiration takes precedence, so a candidate who has been waiting too long won't suddenly receive a stale first contact.

### Settings

Configure under **Settings → Candidate Cooldown Period** at the org level, with per-job overrides. Set a value to 0 to disable cooldown for that candidate type.

| Source    | Channel | Default      |
| --------- | ------- | ------------ |
| Sourced   | Phone   | 1 day        |
| Sourced   | Web     | 1 day        |
| Applicant | Phone   | 1 day        |
| Applicant | Web     | 0 (disabled) |

The day count controls only the "called within window" trigger — active outreach and queued attempts on another job will always trigger cooldown, regardless of the day setting.

### UI

**Stage badges:** **Cooling Down** (orange), **Cooldown Expired** (gray).

**Cooling Down tooltip:** "This candidate recently received outreach for another job. Outreach will begin automatically once the cooldown period ends."

**Cooldown Expired tooltip:** "This candidate was not reached in time — outreach was canceled to avoid a stale first contact."

## Channel choice at send time

Right before each outbound attempt, Tenzo re-checks the situation and picks a channel:

* **Phone line type.** If the candidate's number is a landline, fixed VoIP, pager, or any other non-SMS-capable line, Tenzo skips SMS and falls back to a phone call (with a companion email when an email integration is connected). Non-fixed VoIP numbers (such as Google Voice) can receive texts, so they stay eligible for SMS. The line type check runs automatically and is cached for 30 days.
* **Contact preferences.** Tenzo respects per-channel consent. If a candidate is opted out of SMS, the system tries email as a fallback. If a candidate is opted out of calls, calls are skipped. If a candidate has opted out of all AI communications, calls are blocked. SMS is unaffected (gated solely by SMS consent) and email is still allowed (email opt-out is a separate preference).

## When a candidate calls our number

If a candidate dials the phone number Tenzo is using to reach them, Tenzo handles the inbound call automatically:

* **Known number.** If the inbound caller ID matches a candidate we're already in touch with, the call resumes their most recent interview (or starts a new one for the active job).
* **Unknown number.** If the caller ID doesn't match any candidate, Tenzo runs a short verification and then asks for their full name. How the caller proves who they are depends on the organization: when an email integration is connected, they read back the 8-character code from the bottom of their outreach email; for SMS-only organizations (no email integration, so there's no code to send), they're instead asked which phone number they applied with, or have been receiving texts from, and that number is matched against the one on file. On a successful match, the call is linked to their candidate record and rolls into the interview.

This is how candidates without a stored phone number — or candidates calling from a different phone than the one we have on file — still reach a live interview after receiving an email or SMS.

## Phoneless candidates

When a candidate is added with an email but no phone number, Tenzo doesn't drop them. Instead:

* **Phone-call jobs.** Tenzo sends an outreach email (the same one it would send as a companion to SMS) and re-tries the email on the normal retry cadence. The candidate can dial the recruiter number from any phone and verify their identity to start their interview — see [When a candidate calls our number](#when-a-candidate-calls-our-number) above (for these email-equipped candidates that means reading back the code from the email footer). The verification flow also captures their number on the candidate record, so subsequent outreach can use it.
* **Video interview jobs.** The candidate receives the standard invite email with the scheduling link. If they don't have a phone on file when they reach the interview page, they're prompted to enter one before they begin.

A candidate is only marked **Invalid Contact** when there's nothing usable on file — no phone *and* no email (or email consent denied / no email integration connected).

## What stops outreach

Outreach is halted — pending attempts cancelled, no new ones scheduled — when:

* The candidate moves to **Not Interested**, **Consent Revoked**, **Canceled**, **Dispositioned**, **Fraud Rejected**, **Failed Knockout**, **Opted Out**, **AI Interview Scheduled**, **Cooling Down**, or another terminal stage. See [Interview Stages](/candidate-stage-lifecycle/interview-stages) for the full list.
* The candidate has no usable phone **and** no email on file, or an SMS/call hits an invalid-number error from the carrier — the candidate moves to **Invalid Contact**. Candidates who have email-on-file (and email consent) but no phone get an outreach email instead and remain in **Outreach** — see [Phoneless candidates](#phoneless-candidates) below.
* The person reached at the candidate's phone number replies by text to say it is the wrong number — the candidate moves to **Wrong Number**.
* The retry budget is exhausted (the candidate moves to **Max Attempts - No Interview**).
* The job is paused. When you unpause, Tenzo re-evaluates cooldown: candidates return to **Outreach** if no cooldown applies, or to **Cooling Down** if another job's outreach is still active.
* Your ATS reports the candidate has been rejected or withdrawn — Tenzo cancels pending attempts and moves the candidate to **Dispositioned**.

## Not Interested vs. Consent Revoked

These two stages look similar but behave very differently. The right one is chosen automatically based on what the candidate said.

|                       | Not Interested                                                                                                                                                                                             | Consent Revoked                                                                                                                                                      |
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Scope**             | This job only                                                                                                                                                                                              | This job only + consents for future jobs                                                                                                                             |
| **When it's set**     | Candidate told us they're not interested in this specific role (inbound SMS/phone), or a **sourced** candidate confirmed on the not-interested page after clicking the link in their outreach email footer | Candidate texted `STOP`, asked not to be contacted by sms or email, asked not to be contacted during an AI phone screen, or had consent revoked upstream in your ATS |
| **Channels affected** | None — consent is left intact                                                                                                                                                                              | Only the channel(s) the candidate was operating within: an SMS opt-out revokes texting **and** AI calling but keeps email; an email opt-out revokes only email       |

Tenzo reads inbound SMS replies and routes the candidate to the right bucket automatically. A reply like *"not interested in this role right now"* lands in **Not Interested**. A reply like *"remove me from your system"* is treated as a possible opt-out, so Tenzo first sends a short confirmation question asking whether they'd still like to hear about future opportunities. If they say no (or the reply is unclear or never comes), the candidate goes to **Consent Revoked** — texting and AI calling are turned off (email stays intact). If they say yes, the candidate lands in **Not Interested** for this job only and stays eligible for other roles. A keyword-level `STOP` goes straight to **Consent Revoked** without a confirmation step.

**Sourced candidates** also have a separate path to **Not Interested** that does not go through SMS. Outreach emails sent to sourced candidates (for example no-answer, thank-you, job-paused, and job-resumed messages) include a **not interested** link in the footer. Clicking it opens a web page where the candidate can confirm or cancel — the stage only changes after they confirm. Applicants see a withdraw-application link instead; this email link is for sourced candidates only.

The legacy **Do Not Contact** stage is no longer applied — opt-outs now land in **Consent Revoked**.

## Other automated touches

Beyond the prospecting flow above, Tenzo can send a handful of other scheduled communications. Each has its own setting and obeys the candidate's email preferences:

* **Rejection email.** Optionally sent 24 hours after a candidate enters **Resume Rejected**, rounded to outreach hours. Off by default. Enable under **Settings → Rejection Emails**.
* **Resume feedback email.** Sent on the same cadence as rejection emails. On by default. Configure under **Settings → Resume Feedback Emails**.
* **Scheduling reminders.** Pings to a candidate who agreed to schedule a call but hasn't picked a time. These honor outreach hours.
* **Meeting reminders.** SMS reminders 24 hours and 1 hour before a scheduled interview. Not bounded by outreach hours, because the meeting time itself is what's being respected.
* **Video interview reminder emails.** For candidates who self-scheduled a video interview, separate email reminders go out before the scheduled slot. Configure under **Job Settings → Video Interview Outreach Settings → Reminder Emails** (count and spacing are both configurable; default is 7 reminders, 12 hours apart).

## Where to configure

| Behavior                                  | Setting                                                                    |
| ----------------------------------------- | -------------------------------------------------------------------------- |
| Outreach hours, weekend hours             | Settings → Outreach Hours                                                  |
| Initial outreach method                   | Job Settings → Phone Call Outreach Settings → Initial Outreach Method      |
| Retry count and spacing                   | Job Settings → Phone Call Outreach Settings → Auto-Reschedule on Voicemail |
| Applicant outreach delay                  | Job Settings → Phone Call Outreach Settings → Applicant Outreach Delay     |
| Cooldown days                             | Settings → Candidate Cooldown Period                                       |
| Rejection / resume feedback email toggles | Settings → Rejection Emails, Resume Feedback Emails                        |

Org-level defaults can be overridden per job. When a job sets its own value, that value fully replaces the org default for that job.

## Related

* [Interview Stages](/candidate-stage-lifecycle/interview-stages) — what every stage means and how a candidate gets there
* [Candidate Stage Lifecycle](/candidate-stage-lifecycle/overview) — the high-level pipeline view
* [Available Settings](/settings/available-settings) — the full settings reference, with screenshots
