Candidates often leave recruiter emails unread, and they screen unknown calls, but they usually read texts. That is why staffing teams move scheduling and follow-up to SMS. It is also why a careless recruiting text gets reported as spam, filtered by carriers or, at worst, cited in a TCPA claim.

Below are sample messages for every stage, from first contact through the offer. Each template is written to stay under 160 plain characters, so it bills as one segment. Before the templates, we cover the consent rule that decides who you can text at all.

Who you can text: the consent line

Recruiting is full of contacts who never asked to hear from you: sourced profiles, scraped lists, old resumes. Treat SMS as the channel for people who opted in or replied to you. Reach everyone else by phone or email first.

Candidates you can usually text:

  • Applicants who checked an SMS consent box on your application form, with clear wording ("I agree to receive texts about my application from [Agency]. Msg and data rates may apply. Reply STOP to opt out.")
  • Candidates who texted you first, for example by replying to a job-fair keyword or a number printed on a job ad
  • Past placements who opted in and haven't opted out since

Candidates you should not text yet: anyone you found on a job board or LinkedIn who hasn't agreed to texts. Call or email them, and ask for permission to text.

Keep the consent record (the timestamp, the form wording and the page URL) in your ATS or application form. Ready records your attestation each time you send a campaign (and each API send that attests consent): who sent it, to how many people and when. It does not store each candidate's opt-in, so your system has to hold that. Compliance is ultimately the sender's responsibility. For wording you can paste into a form, see our opt-in language examples. (A contact who signs up on a Ready-hosted opt-in page is the exception: Ready stores that sign-up, with the time, IP address and exact wording, and support@tryready.com can send you a copy.)

Candidate outreach templates

The first message should identify you, give the reason for the text and include an opt-out. Leave out links. A link in a first message is a common filtering trigger, and we explain the two-message warmup that avoids it in this post on links in first texts.

New applicant:

Hi {first_name}, this is {recruiter} at {agency}. Thanks for applying for the {role} job. Do you have 10 minutes for a quick call this week? Reply STOP to opt out.

Past placement, new opening:

Hi {first_name}, {recruiter} from {agency} here. A {role} job opened near {city} that fits your last assignment. Want details? Reply YES or STOP to opt out.

Job-fair keyword reply (this person texted you first):

Thanks for texting {agency}! What type of work are you looking for: warehouse, office or healthcare? Reply STOP anytime to opt out.

Referral who opted in through your referral form:

Hi {first_name}, {referrer} said you might be open to a {role} job. This is {recruiter} at {agency}. Good time to chat? Reply STOP to opt out.

Interview scheduling templates

When booking an interview, offer specific time slots instead of asking "when works?". A candidate can answer "2" in one reply, and you avoid a long back-and-forth.

Offer slots:

Great news, {first_name}: {client} wants to interview you for {role}. Reply 1 for Tue 10 AM, 2 for Tue 2 PM, or 3 for Wed 11 AM.

Confirm:

You're set for {day} at {time} with {interviewer} at {address}. Bring a photo ID. Reply C to confirm or R to reschedule.

Reschedule:

No problem. Here are new times: 1 for Thu 9 AM, 2 for Thu 3 PM. Reply with the number that works.

Video interview (the candidate has already replied, so a link is fine here):

Your video interview is {day} at {time}. Join here: {link}. Test your camera 5 minutes early. Reply R if you need a new time.

For reminders, timing matters as much as wording. One reminder 24 hours before and one about 2 hours before covers most no-shows. Our appointment reminder and request templates include more variations.

Follow-up templates

Post-interview check-in:

Hi {first_name}, how did the interview with {client} go? Any questions I can pass along before they decide?

Offer:

{first_name}, {client} wants to offer you the {role} job at {pay}/hr, starting {date}. Can you talk today to go over details?

First-day logistics:

Day 1 reminder: {date}, arrive 7:45 AM at {address}, ask for {supervisor}. Wear closed-toe shoes. Text me here with any questions.

Not selected:

Hi {first_name}, {client} went with another candidate for {role}. You interviewed well, so I'll text you when something similar opens. Reply STOP to opt out.

No response after outreach (send only once):

Hi {first_name}, just checking in on the {role} job. Still interested? If the timing's off, no worries. Reply STOP to stop texts.

Don't send more than one nudge. If a candidate ignores two texts, follow up by email. For more recruiter-specific scripts, see recruiting text messages.

What a hiring push costs: worked example

Assumptions: a staffing team is filling a seasonal warehouse surge. It has 250 applicants who opted in. Each applicant gets 4 one-segment texts (outreach, scheduling, reminder and follow-up), and replies add about 300 inbound segments. On Ready, replies are billed like sent texts.

ItemMathCost
Outbound250 × 4 = 1,000 segments1,000 × $0.0075 = $7.50
Inbound replies300 segments300 × $0.0075 = $2.25
Carrier fee1,300 × $0.0045$5.85
Registration (monthly)$25 for registration + $2 number$35.00

That is $41.75 for segments and registration, plus $5.85 in carrier fees, so $47.60 a month on the Standard rate. This is all-in except for the optional compliance surcharge: scrubbing and landline validation each add $0.003 per segment when you switch them on, and both are off by default.

Now see what one emoji does. A friendly 140-character scheduling text with a 👋 becomes a unicode message limited to 70 characters per segment. Instead of 1 segment it bills as 3. Across those 1,000 outbound texts, that turns 1,000 segments into 3,000 and the outbound line triples. Leave emoji out of recruiting texts.

Setup checklist for recruiting SMS

  1. Register your brand and campaign (10DLC). Unregistered traffic gets filtered. On Ready, the charge at submission is the first month, $25, and most approvals take 2 to 7 days. Use recruiting-specific sample messages like the ones above. If a submission comes back rejected, our 10DLC rejection guide explains how to rewrite it.
  2. Rely on quiet hours. Ready holds texts sent outside permitted hours in the candidate's local area, so a late-night "are you available tomorrow?" campaign or automation text goes out the next morning. Campaigns, drip campaigns and automations wait up to 24 hours for the window; a one-to-one or API text is held only if the window opens within 6 hours, otherwise it is refused and must be resent; a one-to-one reply to someone who texted you in the last 24 hours goes out at any hour.
  3. Let STOP work. On Ready, an opt-out applies across every campaign, so a candidate who opts out from one recruiter's text won't get a text from another recruiter's campaign.
  4. Pick a number candidates recognize. With local presence on, Ready sends from the account number closest to the candidate's area code. It is on unless you switch it off, because a local number looks familiar.
  5. If you build on an ATS or platform, the messages API takes a consent_attested flag on each send, and sub-accounts keep each branch or customer's numbers and registration separate.

The practical takeaway

Text candidates who opted in or replied to you, leave links out of first messages, offer numbered interview slots and keep every template under 160 plain characters. Send one nudge, not five, and keep the per-candidate consent record in your own system.

If you want to try these templates, you can create an account. The first 20 one-to-one texts are free, so send a few scheduling texts to your own team before you submit registration. Pricing is on the pricing page.