Facebook Ads Media Buyer

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

TYPE OF WORK

Full Time

SALARY

negotiable based on experience

HOURS PER WEEK

40

DATE UPDATED

Mar 2, 2026

JOB OVERVIEW

We’re Not Hiring “Ad Experts.” We’re Hiring People Who Learn Fast and Execute Cleanly.
(PLEASE DO NOT REPLY DIRECTLY TO THIS POST. IF YOU WOULD LIKE TO APPLY, FOLLOW THE STEPS AT THE END.)

Pay: Negotiable flat rate per 2-week period (USD), based on experience
Pay Timing: Paid once every 2 weeks. 80 hours per period, agreed upon at hire
Location: Remote (Philippines-based applicants only)
Role Type: Full-time | Long-term
Openings: 5 Media Buyer roles
Team Scope: Executes media buying under the Lead Media Buyer and Ops system

Why This Role Exists
Meta Ads rewards discipline, not guessing.
At Black Hat Strategy, performance doesn’t come from hacks or shortcuts. It comes from interpreting signals correctly, following systems, and making fewer — better — decisions.

We’re hiring five Media Buyers to execute inside a proven framework. Prior ad experience is helpful, but not required. What matters more is your ability to think analytically, follow process, and learn quickly.

This role exists so:
Campaigns are managed consistently
Budgets are paced correctly
Creative tests are structured, not random
Performance changes are interpreted before actions are taken

This is not a “figure it out as you go” role.
This is a learn fast, execute clean role.

What You’ll Actually Be Doing
You will not be left guessing.
You will be trained and supported.

As a Media Buyer, you will:
Manage Meta ad accounts for ecommerce brands
Launch and maintain campaigns using predefined structures
Monitor performance signals and pacing daily
Make changes only when signals justify it
Document actions and observations inside ClickUp
Flag issues early instead of reacting late
Escalate when something truly feels off — not every dip
Structured check-in with the Lead Media Buyer (if applicable)

You are not expected to know everything on day one.
You are expected to learn quickly and follow the system.

What This Role Owns (From the SOP)
Day-to-day campaign execution
Budget pacing and spend stability
Structured creative testing
Signal observation and documentation
Following escalation rules exactly as written
ClickUp task hygiene and update consistency

If performance changes, this role:
Observes first
Interprets second
Acts third

This Role Is for Someone Who…
Comes from an analytical or data-driven background
(analytics, operations, finance, QA, engineering, reporting, etc.)
Learns new tools and systems quickly
Is comfortable working with numbers and patterns
Can follow processes without cutting corners
Documents their work clearly and consistently
Stays calm when results fluctuate
You don’t need to be a media buying “expert.”
You do need to be sharp, curious, and disciplined.

This Role Is Not for Someone Who…
Wants full creative or strategic freedom
Needs constant reassurance or hand-holding
Makes changes based on gut feelings
Struggles with structure or documentation
Dislikes feedback or process
How You’ll Work With the Team
Operating Cadence & Communication
Lead Media Buyer sets standards… you execute within them
Escalation & Recovery Lead diagnoses issues… you provide clean inputs and context
Project Manager ensures flow… you keep your work visible and documented
Ops Head sets direction… you stay aligned and consistent

You are not operating alone.
You are part of a system.

Why You’ll Like Working Here
Clear training and expectations
Supportive learning environment
No chaos, no guessing
Leadership that values thinking and precision
Long-term role with growth into senior buying or leadership

We don’t reward noise.
We reward good judgment.

Application Process
PLEASE DO NOT JUST REPLY TO THIS POST ON THE JOB BOARD.
To be considered, you must complete ALL STEPS BELOW.
The Google Form is your Online Interview.

Step 1: Take a short online IQ test
We respect intelligence and we think you probably do too.
Go to the Fast Learner Free IQ Test and complete it
Create a free account at the end
Save the results URL for Step 3
?? Applicants without a valid link will not be considered

Step 2: Record a 2–3 minute Loom video (camera ON)
Create a free account at Loom
Speak clearly in English
Tell us:
Your paid media experience
How you think about optimization and ROAS
How you’ve helped others improve performance
Save the Loom URL for Step 3

Step 3: Complete the Online Interview
NO AI ALLOWED. We want to hear you.
Open the Application Form
Enter your contact details
Paste:
IQ test results link
Loom video link
Answer all questions honestly and thoughtfully
Your answers matter more than perfect formatting.

Step 4: Live Video Interview (camera on)
This is where we get to know how you think.
I personally review every candidate who completes the steps above and will reach out directly to those who feel like the right fit.

If this role speaks to you, good.
That means you’re probably the kind of person we’re looking for.
Bring your best.
We’ll bring the system.

Link to Online Interview Form: ----------

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0022
Controller Execution Time ( Jobseekers / Job )  0.0167
Total Execution Time  0.0197
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,511,632 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Facebook-Ads-Media-Buyer-1591318
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0097 seconds)  (Hide)
0.0007   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1591318
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 860296
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1591318
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-21',ej.date_added) duration_daysDATEDIFF('2026-04-21',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-04-21',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1591318' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1591318 
0.0016   UPDATE employer_jobs SET hit_counts '***Mar-02-2026=176***Mar-03-2026=70***Mar-04-2026=41***Mar-05-2026=35***Mar-06-2026=31***Mar-07-2026=3***Mar-08-2026=10***Mar-09-2026=14***Mar-10-2026=16***Mar-11-2026=10***Mar-12-2026=10***Mar-13-2026=7***Mar-14-2026=5***Mar-15-2026=1***Mar-16-2026=7***Mar-17-2026=14***Mar-18-2026=4***Mar-19-2026=7***Mar-20-2026=6***Mar-21-2026=1***Mar-23-2026=5***Mar-24-2026=6***Mar-25-2026=5***Mar-26-2026=5***Mar-27-2026=9***Mar-28-2026=1***Mar-30-2026=7***Mar-31-2026=3***Apr-01-2026=6***Apr-02-2026=5***Apr-03-2026=14***Apr-06-2026=2***Apr-07-2026=2***Apr-08-2026=1***Apr-09-2026=2***Apr-10-2026=3***Apr-13-2026=7***Apr-14-2026=3***Apr-15-2026=2***Apr-16-2026=3***Apr-17-2026=2***Apr-18-2026=1***Apr-21-2026=1' WHERE job_id'1591318'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Mar-2026=509***Apr-2026=54' WHERE job_id'1591318'  
0.0009   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1591318' 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` = 1591318 
0.0028   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '860296'
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)