ADS MANAGER

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

TYPE OF WORK

Full Time

SALARY

TBD

HOURS PER WEEK

40

DATE UPDATED

Oct 2, 2026

JOB OVERVIEW

Meta Ads Manager: Lead Generation for a Service Business (GoHighLevel Required)

About us
[Company Name] is a [type of service] business that has run profitable Facebook and Instagram ads for over three years. Our ads bring in leads online, and our team turns them into phone calls and booked jobs. The ads work. What we're missing is one person who owns the whole picture: the campaigns, the numbers behind them, and the tracking that tells us when to scale.

The role
You'll take charge of our Meta ads department. This is more than running campaigns. You'll be responsible for knowing exactly what each lead costs, which leads turn into revenue, how fast we get our money back, and when it's safe to spend more. We're open to contractors and to people who work with other clients, as long as you deliver results and keep us informed.

What you'll do

Manage and improve our Meta ad account, including strategy, creative testing, audiences, and budgets.
Track the full journey from ad click to lead to phone call to booked job to revenue inside GoHighLevel, our CRM.
Replace our manual leads-tracking spreadsheet with reliable reporting in GoHighLevel. That includes pipelines, lead source attribution, and dashboards.
Know our key numbers and report them every week: cost per lead, cost per booked call, cost per customer, return on ad spend, and payback period.
Make clear, numbers-backed recommendations on when to scale, when to hold, and when to cut.
Work with our sales and phone team on lead quality and speed-to-lead.

What you bring

At least 2 years managing Meta ads for lead generation, ideally for local or service-based businesses.
Hands-on experience with GoHighLevel, including pipelines, forms, workflows, and reporting.
Working knowledge of the Meta Pixel, Conversions API, and sending offline or CRM conversions back to Meta.
Comfort with unit economics. You should be able to explain how you'd d ---------- a campaign is ready to scale.
Clear, regular communication. No disappearing for two weeks.

Details

Full-time
Remote
Base + performance bonus

How to apply
Send your resume along with one example of a lead-gen account you managed. Include the monthly spend, cost per lead, and what happened to those leads after they came in. In two or three sentences, answer this question: "How do you d ---------- when a campaign is ready to scale?"

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0123
Total Execution Time  0.0135
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,499,440 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/ADS-MANAGER-1739830
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0072 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1739830
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 773438
 LIMIT 1 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1739830
AND `misc`.`id` IS NULL 
0.0005   SELECT e.business_name, e.logo, e.website, e.rebill_date, e.date_added member_date, hits, DATEDIFF('2026-10-03',ej.date_added) duration_days, DATEDIFF('2026-10-03',e.rebill_date) duration_rebill, ej.*, e.deactivate FROM employers e, employer_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-10-03',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1739830' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1739830 
0.0021   UPDATE employer_jobs SET hit_counts = '***Sep-28-2026=525***Sep-29-2026=115***Sep-30-2026=39***Oct-01-2026=30***Oct-02-2026=1118***Oct-03-2026=26' WHERE job_id= '1739830'  
0.0012   UPDATE employer_jobs SET monthly_hits = '***Sep-2026=679***Oct-2026=1173' WHERE job_id= '1739830'  
0.0004   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1739830' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1739830 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '773438'
AND `date_added` >= '2022-06-08' 
0.0004   select * from teasers 
0.0002   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)