Roofing Lead Setter

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

SALARY

$2000-$3500 per month

HOURS PER WEEK

60

DATE UPDATED

Sep 4, 2026

JOB OVERVIEW

Lead Qualifier / Phone Setter — Roofing (Full-Time, Remote)

Booked generates exclusive homeowner leads for roofing contractors across the US.

The Role

Homeowners reply to our SMS campaigns. You call them, qualify them, and confirm they want a roofer to reach out. You are not booking calendar appointments — you are qualifying leads and setting them up for handoff.

This is a calling-heavy job: 100–150 dials a day, most of them follow-ups on people who already replied to us. No cold calling from purchased lists — everyone you call raised their hand first.

What You'll Do

Call new SMS replies within minutes — speed to lead d ---------- most of it
Qualify: do they own the home, is the roof 15+ years old, is there damage or a leak, are they actually interested
Confirm they're expecting the roofer's call, and note the best time to reach them
Follow up relentlessly — most leads convert on attempt 3 through 7, not attempt 1
Log every call outcome in Airtable, accurately

Requirements
Near-native, neutral English on the phone. You'll be talking to American homeowners, many of them 50+. They need to understand you instantly. This is the number one requirement and we screen hard for it.
1+ year of outbound calling, phone sales, or customer service — US market preferred. Roofing, solar, or home services is a plus.
Thick skin and persistence. You will get hung up on.
Reliable high-speed internet, a quiet room with a door that closes, a real headset, and a backup power/internet plan.
Able to commit to a genuine 60-hour week.

Schedule
60 hours per week, six days, roughly 10 hours a day, on your assigned US market's time zone (we run markets from Florida to Oregon). Read that twice before applying — the hours are the job.

Pay
Base of about $1,300 USD/month at full hours, plus uncapped per-lead bonuses. Realistic total: $2,000–$3,500/month, depending entirely on how many qualified leads you produce. Paid biweekly.

The top of that range is real, not a headline number — our strongest setters earn most of their pay from bonus, not base.

How to Apply

Subject line must read exactly: ROOF-SETTER — [your city] — [your daily dial volume]

Include: your calling experience, your available hours in US Eastern Time, and a speedtest.net screenshot.

Please send a short video assignment the same day — about 4 minutes, phone camera, one take, no editing. You'll answer three questions about your last sales or customer service job:

1. What were your actual numbers — calls per day, and how many sales or leads did that produce? And how did you know those numbers, where did you see them?
2. What was the worst call you ever had there? What did the customer say, what did you say, and what would you do differently now?
3. Why did you leave? If we called your last supervisor today, what one thing would they say you needed to improve?

The video is not optional — please only apply if you're willing to record one.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0009
Controller Execution Time ( Jobseekers / Job )  0.0124
Total Execution Time  0.0139
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,501,464 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Roofing-Lead-Setter-1724019
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0060 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1724019
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 855553
 LIMIT 1 
0.0005   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1724019
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-09-08',ej.date_added) duration_daysDATEDIFF('2026-09-08',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-09-08',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1724019' 
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1724019 
0.0009   UPDATE employer_jobs SET hit_counts '***Sep-04-2026=320***Sep-05-2026=108***Sep-08-2026=3' WHERE job_id'1724019'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Sep-2026=431' WHERE job_id'1724019'  
0.0004   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1724019' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1724019 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '855553'
AND `date_added` >= '2022-06-08' 
0.0004   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)