VidModelHub

Free tool · No signup · Works with every major model

AI video prompt generator— for Veo, Seedance, Kling & Sora

Every video model speaks a different dialect. Pick your target, build the prompt with real cinematography controls — camera, lighting, native audio — or type one line and let ✨ AI fill draft the rest. Copy-paste ready.

Structured JSON with native-audio fields — copy as JSON or flattened prose. The prose output works on any model.

JSON prompt

// fill fields or use ✨ to start

Veo accepts natural language — structured JSON is a community technique that keeps complex prompts organized and repeatable. "Copy as prose" gives the flattened sentence version.

The model dialect cheat sheet

  • Veo 3 / 3.1: loves real cinematography terms and is the only one where audio direction truly pays off — quoted dialogue with a speaker note produces lip-synced speech. JSON or prose both work; the dedicated Veo builder has field-level presets.
  • Seedance 2.0:strongest at multi-modal referencing — "Reference the character from Image 1" — and prefers flowing prose over rigid structure. See official prompt-output pairs or the one-take prompts written for 2.5.
  • Kling: responds well to motion-first prompts — lead with the action and camera move, keep style notes short. Strong physical dynamics, no native audio: skip dialogue, describe movement instead.
  • Sora:handles long descriptive paragraphs and scene logic well — write it like a short film treatment. Be explicit about shot boundaries if you don't want it inventing cuts.

Comparing output costs before you burn credits? The cost calculatorhas verified per-second prices for all of these. Planning a multi-shot sequence? That's the Shot Planner.

Copy-paste examples to start from

Three originals from the prompt library (44+ prompts, updated weekly) — a viral vlog, an ASMR macro, and a surrealist product ad.

Bigfoot's morning vlogViral & memes
{
  "subject": "Bigfoot holding a selfie stick, matted auburn fur, kind tired eyes",
  "action": "whispers to the camera while walking, glances over his shoulder, ducks under a branch that thwacks the lens",
  "dialogue": "\"Day 400 of hiding from hikers. Found the good berry spot. Do NOT tell the raccoons.\" — gravelly whisper, out of breath",
  "scene": "misty Pacific Northwest forest at sunrise, ferns and cedar trunks",
  "shot": {
    "composition": "selfie ultra-wide, face slightly too close",
    "camera_motion": "handheld shake with walking bob",
    "lens": "action-cam fisheye"
  },
  "lighting": "cold dawn fog with warm sun shafts breaking through",
  "style": "hyper-real 4K vlog footage, influencer framing",
  "audio": {
    "sfx": "twigs snapping, birds scattering, fur brushing the mic",
    "music": ""
  },
  "color_palette": "forest green, fog gray, auburn",
  "negative_prompt": "text, watermark, cartoonish fur, extra arms"
}
Cutting a glass mango (ASMR)ASMR & satisfying
{
  "subject": "a translucent amber glass mango on a dark walnut cutting board",
  "action": "a chef's knife slices clean through; crystalline slices fall in sequence and ring softly as they settle",
  "scene": "dark minimalist kitchen studio, single spotlight on the board",
  "shot": {
    "composition": "extreme close-up at board level",
    "camera_motion": "static",
    "lens": "100mm macro"
  },
  "lighting": "single hard key through the glass creating amber caustics on the board",
  "style": "hyper-real ASMR macro, 120fps slow-motion feel",
  "audio": {
    "sfx": "high crystalline shear, glass slices chiming like bells, knife tap on wood",
    "music": ""
  },
  "color_palette": "amber, walnut brown, black",
  "negative_prompt": "text, hands in frame, shattering, real fruit flesh"
}
Perfume ad: the ocean turns to silkProduct & ads
{
  "subject": "a faceted glass perfume bottle standing on wet black sand at the tide line",
  "action": "an incoming wave rushes toward it and, at the moment of impact, freezes and transforms into billowing white silk that settles around the bottle",
  "scene": "volcanic beach at dawn, low mist",
  "shot": {
    "composition": "low wide shot at sand level",
    "camera_motion": "slow push-in through the silk",
    "lens": "35mm"
  },
  "lighting": "pale dawn backlight through the fabric, bottle catching a single sunray",
  "style": "luxury surrealist commercial, Jonathan Glazer restraint",
  "audio": {
    "sfx": "wave roar cutting to fabric whisper",
    "music": "one sustained cello note resolving"
  },
  "color_palette": "black sand, silk white, dawn rose",
  "negative_prompt": "text, logo, people, water droplets on lens"
}

Frequently asked questions

Which AI video models does this prompt generator work with?
All of the current generation. The Veo 3 tab outputs the community JSON format plus a flattened prose version; the prose transfers cleanly to Kling, Sora, Hailuo and Wan. The Seedance tab outputs the flowing prose-with-references format ByteDance's models prefer. Every model speaks a slightly different dialect — the cheat sheet below covers the differences.
Is it really free with no signup?
Yes. The builders run in your browser and the ✨ AI fill (one line in, all fields drafted) runs on our infrastructure, free, limited to 10 uses per day. No account, no watermark on anything — we don't touch your video, only the text prompt.
What makes a good AI video prompt?
Specificity in four layers: a concrete subject doing one clear action, real cinematography language (composition, camera motion, lens), a lighting description, and — for models with native audio like Veo 3 — explicit dialogue, sound-effect and music direction. Vague prompts average everything out; specific prompts commit. Steal structure from the examples below or the full prompt library.
Should I write prompts as JSON or natural language?
Models accept both. JSON isn't officially required by any of them — it's a working technique: fields keep complex prompts organized, let you change one variable per re-roll, and stay reusable across shots. For Seedance specifically, flowing prose with Image/Video references outperforms rigid structure, which is why it gets its own tab.