Google Ads Specialist (Local Service Businesses)

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

TYPE OF WORK

Any

SALARY

1000

HOURS PER WEEK

40

DATE UPDATED

May 11, 2026

JOB OVERVIEW

We're a digital marketing agency helping local service and blue-collar businesses grow, including junk removal, dumpster rental, roofing, HVAC, lawn care, construction, and more. We're looking for a Google Ads specialist who knows how to actually move the needle for service businesses in competitive local markets.

This isn't a "set it and forget it" role. You'll own the strategy, build, optimization, and reporting for client Google Ads accounts. You'll have a full team behind you, including designers, copywriters, landing page developers, video editors, and automation specialists, so you can focus on what you do best: running ads that generate qualified leads and phone calls.

We're not looking for someone who's just managed Google Ads. We're looking for someone who's gotten real results for real local business owners and can prove it.

What you'll do:

Build, launch, and optimize Google Ads campaigns (Search, Performance Max, Display, YouTube) for local service businesses
Conduct keyword research, write ad copy, and manage negative keyword lists
Set up and maintain conversion tracking via GA4, Google Tag Manager, and call tracking platforms
Manage budgets across multiple accounts and optimize for cost per qualified lead, not just clicks
Run geo-targeting and dayparting strategies specific to local service markets
Collaborate with our landing page and creative teams to align ad-to-page experience
Audit existing client accounts and identify quick wins, structural issues, and long-term growth opportunities
Deliver clear, honest reporting on performance and proactively communicate strategy changes
Stay ahead of Google Ads platform updates, bid strategy changes, and emerging features
What we're looking for:

2+ years of hands-on Google Ads experience managing accounts for local service businesses (blue-collar industries like roofing, HVAC, junk removal, dumpster rental, and lawn care strongly preferred)
Demonstrated results. You can show us accounts you've grown, leads you've generated, and cost-per-lead numbers you've driven down
Strong analytical mindset. You read data, draw conclusions, and act on them
Solid understanding of conversion tracking, attribution, and call tracking (WhatConverts, CallRail, or similar)
Experience with GA4 and Google Tag Manager
Familiarity with Google Local Service Ads is a plus
Comfortable owning accounts end-to-end without hand-holding
Clear communicator who hits deadlines and tells the truth about performance, even when it's bad news
Someone who wants to grow with the company, not just clock hours
Skills: Google Ads, Performance Max, GA4, Google Tag Manager, conversion tracking, call tracking, keyword research, bid strategy, local lead generation

To apply, please include:

Case studies or examples of accounts you've managed (anonymized is fine). Include industry, monthly budget range, and key results like CPL, conversion volume, and ROAS
A brief note on your specific role in each account (full ownership, support, audit, etc.)
Note: Shortlisted candidates will complete a short skills test, either a sample account audit or campaign build scenario, to demonstrate strategic thinking and platform proficiency.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0186
Total Execution Time  0.0200
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,513,072 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Google-Ads-Specialist-Local-Service-Businesses-1643785
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0133 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1643785
 LIMIT 1 
0.0012   SELECT *
FROM `employers`
WHERE `employer_id` = 754604
 LIMIT 1 
0.0030   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1643785
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-08',ej.date_added) duration_daysDATEDIFF('2026-08-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-08-08',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1643785' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1643785 
0.0009   UPDATE employer_jobs SET hit_counts '***May-11-2026=329***May-12-2026=54***May-13-2026=18***May-14-2026=13***May-15-2026=8***May-16-2026=7***May-17-2026=1***May-18-2026=3***May-19-2026=4***May-20-2026=4***May-21-2026=5***May-22-2026=3***May-23-2026=1***May-24-2026=2***May-26-2026=3***May-27-2026=1***May-29-2026=1***May-30-2026=1***May-31-2026=3***Jun-01-2026=3***Jun-02-2026=1***Jun-03-2026=2***Jun-05-2026=1***Jun-07-2026=4***Jun-09-2026=2***Jun-11-2026=3***Jun-13-2026=2***Jun-15-2026=1***Jun-16-2026=2***Jun-18-2026=2***Jun-20-2026=3***Jun-22-2026=1***Jun-23-2026=6***Jun-27-2026=1***Jul-04-2026=3***Jul-07-2026=3***Jul-09-2026=3***Jul-14-2026=3***Jul-15-2026=1***Jul-17-2026=2***Jul-18-2026=2***Jul-19-2026=1***Jul-20-2026=1***Jul-26-2026=1***Jul-27-2026=1***Jul-28-2026=2***Jul-30-2026=3***Aug-02-2026=1***Aug-08-2026=1' WHERE job_id'1643785'  
0.0005   UPDATE employer_jobs SET monthly_hits '***May-2026=460***Jun-2026=34***Jul-2026=26***Aug-2026=2' WHERE job_id'1643785'  
0.0016   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1643785' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1643785 
0.0041   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '754604'
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)