Mindket

Competitor video ad remade for your brand

Newversion 1 · updated

Overview

An n8n workflow that turns a competitor’s video ad, your product photo and your website into a prompt for a 12-second ad of your own. Its Sora 2 render step stopped working when OpenAI removed Sora 2 in September 2026.

Competitor video ad remade for your brand is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file. Edit Image needs GraphicsMagick, which n8n’s Docker image has
  • A video model that is still offered: the prompt is written for a 12-second vertical clip
  • Briefs and decks: the shot list and the brand notes read well on their own

Platform

Connects 3 apps

How it works

Trigger

Ad form

It starts when someone sends the Sora 2 Video Ad Form with:

  • A competitor’s video ad, as an MP4
  • A photo of your product
  • Your brand’s website address

Actions

  1. Gemini 2.5 Pro breaks the ad into shots, with timing, camera, sound and dialogue
  2. Firecrawl reads OpenAI’s Sora 2 prompting guide and your website
  3. Gemini writes brand notes, then one prompt for a 12-second vertical ad
  4. Your photo is resized to 720 by 1280 for the video step
  5. The prompt and photo go to Sora 2, which OpenAI has since removed

Result

A shot list, brand notes and a ready video prompt, plus the clip once you swap in a current video model

Integrations

What you need before you start.

Google Gemini

Video analysis and writing

Runs gemini-2.5-pro to break the ad into shots, write the brand notes and write the video prompt.

NeedsGemini API key, in a Gemini credential and a Header Auth credential

Firecrawl

Web scraping

Reads your brand’s website and OpenAI’s Sora 2 prompting guide as clean text.

NeedsFirecrawl API key, in a Bearer Auth credential

OpenAI

Video generation

Made the 12-second clip with sora-2 in the file, a model OpenAI removed on 24 September 2026.

NeedsOpenAI API key, only for the original video nodes

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
23 steps, starting on a form
AI
2 steps call an AI model: write_guidelines and write_sora2_prompt
Sign-ins
Signs in to: Google Gemini, Firecrawl and OpenAI
API keys
No API key is left in the file
Step types
Mindket’s checker reads all 11 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow takes a competitor’s video ad and works out how to make one like it for your brand. You send the ad, a photo of your product and your website through a form. Gemini 2.5 Pro breaks the ad into shots, and Firecrawl reads your site. Gemini then writes brand notes and a prompt for a 12-second vertical ad with no text on screen. The file’s last step sends that prompt and your photo to OpenAI’s Sora 2. OpenAI removed Sora 2 on 24 September 2026, so that step fails today. Twenty-five nodes run it.

Who it suits

Brand marketers and agencies who study what works for rivals and want a draft of their own version quickly. It also suits anyone who wants an ad taken apart shot by shot. Skip it if you want a finished video with no n8n work. The render step needs rebuilding first.

Who uses it, and how
IndustryWho uses itHow they use itExample
Direct-to-consumer brandsBrand marketersSend a rival’s best ad with a photo of their own productA pet food brand sends a rival’s treat ad and gets a prompt built around its own bag.
Marketing agenciesCreative strategistsRead the shot breakdown before a pitchA strategist brings the shot list of a client’s rival ad to the briefing.
Performance marketingMedia buyersRemake rival ads that have run for months as prompts for test versionsA buyer turns three long-running rival ads into prompts to test.
Online retailShop ownersSend their own past ads to get prompts for new cutsA shop sends its best clip from last season and gets a new prompt in the same rhythm.

You need solid n8n for this one: three kinds of credential, and a replacement video step you build yourself. Its author puts setup at about 11 minutes, which leaves that step out.

Where to use it

Any n8n that can reach Google’s Gemini API and Firecrawl will run the analysis and the writing. The video needs a service of your choice.

  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file. Edit Image needs GraphicsMagick, which n8n’s Docker image has
  • A video model that is still offered: the prompt is written for a 12-second vertical clip
  • Briefs and decks: the shot list and the brand notes read well on their own

Setup

Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Plan the video step before you import it.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own
Google AI StudioA Gemini API key, used twice: in a Gemini credential and in a header named x-goog-api-key
FirecrawlAn account and its API key, for a Bearer Auth credential
A video serviceOne that is still offered, to take the place of the Sora 2 nodes
Your inputsThe rival ad as an MP4, a photo of your product and your website’s address
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add a Google Gemini (PaLM) API credential and select it in gemini-2.5-pro.
  3. Add a Header Auth credential named x-goog-api-key, with the same key as its value, and select it in analyze_video_ad.
  4. Add a Bearer Auth credential with your Firecrawl key. Select it in fetch_sora2_prompting_guide and fetch_site_details.
  5. Replace the five Sora nodes after Edit Image with calls to your video service. The prompt is in set_sora2_prompt_result, and the photo is the file data.
  6. Save, send a test through the form’s test address, then press Publish.

How to use it

Open the form, attach the rival’s ad and one product photo, type your web address and send it. The form confirms at once while the run goes on. When it ends, open the run under Executions to read what each step wrote.

What to change for a different result
To changeWhere
LengthThe 12-second rule in build_sora2_prompt, and the length your video step asks for
FrameThe width and height in Edit Image, 720 by 1280 in the file
Brand notesThe seven sections in build_guidelines_prompt
Shot listThe format in set_ad_analysis_prompt
The ad’s rulesbuild_sora2_prompt, which asks for the exact product, no other products and no text on screen

Example

A coffee brand sends a rival’s clip of someone making iced coffee at home, a photo of its own cold brew bottle and its website.

What the run leaves behind
OutputNodeWhat it holds
Shot listset_ad_analysis_resultThe rival clip’s style and message, then every cut with its timing, camera, sound and spoken line
Brand noteswrite_guidelinesSeven sections, from the brand’s essence to its ad angles
Video promptset_sora2_prompt_resultThe rival’s story retold with the cold brew bottle, paced for 12 seconds

With a working video step, the photo and that prompt become the new clip. As imported, the run stops at generate_sora2_video.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. Two paths start at the form. The long one handles the ad and the writing, the short one gets your photo ready, and they meet at merge. Run one test, then open each chain node to see the prompt it was sent and the text it wrote.

For experts. Gemini is called two ways here, and one input the prompt names never arrives.

Where to look closer
NodeWhat it doesWhat to know
analyze_video_adA raw call to Gemini’s generateContent, the ad inlineIts own Header Auth credential, and a MIME type fixed to video/mp4
write_guidelinesA Gemini chain on your siteFirecrawl’s page text never reaches it, only data.metadata.title
write_sora2_promptA Gemini chain on the shot list, the notes and the guideIts prompt names a product image that only the video step receives
fetch_sora2_prompting_guideA Firecrawl scrape of OpenAI’s cookbook pageRuns on every submission, and a failed scrape leaves the guide empty

Good to know

The video step is retired, and two gaps in the prompts change what you get.

  • Sora 2: OpenAI’s deprecations page, read on 2 November 2026, lists it as removed on 24 September 2026 with no replacement
  • Brand notes from a title: add {{ $json.data.json.content }} under the title line in build_guidelines_prompt so Gemini reads the page
  • Hands: the prompt asks for detailed hands on the product, then asks to show none. Keep one rule
  • A stretched photo: Edit Image ignores the photo’s proportions, so crop it to 9:16 first
  • Billing: Gemini bills the analysis and both chains, and Firecrawl counts two scrapes a run
  • Open form: once the workflow is published, anyone with the form’s address can start a run on your keys
  • Copying: change the idea, the words and the look enough to be your own, and check the advertising rules where you sell
  • Credentials: the JSON holds none

README and files

README

Competitor video ad remade for your brand

An n8n workflow. You send a competitor's video ad, a photo of your product and your brand's website through a form.
Gemini breaks the ad down shot by shot, Firecrawl reads your site, and Gemini writes brand notes and a prompt for a
12-second vertical ad with your product in it. The last step sends that prompt to OpenAI's Sora 2.

Read this first: OpenAI removed Sora 2 and its Videos API on 24 September 2026, so the five nodes that make the video
no longer work as imported. Everything before them still runs. See "The video step" below.

What is inside

  • workflow.json: the workflow as n8n exports it, 25 nodes, one of them a sticky note that holds only the workflow's
    title. It holds no credential.
  • README.md: these notes.

What we changed from the original copy

  • The form's website field showed a real brand's address as its example. It now shows https://www.example.com/.
  • Nothing else. The file has no Code node, and its expressions needed no repair.

Before you start

  • An n8n instance, on n8n Cloud or your own server. The Edit Image node needs GraphicsMagick on a server of your own,
    which n8n's Docker image already has.
  • A Google AI Studio key for the Gemini API, with access to gemini-2.5-pro.
  • A Firecrawl account and its API key.
  • An OpenAI API key, only if you still want the original video nodes, or another video service (see below).
  • The rival ad as an MP4 file, your product photo and your site's address.

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json.
  2. Add a Google Gemini (PaLM) API credential with your key, and select it in gemini-2.5-pro.
  3. Add a Header Auth credential named x-goog-api-key, with the same key as its value. Select it in analyze_video_ad,
    which sends the ad straight to Google's API.
  4. Add a Bearer Auth credential with your Firecrawl key. Select it in fetch_sora2_prompting_guide and
    fetch_site_details.
  5. Decide on the video step (below). To keep the original nodes, add an OpenAI credential and select it in
    generate_sora2_video, get_video_status and get_video.
  6. Save, open the form's test address and send an ad, a product photo and a web address.
  7. Press Publish, then share the form's production address.

The form confirms at once, and the run goes on behind it. Open the run under Executions to read the shot breakdown, the
brand notes and the prompt, and to get the video when the last step works.

How a run goes

  1. generate_video_trigger1 is the form, titled Sora 2 Video Ad Form, with three fields: Ad Video File,
    Product Image and Brand Website URL.
  2. convert_video_to_base_64 turns the ad into text. set_ad_analysis_prompt holds the instructions for a shot list, and
    analyze_video_ad sends both to gemini-2.5-pro in one request, marked as video/mp4.
  3. set_ad_analysis_result keeps Gemini's answer: an overall style, the core message, then each shot with its timing,
    visuals, camera, lighting, dialogue, sound and on-screen text.
  4. fetch_sora2_prompting_guide has Firecrawl read OpenAI's Sora 2 prompting guide from its cookbook, and
    fetch_site_details has it read your website. Both carry on if Firecrawl fails.
  5. build_guidelines_prompt and write_guidelines turn the site into brand notes in seven sections, from the brand's
    essence to its advertising angles.
  6. build_sora2_prompt and write_sora2_prompt combine the shot list, the brand notes and the guide into one prompt for
    a 12-second ad with no on-screen text, and set_sora2_prompt_result keeps it.
  7. Beside that, convert_image_to_base_64 reads your product photo. merge and aggregate put it and the prompt in one
    item, and convert_base64_image_to_binary and Edit Image turn the photo into a 720 by 1280 JPEG.
  8. generate_sora2_video posts the prompt and the photo to OpenAI's /v1/videos with sora-2, 12 seconds, at the same size.
    delay waits 15 seconds, get_video_status asks again, and check_status loops until the status is completed.
    get_video then downloads the file.

gemini-2.5-pro is the model of both writing chains, and analyze_video_ad calls the same model by its address.

The video step

The prompt the workflow writes is in set_sora2_prompt_result, and the resized photo leaves Edit Image as a file
named data. To get a video again, replace generate_sora2_video, delay, get_video_status, check_status and
get_video with nodes for a video model that is still offered and takes a prompt and a starting picture. Veo is one
option, through Google's Gemini API or a reseller such as Kie.ai. Check its accepted lengths and sizes: the prompt is
written for 12 seconds, and the photo is sized for a vertical frame.

Change the look

  • Length: the 12-second rule in build_sora2_prompt, and seconds in generate_sora2_video. Change both together.
  • Frame: size in generate_sora2_video and the width and height in Edit Image.
  • The brand notes: the seven sections in build_guidelines_prompt.
  • The shot list: the format in set_ad_analysis_prompt.
  • The ad's rules: the process and output rules in build_sora2_prompt, which ask for exact product looks, no other
    products and no text on screen.
  • The form: the title and fields in generate_video_trigger1. If you rename a file field, change the node that reads it:
    Ad_Video_File in convert_video_to_base_64 and Product_Image in convert_image_to_base_64.

Good to know

  • Sora 2: OpenAI's deprecations page, read on 2 November 2026, lists sora-2 and the Videos API as removed on
    24 September 2026, with no replacement. As imported, generate_sora2_video fails, so the run stops there.
  • The brand notes see only your site's title. build_guidelines_prompt inserts $json.data.metadata.title, not the page
    text Firecrawl returns in $json.data.json.content, so Gemini guesses the rest. Add the content expression under the
    title line to use the whole page.
  • The prompt writer never sees your photo. build_sora2_prompt asks it to study the product image, but only text reaches
    that chain. The photo goes to the video model alone, as the starting picture.
  • The prompt asks for detailed descriptions of hands holding the product, then ends by asking to avoid showing hands.
    Pick one and edit the other out if the results come back mixed.
  • Edit Image resizes the photo without keeping its proportions. Crop it to 9:16 first, or the product
    comes out stretched.
  • analyze_video_ad sends the ad inside a single request and labels it video/mp4. Use a short MP4, since Google limits
    the size of a request that carries a file inline.
  • Product Image leaves Multiple Files at n8n's default, which is on. Send one photo: a second one gets a numbered name
    that convert_image_to_base_64 does not read.
  • check_status waits for completed only, so a failed video would be checked every 15 seconds without end.
  • Each run costs Gemini calls for the analysis and two writing chains, and two Firecrawl scrapes, one of them the same
    cookbook page every time.
  • Once the workflow is published, anyone with the form's address can start a run on your keys.
  • The competitor's ad goes to Google, your website's address to Firecrawl. A remade ad can still copy the original too
    closely: change the idea, the words and the look enough to be your own, and check the rules on comparative and copied
    advertising where you sell.
Files
README.md  7 KB
workflow.json  34 KB

2 files, 41 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-03

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Marketing & SEO

See all in Marketing & SEO

Pixel Art XL

nerijs · Kit

A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…

New

Licon MSR for LTX-2.5

LiconStudio · Kit

Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…

New

Flux.2-Klein-9B-MatchingPose

nhathoangfoto · Kit

A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…

New