You generate a clip with Runway, Kling, or Pika. The subject in the foreground looks reasonable but the background will not sit still: foliage strobes between different shapes, neon signs change letters every few frames, distant figures pop in and out, brick walls warp. Background flicker is the most distracting class of AI video artifact and the hardest to ignore.
Fastest fix: strip the background to one short, out-of-focus phrase (blurred city lights at night, shallow depth of field), keep exactly one motion source per clip (move the camera OR the background, never both), and re-render at a lower Motion amount. If it still flickers, run image-to-video from a single still reference, or paint the background as “no motion” with the Motion Brush. Those four moves clear the large majority of flicker cases.
Newer models flicker far less than the 2024-era ones, so a model swap is a real lever too: as of June 2026 the strongest background stability comes from Kling 3.0 (released February 4, 2026; native 4K, 60fps, a 3-15s generation window), Google Veo 3.1, and Runway Gen-4.5 (Runway’s Gen-4.5 added “improved temporal attention” specifically to kill background shimmer). Note that OpenAI’s Sora has been shut down — the web and app were discontinued on April 26, 2026 and the API will be discontinued on September 24, 2026 — so it is no longer a viable target.
Common causes
Ordered by what triggers flicker most often.
1. Background description too detailed
Crowded bustling night market with neon signs, steam, hanging lanterns, motorbikes, food stalls, crowds of people, rainy ground reflections — every one of those elements is independently regenerated each frame because the model has no temporal anchor. High-frequency elements (foliage, crowds, patterned walls) flicker first and worst.
How to spot it: Count distinct elements in your background description. Over 3 and you are in flicker territory.
2. Camera motion conflicts with subject motion
Your prompt says “tracking shot following a runner.” The model now has to maintain a coherent background that moves with the camera, while also moving the subject. With two motion sources active, the model often loses track of which background pixels go where and re-renders them inconsistently.
How to spot it: Pause on every 5th frame and watch background elements. If a building edge or tree branch is in different positions, the camera + subject motion are fighting.
3. Motion strength too high
Same root cause as drift: at high motion settings the model invents motion, and inventing motion in the background means inventing new pixels, which is flicker by another name.
4. Model struggles with high-frequency textures
Foliage, hair, fabric weave, brick patterns, crowd close-ups — these are areas of high-frequency information. Most current video models have weaker temporal coherence on high-frequency regions. Brick walls and tree leaves are the canonical examples of “areas that will always flicker.”
5. Aspect ratio mismatch with model training
Some models are trained primarily on 16:9 horizontal video. Asking for 9:16 vertical can degrade temporal coherence in less-trained regions. Older Pika releases showed this with extreme aspect ratios; Veo 3.1 and Kling 3.0 are now trained on both 16:9 and 9:16, so the gap is smaller in 2026, but it still exists in every model.
6. Wrong tool for the scene
Runway, Kling, Pika, Veo, and Seedance each have different strengths. Some are stronger on static backgrounds with subject motion; others on moving cameras with locked subjects. Using the wrong tool for the scene type produces flicker even when the prompt is clean.
7. Short clip with too much motion budget
Asking for major camera or scene changes in a 3-second clip forces too many spatial transitions, which compounds temporal incoherence.
Which bucket are you in
Match the symptom to the most likely cause before you start editing.
| Symptom | Most likely cause | First fix |
|---|---|---|
| Foliage / crowds / patterned walls strobe | Background too detailed (high-frequency) | Step 1: blur and simplify the background |
| Building edges or tree branches jump positions | Camera + subject motion fighting | Step 2: pick one motion source |
| Whole frame “boils,” entire background reinvents | Motion amount too high | Step 3: drop Motion amount |
| Only certain textures (brick, leaves, hair) crawl | Model weak on high-frequency detail | Step 4 or 5: switch model / use a still reference |
| Vertical 9:16 worse than 16:9 same prompt | Aspect-ratio training gap | Switch to Veo 3.1 / Kling 3.0, or shoot 16:9 and crop |
| Flicker grows over the clip length | Too much motion budget for the duration | Cut to 2-3s, then chain with Extend |
Before you change anything
- Save the prompt, model, and the flickering output clip.
- Identify which background element is flickering worst (signs, foliage, crowd, walls).
- Decide whether the use case can crop or blur the flickering region.
- Note your aspect ratio and clip length.
- Commit or back up the prompt template before changing it.
Information to collect
- Full prompt, model name, version, motion settings.
- Clip length, aspect ratio, fps.
- A specific timestamp where flicker is most visible.
- Whether the same prompt with a simpler background still flickers.
Shortest path to fix
Step 1: Strip the background to one short noun phrase
Replace:
crowded bustling night market with neon signs, steam, hanging lanterns,
motorbikes, food stalls, crowds of people, rainy ground reflections
With:
soft out-of-focus city lights at night, blurred background
The fewer high-frequency background elements, the less flicker. Add bokeh, blurred background, shallow depth of field to push the background out of focus — the model has to render less detail, so coherence improves.
Step 2: Pick exactly one motion source
If the camera moves, lock the background:
slow camera push-in, static background, no parallax movement,
background remains still
If the background moves (rain, wind, smoke), lock the camera:
static camera, no pan, no zoom, gentle rain falling in background
Never have both moving in a 3-second clip. For 5+ seconds, even harder to maintain.
Step 3: Drop motion strength
Re-render at the lowest motion setting. If flicker drops dramatically, motion strength was contributing. Then dial up cautiously.
- Runway Gen-4.5: set Motion amount to the lowest (most stable) level; keep camera prompts explicit (
slow dolly in) rather than vague. - Kling 3.0: lower the motion intensity; if you use the Motion Brush, remember brush intensity controls how much each region moves.
- Pika 2.5: motion slider around 0.3 to 0.5.
- Veo 3.1: keep the camera-motion phrase minimal and avoid stacking pan plus zoom plus subject motion.
Step 4: Switch model
Different models have very different background-stability defaults, and the 2026 generation flickers far less than the 2024 one. As of June 2026, rough strengths for background stability:
- Kling 3.0 (released February 4, 2026): top temporal consistency, holds scene coherence across the full single-shot window (3-15s, native 4K at 60fps); the Extend feature chains segments into longer sequences. Best default pick when the background must stay rock-solid.
- Google Veo 3.1: strongest all-rounder, native 4K (3840x2160), trained on both 16:9 and 9:16, strong prompt adherence, and the “Ingredients to Video” feature accepts up to four reference images for tighter scene consistency. Good when you also need synced audio.
- Runway Gen-4.5: improved temporal attention specifically reduced background shimmer versus Gen-3; excellent camera-instruction following and the best region-level control via Multi-Motion Brush.
- Seedance 2.0 (ByteDance, released February 9, 2026): the most balanced model and a strong image-to-video performer; a solid alternative when the others miss.
- Pika 2.5: best for stylized or creative backgrounds, weaker on photorealistic crowds.
If you are on Runway and the scene needs a moving photoreal crowd, try Kling 3.0. If a vertical 9:16 clip flickers, try Veo 3.1. OpenAI’s Sora is no longer an option (web/app discontinued April 26, 2026; API discontinued September 24, 2026).
Step 5: Switch to image-to-video with a still reference
Generate a still of the scene first (Midjourney, Imagen, Flux), then feed that PNG into the video tool as a reference image. The reference image gives the model a strong background anchor, which dramatically reduces flicker. On Veo 3.1 use “Ingredients to Video” (it accepts up to four reference images); on Kling and Runway, drop the still into the image-to-video / first-frame slot rather than text-to-video.
Step 6: Use background masking / motion brush
Runway’s Multi-Motion Brush and Kling 3.0’s Motion Brush let you paint which region should stay still and which should move, assigning independent motion (speed and direction) to each painted region. Paint the background as “no motion” or zero intensity, and only the subject animates. Keep painted regions spatially separated so the motion does not bleed across edges. This eliminates flicker in the painted-still regions instead of fighting it in the prompt.
Step 7: Composite a static background
If the scene allows it, generate the background as a still image, then generate the subject on a green-screen-like simple background, and composite in post (Premiere, DaVinci Resolve). The background is then a JPEG that cannot flicker.
How to confirm the fix
- Watch the clip at 25% speed. Background elements should not visibly change shape or position frame-to-frame.
- Pause every 12 frames; the background should be nearly identical.
- Three clips at the same settings should all be stable, not just one lucky output.
- A viewer focused on the subject should not be distracted by background motion.
If it still fails
- Cut the clip to 2 seconds. Background flicker compounds over time; 2s shows the inherent stability ceiling of the model.
- Strip the prompt to subject + minimal background, regenerate. Add back one background element at a time until you find the trigger.
- Try a fundamentally different tool. Some scenes simply do not work in some models.
- For final delivery, composite static background + animated subject.
- Package the prompt, model, output, and flicker timestamp before asking community help.
Prevention
- Default backgrounds to simple, out-of-focus, or blurred when generating video.
- Always pick one motion source per clip (camera or subject), never both.
- Use image-to-video with a still reference for scenes that need a specific background.
- Keep clips at 3 seconds when background stability matters; concatenate for longer sequences.
- For brand or commercial use, composite static + animated rather than relying on single-pass video generation.
FAQ
Why does only my background flicker while the subject stays stable? The subject is usually the model’s anchor — it gets the most attention and the strongest temporal tracking. The background is filled in around that anchor, so high-frequency or detailed regions (leaves, crowds, signage, brick) get re-invented frame to frame. Simplifying or blurring the background gives the model less to keep consistent.
Does a higher resolution or 4K reduce flicker? No. Flicker is a temporal-coherence problem, not a resolution one. Rendering the same prompt at 4K can actually expose more fine detail that crawls. Fix the prompt and motion first, then upscale a stable clip.
Which model flickers the least in the background as of June 2026? For pure background stability, Kling 3.0 and Google Veo 3.1 lead, with Runway Gen-4.5 close behind (its “improved temporal attention” specifically targeted background shimmer). Seedance 2.0 is the most balanced alternative. Sora is no longer available — OpenAI discontinued the web/app on April 26, 2026 and the API on September 24, 2026.
Can I fix flicker on a clip I already generated, without re-rendering? Sometimes. Mild flicker can be reduced in post with a deflicker filter (DaVinci Resolve’s Deflicker, or a frame-blend/optical-flow retime), or by masking and replacing the background with a still. Heavy flicker is cheaper to fix by re-rendering with a simpler background or a still reference.
Is image-to-video really more stable than text-to-video for backgrounds? Yes, reliably. A single reference still locks identity, style, and framing from frame one, which gives the model a strong background anchor and is the most dependable way to suppress flicker.