Meta Ads Media Buyer — Full-Time (Remote)

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

TYPE OF WORK

Full Time

SALARY

$700-$1000

HOURS PER WEEK

40

DATE UPDATED

Feb 19, 2026

JOB OVERVIEW

About Us
MHI Media is a UK-based performance marketing agency that helps DTC (direct-to-consumer) e-commerce brands scale to 7 and 8 figures. We've done it 50+ times across fashion, wellness, beauty, lifestyle, and more. We run paid media across Meta (Facebook & Instagram), TikTok, Google, and other platforms — and we're growing fast.

We're looking for an experienced Meta Ads Media Buyer to join our team and manage campaigns across multiple client accounts.

What You'll Be Doing
- Managing and optimising Meta (Facebook & Instagram) ad campaigns across multiple DTC e-commerce client accounts
- Building campaign structures from scratch — campaign creation, audience targeting, ad set setup, and budget allocation
- Monitoring daily performance metrics (ROAS, CPA, CTR, CPM) and making data-driven optimisation decisions
- Scaling winning campaigns while maintaining profitability targets
- Testing new audiences, creatives, and copy variations to improve performance
- Analysing campaign data and providing clear performance reports to the team
- Collaborating with creative strategists and designers to brief high-performing ad creatives
- Staying up to date with Meta platform changes, algorithm updates, and best practices
- Managing ad spend responsibly across accounts with varying budgets

What We're Looking For
- 2+ years of hands-on experience buying Meta Ads (Facebook & Instagram) — this is non-negotiable
- Proven track record of managing and scaling e-commerce/DTC ad accounts
- Deep understanding of Meta Ads Manager — campaign structures, audience types (broad, lookalike, retargeting), bidding strategies, and the auction system
- Strong analytical skills — comfortable reading data, spotting trends, and making quick decisions
- Experience with Shopify-based brands is a big plus
- Familiarity with creative testing frameworks (hook testing, iteration, UGC vs static vs video)
- Ability to manage multiple accounts simultaneously without dropping the ball
- Excellent communication skills in English (written and verbal)
- Self-motivated, proactive, and comfortable working in a fast-paced agency environment

How to Apply

Email
the following to ----------
- Subject: OLJ - Meta Ads Media Buyer - Your Name
- Body
1. Your Name
2. Your Email
3. Shareable link to your CV/Resume
4. (NON-NEGOTATIABLE) 3-minute loom video explaining:
- What makes a good Meta Ads campaign?
- How you structure it
- What metrics matter most and why
- If possible, show us inside a live or past account and walk us through your thinking.

We don’t hire talkers. We hire operators. APPLY NOW!

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0011
Controller Execution Time ( Jobseekers / Job )  0.0151
Total Execution Time  0.0170
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,501,648 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Meta-Ads-Media-Buyer-Full-Time-Remote-1583566
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0071 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1583566
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 903889
 LIMIT 1 
0.0009   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1583566
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-19',ej.date_added) duration_daysDATEDIFF('2026-04-19',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-19',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1583566' 
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1583566 
0.0019   UPDATE employer_jobs SET hit_counts '***Feb-19-2026=166***Feb-20-2026=82***Feb-21-2026=26***Feb-22-2026=13***Feb-23-2026=9***Feb-24-2026=6***Feb-25-2026=8***Feb-26-2026=7***Feb-27-2026=1***Feb-28-2026=1***Mar-01-2026=2***Mar-02-2026=2***Mar-03-2026=2***Mar-04-2026=1***Mar-05-2026=1***Mar-06-2026=2***Mar-09-2026=1***Mar-12-2026=1***Mar-13-2026=3***Mar-15-2026=3***Mar-17-2026=1***Mar-18-2026=1***Mar-19-2026=1***Mar-21-2026=2***Mar-24-2026=1***Mar-25-2026=1***Apr-02-2026=1***Apr-03-2026=1***Apr-10-2026=2***Apr-14-2026=1***Apr-19-2026=1' WHERE job_id'1583566'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Feb-2026=319***Mar-2026=25***Apr-2026=6' WHERE job_id'1583566'  
0.0011   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1583566' 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` = 1583566 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '903889'
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)