Performance Creative Editor for Meta Ads (Full-Time)

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

TYPE OF WORK

Full Time

SALARY

1000-3000

HOURS PER WEEK

40

DATE UPDATED

Oct 6, 2026

JOB OVERVIEW

Part-Time Performance Creative Editor, Meta Ads (Full-time)

Spools makes lightweight, 3D-printed travel mahjong sets, plus chess, backgammon, and poker. We're looking for an unreasonably talented short-form editor to cut ads that sell on Meta. To be clear up front: we're not hiring someone who just edits. We're hiring someone who ships an ad, reads the data that comes back, and iterates. Cut, test, learn, cut again. The edit is half the job. The feedback loop is the other half.

You need to tell a great story through visuals: take raw product and lifestyle footage and turn it into direct-response ads that stop thumbs. Where the footage falls short, you build or source your own supporting assets. You don't wait around for the perfect clip.

Ideally, your edits have real Meta spend behind them, and you can tell us exactly what that spend taught you. You should be able to produce test-ready variations (new hooks, new opens, new pacing, new captions, new CTAs) faster than most competent editors think possible, because you build templates and AI workflows instead of grinding timelines.

Here's who we're looking for:

You're a little obsessed with the numbers. When your ad goes live, you're not done. Hook rate, hold rate, CTR, cost per purchase, ROAS. You read performance data the way you read a timeline, and every number changes your next cut. A winning ad makes you ask why it won and cut six more like it. A dying ad is just creative fatigue, and you already have the refresh queued.

You create lift, not just deliverables. Anyone can make a video look good. You make videos that move CPA.

You're full-circle. You don't just cut what you're handed. You help d ---------- what gets made: scripts, angles, hooks, AI voiceovers, caption tests, UGC concepts. When we ask "what should we test next," you already have a list.

Strong fundamentals are essential: hooks, retention, storytelling, pacing, captions, motion text. Premiere, Resolve, Final Cut, or CapCut. We don't care which. We care what comes out of it. Graphic design experience is a big plus. And if you play mahjong or board games, even better.

What to expect: You'll work directly with the founder, who handles media buying. You'll get access to real performance data and ownership of the creative testing engine. Your work will be judged by the numbers it produces. We think you'll find that liberating. Expect to be handed real budget, real data, and real ownership of the creative testing engine.

Details:

Flexible schedule, open to part-time or full-time
Independent contractor
Starts with a paid trial of 3 to 5 ads

To apply: Send your portfolio plus one ad you cut that had real spend behind it. Tell us the spend, the results, and what you'd change if you re-cut it today. Then give us one angle you'd want to see Spools try.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0011
Controller Execution Time ( Jobseekers / Job )  0.0221
Total Execution Time  0.0289
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,498,968 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Performance-Creative-Editor-for-Meta-Ads-Full-Time-1744449
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0112 seconds)  (Hide)
0.0025   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0020   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1744449
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 1007601
 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` = 1744449
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-16',ej.date_added) duration_days, DATEDIFF('2026-10-16',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-16',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1744449' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1744449 
0.0007   UPDATE employer_jobs SET hit_counts = '***Oct-06-2026=702***Oct-07-2026=27***Oct-08-2026=20***Oct-09-2026=8***Oct-10-2026=6***Oct-16-2026=2' WHERE job_id= '1744449'  
0.0006   UPDATE employer_jobs SET monthly_hits = '***Oct-2026=763' WHERE job_id= '1744449'  
0.0010   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1744449' 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` = 1744449 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '1007601'
AND `date_added` >= '2022-06-08' 
0.0004   select * from teasers 
0.0017   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)