Script Writer for Meta Ads

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

TYPE OF WORK

Full Time

SALARY

750$ / Month

HOURS PER WEEK

35

DATE UPDATED

Apr 9, 2026

JOB OVERVIEW

About Us
We're a fast-growing Scandinavian e-commerce brand scaling aggressively with Meta ads. We have winning creatives already running — now we need someone who can help us build the next batch.
We don't need someone who writes pretty copy. We need someone who understands why people buy and can translate that into scripts that stop the scroll and convert.

What You'll Be Doing

Writing scripts for short-form video ads (30–60 sec) based on our creative briefs
Crafting hooks, body copy, and CTAs tailored to specific customer avatars
Working across multiple angles per batch — problem aware, solution aware, emotional
Scripts are written in English — our team handles translation and voiceover


You Are Probably a Fit If...

You've written scripts specifically for Meta ads that have generated sales — not just views
You understand concepts like hook rate, problem/solution aware, and direct-response copy
You think about the customer first, not the product
You've read books like $100M Offers, Breakthrough Advertising, or similar
You can write conversationally — short sentences, no fluff, reads like a human wrote it


You Are NOT a Fit If...

Your portfolio is only organic social content or brand awareness copy
You write formal, polished English that sounds like a press release
You've never seen or cared about ad metrics like hook rate, CTR, or ROAS


How to Apply
No generic applications. We will ignore them.
Send us:

2–3 Meta ad scripts you've written that generated real results — what was the product, what was the angle, what happened?
Write a hook (one sentence, text-on-screen format) for this product: a wrist blood pressure monitor sold to adults aged 35–55 who are worried about an aging parent
Answer this: What's the difference between a problem aware and solution aware customer — and how does that change how you write the ad?

Question 3 is the filter. If you can't answer it, this role isn't for you.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0250
Total Execution Time  0.0263
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,483,736 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Script-Writer-for-Meta-Ads-1620255
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0195 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0005   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1620255
 LIMIT 1 
0.0020   SELECT *
FROM `employers`
WHERE `employer_id` = 922561
 LIMIT 1 
0.0013   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1620255
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-13',ej.date_added) duration_daysDATEDIFF('2026-04-13',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-13',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1620255' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1620255 
0.0008   UPDATE employer_jobs SET hit_counts '***Apr-09-2026=368***Apr-10-2026=85***Apr-11-2026=20***Apr-13-2026=1' WHERE job_id'1620255'  
0.0008   UPDATE employer_jobs SET monthly_hits '***Apr-2026=474' WHERE job_id'1620255'  
0.0087   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1620255' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1620255 
0.0029   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '922561'
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)