Creative Strategist - DTC / E-Commerce (Remote, Freelance)

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

TYPE OF WORK

Any

SALARY

COMPETITIVE PAY BASED ON EXPERIENCE

HOURS PER WEEK

TBD

DATE UPDATED

Jun 27, 2026

JOB OVERVIEW

Growing creative studio producing performance ads for DTC brands on Meta is looking for a creative strategist who can concept, write, and produce ad creative using AI tools. This is not a traditional design role. We care about marketing fundamentals, strong copy, and the ability to turn strategy into finished static ads and video scripts, not your Photoshop skills.
You'll be building ad concepts from the ground up. That means researching the brand and audience, writing the messaging, choosing the format, generating the visuals using AI tools, and delivering final assets ready to upload. We need someone who can think strategically about why an ad will work and then actually build it themselves, not just hand off a brief to someone else.
The brands we work with are DTC and e-commerce. The ads we make are intentionally raw, native, and ugly. Notes app screenshots, tweet style posts, fake text threads, comparison graphics, AI generated visuals, UGC style statics. If it looks like a real person posted it instead of a brand designing it, that's the goal. We also write scripts for UGC video ads and AI voiceover videos, so you need to be comfortable writing for both static and video formats.
AI is central to how we work. We use AI tools to generate visuals, write variations, build statics, and produce content faster than traditional workflows allow. If you're not already using AI tools daily in your creative process, this isn't the right fit. We're looking for someone who's ahead of the curve, not someone who needs to be convinced that AI is useful.
What you'll be doing

Concepting static ad ideas based on brand research, customer data, and performance insights
Writing headlines, ad copy, and full video scripts for DTC brands
Generating finished static ads using AI tools and Canva
Writing UGC video scripts and AI voiceover scripts with hook variations
Working from creative strategy documents and also building your own concepts independently
Producing 15-20+ static creatives and 5-10 video scripts per week across client accounts
Reviewing ad performance data and using it to inform what you create next
Iterating on winning concepts with new angles, formats, and variations

What you need

Experience in DTC or e-commerce advertising, specifically creating ads that ran on Meta or TikTok with real spend
Strong copywriting skills. You understand hooks, awareness stages, pain points, desire language, and how to write for someone who's never heard of the brand
Daily use of AI tools in your creative workflow. Whether that's Midjourney, ChatGPT, Claude, Runway, Flux, Ideogram, or whatever else you use, we need someone who's already deep in AI, not just experimenting
Understanding of direct response fundamentals. You know why an ad works, not just what it looks like. You can look at performance data and make creative decisions based on it
Ability to concept independently. We'll train you on our systems and strategy frameworks, but you need to be able to take a brand's research and come up with original ad concepts on your own
Self driven and communicative. You're active in our workflow daily, responsive, and proactive about flagging ideas or issues

What you don't need

Advanced graphic design skills. We don't use Photoshop or Illustrator. AI tools and Canva handle production
A portfolio of polished brand work. We make ugly ads intentionally. If your portfolio is full of clean corporate design, this probably isn't your lane
Video editing skills. We have a dedicated editor. You write the scripts and concepts, someone else cuts the footage

Bonus

You've worked at or with a DTC ad agency before
You understand Meta's ad delivery system and why creative diversity matters
You've written UGC scripts that were filmed by real creators
You follow the DTC ad space closely and can name 5 brands running great creative right now
You've used AI to build entire ad concepts end to end, not just generate images

Details

Remote, freelance
Monthly retainer with growth as client volume increases
Consistent weekly workload across multiple client accounts
Opportunity to grow into a senior role as the studio scales

To apply
D ---------- with:

3-5 examples of static ads or video scripts you've created for DTC or e-commerce brands
Which AI tools you use daily and how they fit into your workflow
One sentence on what makes a static ad stop the scroll

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0398
Total Execution Time  0.0413
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,517,688 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Creative-Strategist-DTC-E-Commerce-Remote-Freelance-1632430
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 15 (0.0316 seconds)  (Hide)
0.0010   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0010   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1632430
 LIMIT 1 
0.0058   SELECT *
FROM `employers`
WHERE `employer_id` = 810176
 LIMIT 1 
0.0088   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1632430
AND `misc`.`idIS NULL 
0.0011   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1632430
AND `misc`.`idIS NULL 
0.0011   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-07-12',ej.date_added) duration_daysDATEDIFF('2026-07-12',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-07-12',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1632430' 
0.0013   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1632430 
0.0011   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1632430
AND `misc`.`idIS NULL 
0.0020   UPDATE employer_jobs SET hit_counts '***Apr-25-2026=85***Apr-26-2026=122***Apr-27-2026=71***Apr-28-2026=22***Apr-29-2026=7***Apr-30-2026=10***May-01-2026=30***May-02-2026=11***May-03-2026=10***May-04-2026=16***May-05-2026=6***May-06-2026=472***May-07-2026=30***May-08-2026=7***May-09-2026=5***May-10-2026=4***May-11-2026=12***May-12-2026=10***May-13-2026=7***May-14-2026=268***May-15-2026=48***May-16-2026=34***May-17-2026=31***May-18-2026=18***May-19-2026=14***May-20-2026=5***May-21-2026=6***May-22-2026=10***May-23-2026=7***May-24-2026=3***May-25-2026=4***May-26-2026=2***May-27-2026=2***May-28-2026=7***May-29-2026=1***May-30-2026=2***May-31-2026=5***Jun-01-2026=11***Jun-02-2026=6***Jun-03-2026=672***Jun-04-2026=52***Jun-05-2026=19***Jun-06-2026=4***Jun-07-2026=18***Jun-08-2026=12***Jun-09-2026=7***Jun-10-2026=218***Jun-11-2026=41***Jun-12-2026=21***Jun-13-2026=6***Jun-14-2026=11***Jun-15-2026=10***Jun-16-2026=10***Jun-17-2026=7***Jun-18-2026=447***Jun-19-2026=14***Jun-20-2026=7***Jun-21-2026=8***Jun-22-2026=6***Jun-23-2026=3***Jun-24-2026=1***Jun-25-2026=3***Jun-26-2026=1***Jun-27-2026=368***Jun-28-2026=67***Jun-29-2026=38***Jun-30-2026=19***Jul-01-2026=25***Jul-02-2026=5***Jul-03-2026=2***Jul-04-2026=9***Jul-05-2026=3***Jul-06-2026=4***Jul-07-2026=8***Jul-08-2026=2***Jul-09-2026=5***Jul-10-2026=4***Jul-11-2026=2***Jul-12-2026=1' WHERE job_id'1632430'  
0.0012   UPDATE employer_jobs SET monthly_hits '***Apr-2026=316***May-2026=1085***Jun-2026=2106***Jul-2026=70' WHERE job_id'1632430'  
0.0020   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1632430' AND status LIKE 'sent%' ORDER BY id DESC  
0.0009   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1632430 
0.0027   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '810176'
AND `date_added` >= '2022-06-08' 
0.0009   select from teasers 
0.0008   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)