Documentary Script Writer — Investigative YouTube Channel (Long-Term)

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

TYPE OF WORK

Gig

SALARY

$150 per script

HOURS PER WEEK

TBD

DATE UPDATED

Sep 7, 2026

JOB OVERVIEW

About the work

We run a YouTube documentary channel covering the darker side of what's happening in the world — scandals, corruption, fraud, the stories behind how things really work. Our style references are James Jani and Magnates Media. Watch several videos from both before applying. If that kind of storytelling doesn't excite you, this isn't the right job.

James Jani: ----------
Another New Documentary Channel Example: ----------

We only do documentaries. Nothing else.

What you'll do:

Write fully researched, deeply engaging documentary scripts.

That means:

Real research. Primary sources where possible. Every claim has to hold up, because getting a fact wrong on this kind of channel costs us the audience's trust permanently.
Structure that holds attention for the full runtime — an opening that earns the next ten minutes, and tension carried all the way to the end.
Writing for narration. It has to sound right read aloud, not just look right on the page.
Advising us. If you know this format better than we do, say so. We want a collaborator, not a typist.

AI: strongly discouraged. We're hiring a writer, not an operator. If you use AI at all, it should be minimal and for support — organizing research (very minimal, you need to prove the facts), not generating prose.
We read closely and we will ask you about your process. Be upfront about it.

Requirements:

- Proven experience writing documentary or long-form YouTube scripts
- Strong understanding of YouTube — retention, hooks, why people click and why they leave
- Excellent written English, storytelling instincts, and research discipline
- Reliable and communicative. Tell us before a deadline slips, not after.
- Proof of past work. Applications without it will not be read. Send scripts you wrote, and links to the finished videos where possible. If you've written for named creators or channels, that's a big plus — tell us who.

Answer these 4 questions in your application. Skip them and we skip you:

1) Which YouTube channels or creators have you written for? Send links to the videos and tell us which parts were yours.
2) What's the longest script you've written, and what part of it was hardest to get right?
3) Pitch us one story idea for this channel in three sentences, and tell us why someone would click on it.
4) Tell us honestly where AI fits into your process, if at all. We'd rather hear "I use it to organize research notes" than a denial we'll find out about later.

Start your application with the word PAPERTRAIL so we know you read to the end.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0010
Controller Execution Time ( Jobseekers / Job )  0.0158
Total Execution Time  0.0175
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,500,176 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Documentary-Script-Writer-Investigative-YouTube-Channel-Long-Term-1725078
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0088 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1725078
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 833832
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1725078
AND `misc`.`idIS NULL 
0.0006   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-09-22',ej.date_added) duration_daysDATEDIFF('2026-09-22',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-09-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1725078' 
0.0013   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1725078 
0.0007   UPDATE employer_jobs SET hit_counts '***Sep-07-2026=502***Sep-08-2026=64***Sep-09-2026=33***Sep-10-2026=17***Sep-11-2026=14***Sep-12-2026=10***Sep-13-2026=17***Sep-14-2026=12***Sep-15-2026=12***Sep-16-2026=9***Sep-17-2026=7***Sep-18-2026=4***Sep-19-2026=9***Sep-21-2026=1***Sep-22-2026=1' WHERE job_id'1725078'  
0.0009   UPDATE employer_jobs SET monthly_hits '***Sep-2026=712' WHERE job_id'1725078'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1725078' 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` = 1725078 
0.0016   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '833832'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)