Last updated: August 30, 2026
By Ben Argeband, Founder & CEO of Heartbeat.ai — Short and humane; plug-and-play templates and timing.
Physicians don’t ignore recruiters because a subject line is weak. They’re in clinic, in procedures, behind a gatekeeper, or protecting personal time. Outreach that ignores that reality gets silence, or opt-outs, even when the role is a strong fit.
This playbook favors speed and cleanliness: verified contacts, respectful timing, and clear stop rules so you don’t burn candidates or waste touches on bad data.
What’s on this page:
Who this is for
Recruiters running multiple reqs who need a repeatable sequence their whole team can execute consistently, without guessing at timing or tone.
One operating truth worth repeating: sequences fail more often from bad data than bad copy. Multi-channel outreach only works when contact data is accurate and timing is respectful.
Quick Answer
- Core Answer
- Run a 10–12 day sequence: email first, then call and SMS, then spaced follow-ups with opt-out and refresh triggers when you see bounces or repeated no-answers.
- Key Insight
- Fix data quality before copy: verify email deliverability, validate direct dials, and refresh contact data after bounces, wrong numbers, or repeated no-answers.
- Best For
- Recruiters who need a simple sequence that gets replies without burning out candidates.
Compliance & Safety
This method is for legitimate recruiting outreach only. Always respect candidate privacy, opt-out requests, and local data laws. Heartbeat does not provide medical advice or legal counsel.
Framework: Proof → Relevance → Frictionless Next Step
When a physician doesn’t respond, it’s usually one of three problems: they don’t trust the message, it doesn’t feel relevant, or the next step asks for too much effort. This framework addresses all three directly.
- Proof: who you are, what organization you represent, and what role you’re recruiting for.
- Relevance: one sentence showing you understand their practice reality — setting, schedule, call, location, or career stage.
- Frictionless Next Step: a yes/no question or two time windows. No long forms, no vague “let me know.”
The trade-off: the more channels you use, the more your data hygiene and suppression discipline matter. A bounced email or a text to the wrong person doesn’t just cost you a touch — it creates risk and brand damage.
Step-by-step method
This is a day-by-day workflow with branching logic for bounce, no-answer, reply, and stop scenarios. Use it as a default, then tune timing and messaging based on what your own metrics tell you.
Step 0: Prep before you touch a candidate
- Define the one ask: “Open to a 10-minute call?” or “Want a 2-line summary?” Pick one per step.
- Pick proof points: facility type, schedule, call expectations, support, and start timeline at a high level.
- Set stop rules: immediate stop on opt-out; stop SMS if they request email-only; stop calling once you confirm a wrong person.
- Start with verified contacts: use deliverability-tested email and validated direct dials before you judge your copy. See how to find a physician’s email address and how to get a physician’s direct mobile number.
Step 1: Recommended timing windows (local time)
- Email: early morning or early afternoon tends to be easier to process than late evening.
- Calls: avoid obvious clinic rush windows; if you reach a gatekeeper, ask for the best time to reach the physician directly.
- SMS: one question, one opt-out keyword. Use it to schedule, not to pitch.
Operational rule: don’t stack multiple touches in the same day unless the physician is actively engaging. One clean touch beats three noisy ones.
Step 2: Day-by-day sequence with branching logic
Use this table as your runbook. It includes the refresh triggers that keep you from wasting touches on bad data.
| Day | Channel | What you send/do | Decision trigger | Next action |
|---|---|---|---|---|
| Day 1 | Short intro + relevance + 2 time windows + simple opt-out line. | Bounce? | If bounce: stop email to that address, refresh email, then restart Day 1 with corrected address. | |
| Day 2 | call | One call attempt during a reasonable window; leave a short voicemail if appropriate. | No answer? | If no answer: log attempt; proceed to Day 2 SMS only if your organization permits recruiting SMS for this contact and you can document the basis and opt-out handling. |
| Day 2 | SMS | One-line text: identity + role + yes/no question + opt-out keyword. | Reply? | If reply: move to scheduling; if “STOP/opt out”: suppress immediately across channels. |
| Day 4 | Follow-up with one new operational detail (schedule/call/support) + same frictionless ask. | No reply? | If no reply: proceed to Day 5 call. | |
| Day 5 | call | Second call attempt; if gatekeeper, ask for best time or preferred contact method. | Wrong number/person? | If wrong: mark record, refresh phone, and do not keep dialing the same line. |
| Day 6 | SMS | “Quick check” text offering A/B choice (text summary vs short call) + opt-out keyword. | Two calls + SMS with no engagement? | Refresh trigger: validate phone and confirm direct dial before Day 8. |
| Day 8 | “Close the loop” email: confirm interest level; offer to stop outreach. | Opt-out? | If opt-out: suppress across email/SMS/call lists immediately. | |
| Day 10 | call | Final call attempt; keep voicemail under 20 seconds. | No answer again? | Move to long-cycle nurture (monthly) or stop based on req urgency. |
| Day 12 | Final note: one sentence value + “Should I close your file?” + opt-out. | Still no engagement? | Stop sequence; keep record clean for future roles. |
TL;DR sequence summary
- Day 1: email
- Day 2: call, then SMS (if permitted and documented)
- Day 4: email
- Day 5: call
- Day 6: SMS
- Day 8: email
- Day 10: call
- Day 12: email
Step 3: Gatekeeper handling (10-second script)
If you reach a front desk or service line, don’t argue and don’t pressure. Your goal is the right channel or the right time window, nothing more.
Script: “Hi, this is [Name]. I’m trying to reach Dr. [Last Name] about a physician role. What’s the best way to send a short message, or the best time to call when they can take a quick minute?”
If the office asks you not to call again, treat that as a stop signal for that line and refresh your contact path.
Step 4: What to log in your ATS/CRM
- Channel: email, call, SMS.
- Outcome code: delivered, bounce, no answer, connected, human answer, reply, wrong person, opt-out.
- Next action: continue sequence, refresh email, refresh phone, switch to email-only, suppress.
- Channel preference: if stated (e.g., “email only”), record and honor it.
- Notes: one line only — what matters for the next touch.
Step 5: Refresh triggers
- Email bounce: refresh email before sending any follow-up. See email verification for healthcare recruiting.
- Wrong number / wrong person: stop calling or texting that line; refresh phone before any further attempts. See phone validation for provider direct dials.
- Repeated no-answers: treat it as a data-or-timing problem. Validate the number and shift call windows before adding more dials.
- Opt-out: suppress immediately across all channels.
Heartbeat.ai supports this workflow with verified contacts, refresh triggers, and ranked mobile numbers by answer probability so your dials go where you can actually connect.
Diagnostic table
Use this to diagnose why a sequence is underperforming and what to fix first. It’s built to protect placement speed and prevent wasted touches.
| Symptom | Most likely cause | What to check | Fix (next action) |
|---|---|---|---|
| High bounces | Bad email data | Bounce Rate = bounced emails / sent emails (per 100 sent emails) | Verify email; replace bounced addresses; restart at Day 1 for corrected email only |
| Delivered emails, no replies | Weak relevance or wrong target | Reply Rate = replies / delivered emails (per 100 delivered emails) | Tighten relevance line; add one operational detail; ask a yes/no question |
| Lots of dials, few connects | Wrong numbers or poor timing | Connect Rate = connected calls / total dials (per 100 dials) | Validate direct dials; change call windows; stop dialing lines marked wrong |
| Connects but no conversation | Physician busy; you didn’t earn permission | Answer Rate = human answers / connected calls (per 100 connected calls) | Open with “Is now a bad time?”; offer two short windows; keep it brief |
| High opt-outs | Too frequent, unclear identity, or wrong channel | Opt-out rate by step and by channel | Reduce frequency, tighten identity line, confirm channel preference, and enforce suppression |
Weighted checklist
Score your sequence before you launch it. If you can’t hit 80/100, fix the inputs first.
- (25) Data quality ready: deliverability-tested email; validated direct dial; correct specialty/location fields; suppression list applied.
- (20) Proof is clear: who you are, who you represent, and the role are obvious in the first two lines.
- (20) Relevance is specific: one line tied to setting, schedule, call, or location. No generic praise.
- (15) Frictionless next step: yes/no question or two time windows; scheduling link optional.
- (10) Consent + opt-out: every channel includes an opt-out path; opt-outs are enforced across systems.
- (10) Refresh triggers defined: bounce, wrong number, and repeated no-answers trigger a refresh before the next touch.
Outreach templates
These templates are intentionally short. Personalize only the relevance line and one operational detail, and always include a simple opt-out.
Email #1 (Day 1): Proof + relevance + next step
Subject: Quick question about a [Specialty] role in [City]
Hi Dr. [Last Name] — I’m [Name], a recruiter with [Org]. I’m reaching out about a [Specialty] opening at [Facility/Group] in [City].
Reason I thought of you: [1 line tied to setting/schedule/call/location].
Open to a 10-minute call this week? I can do [Option A] or [Option B].
If you’d rather not get messages from me, reply “opt out” and I’ll stop.
Call voicemail (Day 2 or Day 5): under 20 seconds
“Hi Dr. [Last Name], this is [Name] with [Org]. I’m calling about a [Specialty] role in [City] with [one operational detail]. If it’s easier, I can text or email details — what do you prefer? My number is [Callback].”
SMS #1 (Day 2): identity + yes/no + opt-out
Hi Dr. [Last Name] — [Name] recruiting for a [Specialty] role in [City]. Open to a quick 10-min call this week? Reply YES/NO. Reply STOP to opt-out.
Email #2 (Day 4): one new operational detail
Subject: Re: [City] [Specialty] role — quick detail
Dr. [Last Name] — one detail that may matter: [call schedule / clinic hours / support / setting].
Worth a 10-minute call? [Option A] or [Option B]. If not a fit, reply “opt out” and I’ll close the loop.
SMS #2 (Day 6): A/B choice
Dr. [Last Name] — quick check: would you prefer (A) a 2-line summary by text or (B) a 10-min call? Reply A/B. STOP to opt-out.
Email “close the loop” (Day 8 or Day 12)
Subject: Should I close the loop?
Dr. [Last Name] — I haven’t heard back, so I’ll assume timing is off. Should I (1) stop reaching out, or (2) send a 2-line summary for later?
Reply “opt out” to stop messages.
If you need verified contacts before you run this, start free search & preview data.
Common pitfalls
Common mistake: continuing a sequence after the data is telling you to stop. Bounces, wrong numbers, and repeated no-answers aren’t a reason to push harder — they’re a reason to pause and refresh.
- Blaming copy before fixing deliverability: if emails aren’t delivered, subject lines don’t matter.
- Dialing the same bad line repeatedly: once a number is flagged wrong person or wrong number, stop and refresh.
- Wrong-person recovery: if someone says you reached the wrong person, reply once with a brief apology, stop contacting that line, then refresh your data path.
- Over-touching: stacking touches creates complaints and opt-outs. Keep it spaced and purposeful.
- No suppression workflow: an opt-out must suppress across email, SMS, and call — not just the channel they used.
- Channel mismatch: if they ask for email-only, honor it. If they prefer text, keep it scheduling-only.
How to improve results
Track outcomes per channel and per step, then fix the first broken link in the chain: data, then deliverability, then relevance, then timing, then the ask. Don’t optimize step 6 if step 1 is bouncing.
Measurement instructions
- Connect Rate = connected calls / total dials (per 100 dials). Track by time window and list source.
- Answer Rate = human answers / connected calls (per 100 connected calls). Helps separate bad numbers from screened calls.
- Deliverability Rate = delivered emails / sent emails (per 100 sent emails). If this is low, stop tweaking copy and fix email quality.
- Bounce Rate = bounced emails / sent emails (per 100 sent emails). Any bounce should trigger an email refresh before the next email step.
- Reply Rate = replies / delivered emails (per 100 delivered emails). Separate positive replies, not-interested, and opt-outs.
Low-effort optimization moves
- Shorten the ask: replace “Can we talk?” with “Open to a 10-minute call?” and offer two windows.
- Make relevance operational: one concrete detail (call schedule, setting, support) beats generic enthusiasm.
- Refresh earlier: after a bounce, wrong number, or repeated no-answers, refresh before adding more touches.
- Standardize your notes: log outcomes as bounce/no-answer/wrong person/opt-out/positive so your team can act consistently.
Decision-tree worksheet (paste into your ATS)
This decision tree standardizes what happens when the candidate signal changes. It prevents wasted touches and keeps your team consistent.
| Event | Interpretation | Immediate action | Next step in sequence |
|---|---|---|---|
| Email bounces | Bad address or domain policy | Stop email to that address; refresh email | Restart at Day 1 with corrected email; do not send follow-ups to a bouncing inbox |
| Two calls = no answer | Bad number, wrong timing, or screened calls | Validate phone and change call window | Resume calls only after validation; otherwise shift to email-only nurture |
| SMS reply: “Who is this?” | Context missing | Send identity + role + opt-out keyword | If no response after clarification, stop SMS and continue only via appropriate channel |
| Reply: “Not interested” | Hard no for now | Acknowledge; ask permission to reach out later | Move to long-cycle nurture or suppress based on their preference |
| Reply: “STOP/opt out” | Opt-out request | Suppress immediately across systems | No further outreach on any channel |
Legal and ethical use
Keep outreach job-related, minimal, and easy to stop. Your best compliance tool is a clean suppression workflow and accurate records.
- Consent and channel choice: follow your organization’s policy for consent and permitted outreach channels, and honor channel preferences when a physician states them.
- Opt-out and suppression: include opt-out language in email and SMS, and suppress immediately across email, SMS, and call systems.
- Wrong-person protection: if you learn a number belongs to someone else, stop contacting it and refresh your data before any further attempts.
Official references: TCPA (FCC) and CAN-SPAM (FTC). For recruiter-focused summaries, see TCPA for recruiters calling/texting physicians and CAN-SPAM for healthcare recruiting.
Evidence and trust notes
This article focuses on operational best practices: verified contacts, respectful timing, and measurable outcomes by step. For how Heartbeat.ai evaluates sourcing, verification, and suppression, read our Trust Methodology.
- Compliance references: TCPA (FCC); CAN-SPAM (FTC).
- Data quality implementation: email verification for healthcare recruiting and phone validation for provider direct dials.
FAQs
How long should a physician outreach sequence run?
Long enough to cover real schedules — clinic days, call, travel — without turning into noise. A 10–12 day sequence with spaced touches is a practical default.
What should I do when emails bounce?
Stop emailing that address immediately, refresh the email, and restart at Day 1 with the corrected address. Don’t send follow-ups into a bouncing inbox.
When should I refresh contact data?
Refresh after an email bounce, a confirmed wrong number or wrong person, or repeated no-answers across multiple attempts. Refreshing is cheaper than burning touches on bad data.
What opt-out language should I include?
Email: “Reply ‘opt out’ and I’ll stop.” SMS: “Reply STOP to opt-out.” Then suppress the record across all channels.
What metrics matter most for this sequence?
Start with Deliverability Rate (delivered emails / sent emails), Bounce Rate (bounced emails / sent emails), Connect Rate (connected calls / total dials), and Reply Rate (replies / delivered emails). Track each per 100 attempts so you can compare steps.
Next steps
- If emails are bouncing, fix deliverability first: verify healthcare recruiting emails.
- If calls aren’t connecting, validate direct dials next: validate provider direct dials.
- When you’re ready to run the sequence with verified contacts, start free search & preview data.
About the Author
Ben Argeband is the Founder and CEO of Swordfish.ai and Heartbeat.ai. With deep expertise in data and SaaS, he has built two successful platforms trusted by over 50,000 sales and recruitment professionals. Ben’s mission is to help teams find direct contact information for hard-to-reach professionals and decision-makers, providing the shortest route to their next win. Connect with Ben on LinkedIn.