Script Writer (Short-Form Video) — HeyGen Experience Required

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

TYPE OF WORK

Any

SALARY

$3/hr

HOURS PER WEEK

48

DATE UPDATED

Feb 14, 2026

JOB OVERVIEW

Role Type: Contract / Freelance
Location: Remote

About the Role

We’re looking for a creative, detail-oriented Script Writer who specializes in short-form video scripts and is familiar with HeyGen. You’ll be writing engaging, natural-sounding scripts used for AI-generated videos across social platforms like TikTok, Instagram Reels, and YouTube Shorts.

This role is ideal for someone who understands hook-driven content, pacing, and how to write for on-camera delivery—even when the presenter is AI.

Responsibilities
Write engaging 15–60 second video scripts
Create strong hooks within the first 3 seconds
Adapt scripts specifically for HeyGen avatars
Maintain a natural, conversational, non-salesy tone
Follow provided brand voice and content guidelines
Revise scripts based on feedback and performance goals
Collaborate with content and social media teams

Requirements
Proven experience writing short-form video scripts
Hands-on familiarity with HeyGen (required)
Strong understanding of TikTok, Reels, and Shorts formats
Excellent writing, grammar, and storytelling skills
Reliable, organized, and deadline-driven

Nice to Have
Experience writing scripts for AI avatars or UGC-style videos
Background in marketing or social media
Experience in wellness, beauty, fashion, or lifestyle niches

BONUS IF YOU HAVE HEYGEN ENTERPRISE ACCOUNT

What We Offer
Fully remote work
Flexible schedule
Consistent script volume
Clear creative direction and feedback
Opportunity for long-term collaboration

How to Apply

Please include:
A short introduction
2–3 short-form script samples
Confirmation of your experience with HeyGen
Your availability and rate

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0032
Controller Execution Time ( Jobseekers / Job )  0.0168
Total Execution Time  0.0207
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,491,048 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Script-Writer-Short-Form-Video-HeyGen-Experience-Required-1539225
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 15 (0.0083 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0005   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1539225
 LIMIT 1 
0.0010   SELECT *
FROM `employers`
WHERE `employer_id` = 766641
 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` = 1539225
AND `misc`.`idIS NULL 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1539225
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-18',ej.date_added) duration_daysDATEDIFF('2026-04-18',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-18',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1539225' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1539225 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1539225
AND `misc`.`idIS NULL 
0.0009   UPDATE employer_jobs SET hit_counts '***Dec-22-2025=132***Dec-23-2025=9***Dec-24-2025=3***Dec-25-2025=2***Dec-26-2025=4***Dec-27-2025=4***Dec-28-2025=4***Dec-29-2025=5***Dec-30-2025=3***Dec-31-2025=1***Jan-01-2026=4***Jan-02-2026=4***Jan-03-2026=1***Jan-04-2026=2***Jan-05-2026=1***Jan-06-2026=1***Jan-07-2026=1***Jan-08-2026=1***Jan-09-2026=4***Jan-10-2026=1***Jan-12-2026=1***Jan-13-2026=4***Jan-14-2026=1***Jan-15-2026=1***Jan-16-2026=1***Jan-17-2026=3***Jan-18-2026=2***Jan-19-2026=1***Jan-21-2026=1***Jan-22-2026=2***Jan-24-2026=1***Jan-27-2026=1***Jan-30-2026=2***Feb-02-2026=3***Feb-06-2026=1***Feb-09-2026=1***Feb-12-2026=1***Feb-14-2026=92***Feb-15-2026=9***Feb-16-2026=2***Feb-17-2026=4***Feb-18-2026=2***Feb-19-2026=3***Feb-20-2026=1***Feb-22-2026=1***Feb-24-2026=2***Feb-25-2026=2***Feb-26-2026=2***Feb-27-2026=1***Mar-01-2026=2***Mar-03-2026=1***Mar-05-2026=1***Mar-10-2026=1***Mar-12-2026=1***Mar-16-2026=2***Mar-17-2026=1***Mar-20-2026=1***Mar-22-2026=2***Mar-24-2026=2***Mar-28-2026=1***Mar-29-2026=1***Mar-31-2026=1***Apr-03-2026=1***Apr-18-2026=1' WHERE job_id'1539225'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Dec-2025=167***Jan-2026=41***Feb-2026=127***Mar-2026=17***Apr-2026=2' WHERE job_id'1539225'  
0.0011   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1539225' 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` = 1539225 
0.0006   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '766641'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0006   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)