Video Editor for Meta Ads (TikTok B-roll + AI Voiceover)

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

TYPE OF WORK

Full Time

SALARY

$300 a week depending on experience

HOURS PER WEEK

TBD

DATE UPDATED

Oct 10, 2026

JOB OVERVIEW

About us
We are a fast-growing DTC footwear brand in the problem-solving space. Our footwear solves real, everyday problems, so our ads are not fashion or lifestyle looks: they are problem-and-solution ads. We run paid ads on Facebook and Instagram and we are looking for a full-time video editor to join us long term on a monthly salary.

Please read this first
Our ads are TikTok B-roll clips cut to an AI voiceover, with only a little AI-generated footage blended in where it is needed (it depends on the brief). We do not make fully AI-generated videos.

How our ads are made

We send you a script with three hooks and an example video: an ad we have swiped and reverse engineered.
You add the AI voiceover from the script.
You find and download real B-roll clips from TikTok that match each line of the script. Every clip must be sourced by you from TikTok. No stock footage (Pexels, Storyblocks, Envato or similar) is allowed.
For product shots, you use our product B-roll bank. If a product shot you need is not in the bank, you generate it yourself in Google Flow.
You follow the example video’s format and editing style exactly, and edit it all into a fast, scroll-stopping ad of 30 to 90 seconds, with captions and on-screen text, and export three versions (one per hook).

Formats you will edit

Voiceover montage ads (B-roll cut to a voiceover)
Listicle ads (“5 reasons...” style)
POV and story-style ads
Product demos and side-by-side comparisons

What we are looking for

Proven experience making this type of ad: B-roll cut to a voiceover, for Facebook, Instagram or TikTok
Experience editing problem-and-solution ads for footwear brands
You must be able to reverse engineer ads: break down an example video’s structure, pacing and editing style
You must be able to create an ad from an example video we have swiped and reverse engineered, following the exact same format and editing style
A strong understanding of hook rate, thumb-stop and what makes an ad convert
Strong at finding the right TikTok clips quickly, so every line of the script has a matching visual
Good instincts for hooks, pacing and keeping people watching
Clean captions and on-screen text
Proficient in CapCut
Able to use Google Flow to generate product clips when needed
Reliable, organised, and good at following a brief and our file naming
Comfortable making several ads a week and fast revisions

How to apply

Start your application with the words “TikTok B-roll” so we know you read this post.
Send 2 to 3 ads you edited that use TikTok or UGC B-roll with a voiceover (links please). Fully AI-generated videos will not be considered.
Tell us how you find and download TikTok clips for an ad.
Tell us your experience with Google Flow.
Your expected monthly salary and how many 60-second ads you can deliver per week.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0127
Total Execution Time  0.0140
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,499,304 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Video-Editor-for-Meta-Ads-TikTok-B-roll-AI-Voiceover-1747324
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0068 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1747324
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 1008729
 LIMIT 1 
0.0015   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1747324
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-10-22',ej.date_added) duration_days, DATEDIFF('2026-10-22',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-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1747324' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1747324 
0.0007   UPDATE employer_jobs SET hit_counts = '***Oct-10-2026=1524***Oct-11-2026=204***Oct-12-2026=94***Oct-13-2026=40***Oct-14-2026=22***Oct-15-2026=72***Oct-16-2026=34***Oct-17-2026=10***Oct-22-2026=3' WHERE job_id= '1747324'  
0.0006   UPDATE employer_jobs SET monthly_hits = '***Oct-2026=2000' WHERE job_id= '1747324'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1747324' 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` = 1747324 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '1008729'
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)