Lead Google Media Buyer

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

TYPE OF WORK

Full Time

SALARY

Based on Experience

HOURS PER WEEK

40

DATE UPDATED

Sep 25, 2026

JOB OVERVIEW

HOW TO APPLY
To be considered for this role, you must apply directly through our hiring portal using this link: ----------

WHO WE ARE
Spark Marketing Agency is a fast growing digital marketing firm dedicated to scaling home service contractors across the US. We utilize data driven advertising, local SEO, and in house media production to build predictable revenue engines for our clients. Our commitment to operational excellence and real ROI over vanity metrics has allowed us to deliver measurable growth and keep our clients winning month after month. We are focused on turning ad spend into signed contracts while building a team of highly accountable, top tier professionals.

THE ROLE
You are the lead media buyer overseeing Google Ads performance across the entire agency, with secondary oversight of paid social channels. You sit above three junior buyer and success manager teams and own results across 150+ accounts.

WHAT YOU'LL DO

* Oversee all client Google Ads accounts and review what junior buyers are running. Catch problems before clients do. You own the outcome when an account loses money and know how to fix it.
* Set the agency standards for Google Ads account structure, keyword intent, match types, negative keyword lists, bidding strategies, and conversion tracking.
* Train and coach the three junior media buyers. Review their search and social work weekly. Tell them what to change and why. Make them better every month.
* Run Spark's own Google and Meta campaigns to acquire new clients. This account directly funds the agency and gets your best work.
* Read performance reports and diagnose what is actually broken inside Google Ads and landing pages, not just what the numbers say.
* Understand lead quality, not just cost per lead. You know the difference between a high-intent search lead that books and low-intent click volume that drains budget.

WHAT WE'RE LOOKING FOR

* Deep, proven mastery in Google Ads (Search, Performance Max, Local Service Ads, Display, YouTube). This is the absolute priority for this role.
* 3+ years managing Google Ads on the agency side, not client side.
* Real, proven experience running lead generation for home services or contractor client accounts (plumbing, roofing, HVAC, remodeling, etc.). This is not negotiable. Ecommerce, info products, and SaaS experience do not transfer here.
* Track record of managing multiple client accounts simultaneously without letting smaller ones suffer.
* Deep comfort with Google Ads account architecture, Google Tag Manager (GTM), GA4, offline conversion tracking, and call tracking.
* Ability to read performance reports, audit search term reports, and diagnose tracking or bidding issues quickly.
* Prior experience training, reviewing, or managing other media buyers.
* Clear, direct communication in writing and on calls. No scripts needed.
* Reliable internet and a computer that can handle a full workday.
* Commitment to working 9 a.m. PST to 6 p.m. PST (this is overnight in the Philippines and parts of Asia).

NICE TO HAVE

* Solid working knowledge of Meta Ads Manager.
* Experience with GoHighLevel CRM, call tracking software, and lead automation.
* Prior work with a dedicated video, creative, or landing page design team.

WE ARE NOT LOOKING FOR

* Someone who only knows Meta Ads and treats Google Ads as an afterthought.
* Someone who relies solely on automated recommendations or broad match keywords with no oversight.
* Someone who needs daily check ins or constant hand holding.
* Someone who blames the client, landing page, or Google updates when things go wrong.

We want someone who owns the number.

LOGISTICS
Full time independent contractor role, remote. You must be able to work from 9 a.m. PST to 6 p.m. PST reliably. Compensation is based on experience and demonstrated contractor account management at scale.

To complete your application, apply directly here: ----------

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0010
Controller Execution Time ( Jobseekers / Job )  0.0121
Total Execution Time  0.0140
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,507,488 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Lead-Google-Media-Buyer-1738267
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0052 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1738267
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 979891
 LIMIT 1 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1738267
AND `misc`.`id` IS NULL 
0.0004   SELECT e.business_name, e.logo, e.website, e.rebill_date, e.date_added member_date, hits, DATEDIFF('2026-09-27',ej.date_added) duration_days, DATEDIFF('2026-09-27',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-09-27',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1738267' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1738267 
0.0007   UPDATE employer_jobs SET hit_counts = '***Sep-25-2026=504***Sep-26-2026=72***Sep-27-2026=2' WHERE job_id= '1738267'  
0.0006   UPDATE employer_jobs SET monthly_hits = '***Sep-2026=577' WHERE job_id= '1738267'  
0.0003   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1738267' AND status LIKE 'sent%' ORDER BY id DESC  
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1738267 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '979891'
AND `date_added` >= '2022-06-08' 
0.0003   select * from teasers 
0.0002   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)