# Seedance consistent character: the face references that work

Seedance consistent character guide: why Seedance 2.0 and 2.5 block a realistic AI face, the three official ways in, and what Higgsfield and resellers offer.

- Canonical: https://aiofmcity.com/blog/seedance-consistent-character
- Topic: Character consistency (https://aiofmcity.com/topics/character-consistency)
- Author: Gus
- Published: 2026-10-21

---
## Key points

- BytePlus blocks reference images and videos with realistic human faces in Seedance 2.0 and 2.5, and it documents no exception for AI-generated faces made in other tools.
- The official ways in are trusted Seedance or Seedream 5.0 text-to-image outputs from your own account within 30 days, preset digital characters, and verified real people.
- A trusted output loses its trust after any edit, after 30 days, or when it is compressed or forwarded, so save the original files untouched.
- The "virtual avatar ingest" for AI faces is described by a reseller, not by BytePlus. Treat it as that reseller's feature.
- Seedance 2.5 takes up to 30 reference images and makes clips up to 30 seconds. Seedance 2.0 takes up to 9 images and makes clips of 4 to 15 seconds.

---
For a Seedance consistent character, you cannot simply upload your AI persona's face. BytePlus blocks realistic faces in Seedance 2.0 and 2.5 reference images and names no exception for faces made in other AI tools. The official ways in are faces made inside BytePlus ModelArk, preset digital characters and verified real people. Higgsfield and resellers offer their own routes.

## Why Seedance blocks your AI persona's face

Seedance checks every reference image and video for realistic human faces and refuses them. BytePlus ModelArk, where ByteDance's own Seedance page sends you for the API, says so on its API page.

> "Dreamina Seedance 2.5 and Dreamina Seedance 2.0 series models do not support directly uploading reference images or videos that contain real human faces. ModelArk provides the following solutions to help you create videos with portrait assets." Listed: original outputs containing human faces "from certain models", "preset digital characters" and "authorized real-person assets".
>
> — Source: BytePlus ModelArk — Create a video generation task, read 2026-10-05 — https://docs.byteplus.com/en/docs/modelark/create-video-generation-task-api

A photorealistic persona looks like a real human face to a filter. Nothing in BytePlus's documentation treats a face you generated in Flux, Nano Banana or ChatGPT differently from a photo. So expect the same refusal.

There is a second, separate filter on the output side. It blocks faces that look like public figures.

> The filter "analyzes AI-generated outputs to determine whether a detected face or voice is similar to that of a public figure included in the feature's reference set. [...] If a match is identified, the content may be blocked, filtered, or otherwise prevented from being delivered to the end user."
>
> — Source: BytePlus ModelArk — Content filter FAQ, read 2026-10-05 — https://docs.byteplus.com/en/docs/modelark/content_pre_filter_faq

If your persona resembles a celebrity, Seedance may block the finished clip too. That is one more reason to give her a face of her own.

## The three official ways to get a face into Seedance 2.0 and 2.5

BytePlus documents three routes. Only the first one can carry an invented persona, and only if she was born inside ModelArk.

> "You can use the original face-containing outputs generated by the following models under this account within the past 30 days as input assets": face-containing videos from Seedance 2.5 and the 2.0 series (since 11 March 2026), their last-frame images (since 16 April 2026) and "Face-containing images obtained from Seedream 5.0 lite/pro/flash text-to-image" (since 16 April 2026). "Only outputs under the same account are trusted". "Only original model outputs are trusted; they cannot be used after secondary editing or after the validity period has expired." "Compressing or forwarding files may invalidate trust verification." The digital character library is "Suitable for scenarios that require real-human-style faces but do not need to specify a particular person".
>
> — Source: BytePlus ModelArk — Create portrait videos with Dreamina Seedance models, read 2026-10-14 — https://docs.byteplus.com/en/docs/modelark/seedance-portrait-asset-guide

> "Real-human assets must be used only after the actor's consent and authorization." The person scans a QR code, logs in to their own BytePlus account and completes "real-person verification" before uploading. Updated 28 September 2026.
>
> — Source: BytePlus ModelArk — Add real-human assets to asset library, read 2026-10-05 — https://docs.byteplus.com/en/docs/modelark/upload-real-person-portrait-assets

| Route | What goes in | Works for your own AI persona? | Limits |
| --- | --- | --- | --- |
| Trusted model outputs | Seedance videos, their last frames, Seedream 5.0 text-to-image faces | Only if her face was created in ModelArk | Same account, 30 days, no edits, no compression |
| Preset digital characters | A face from BytePlus's library, by asset ID | No. The face is BytePlus's and other users can pick it too | Library faces only |
| Authorised real-person assets | A real person's face after a live verification | No. It needs a living person to verify | The person's consent, per asset group |

The real-person route is for actors and creators who use their own face. An invented persona has nobody who can do a live verification for her. Never use it to put someone else's face into a clip.

Which route is yours depends on where her face was made:

_Figure: Where your persona's face was made decides whether BytePlus lets it into Seedance 2.0 and 2.5. Only a face born in ModelArk carries over as your own._

**Where was your persona's face made?**

- Seedream 5.0 text-to-image on my ModelArk account → **Trusted outputs:** Use the untouched files within 30 days, on the same account. Chain clips with the last frame.
- Flux, Nano Banana or ChatGPT → **No official BytePlus route:** Expect a refusal. Test Higgsfield Elements, or give her face shots to a model that takes your references.
- BytePlus's character library → **Preset digital character:** It works, but the face is not yours alone. Other users can pick the same face.
- It is my own real face → **Authorised real-person asset:** Verify yourself live on your own BytePlus account. Never use this route for someone else's face.

## How to keep a consistent character with trusted Seedance outputs

If you start a persona inside ModelArk, you can keep her face moving from clip to clip. Each new clip starts from an untouched output of the last one.

_Diagram: The trusted chain inside ModelArk. Every file must stay untouched, on the same account, and be used within 30 days. The last frame of each clip starts the next one._

1. Seedream 5.0 — text-to-image portrait
2. Save untouched — no crop, no compression
3. Seedance clip — within 30 days
4. Last frame — return_last_frame
5. Next clip — new 30 days

1. **Create her face in Seedream 5.0 text-to-image** (lite, pro or flash) on your ModelArk account. Only its text-to-image outputs are on the trusted list, so you describe her in words.
2. **Save the original files to BytePlus TOS**, BytePlus's storage. Do not crop, compress or send them through a chat app. That can break the trust check.
3. **Use the image in Seedance** as the first frame or a reference within 30 days.
4. **Ask for the last frame.** The API has a `return_last_frame` setting. That last frame is trusted again, so it can start the next clip.
5. **Keep the chain going.** Every new output has its own 30 days. A file older than that drops out of trust.

> `return_last_frame`: "Return the last frame image of the generated video in jpeg format." "You can use this parameter to generate multiple consecutive videos. Use the last frame of the previously generated video as the first frame of the next video task". `seed` is supported only by Seedance 1.5 pro, 1.0 pro and 1.0 pro fast.
>
> — Source: BytePlus ModelArk — Create a video generation task, read 2026-10-05 — https://docs.byteplus.com/en/docs/modelark/create-video-generation-task-api

The weak point is drift. Each clip starts from the end of the one before, so small changes add up. Keep your first Seedream portrait as the master. Compare every clip's face with it, the same way the [character consistency guide](https://aiofmcity.com/guides/character-consistency#the-ten-minute-check-that-catches-drift-early) compares stills. And Seedance 2.x has no seed, so the same request does not give the same face twice.

If your persona already exists in Flux, Nano Banana or ChatGPT, this route does not bring her face across. It only works for a face born in ModelArk.

### What the sources do not say: Finding a BytePlus route for an AI-generated face made outside ModelArk

We looked for an official way to use a persona face from another AI tool in Seedance. BytePlus does not document one.

The BytePlus page "Create portrait videos with Dreamina Seedance models" lists exactly three solutions: trusted outputs from its own models, preset digital characters, and authorised real-person assets. None of them covers a face generated in Flux, Nano Banana or ChatGPT. The real-person route asks for a live verification, which an invented face cannot do. The phrase "virtual avatar" appears on a reseller's documentation, not on BytePlus.

You can check this yourself. Open docs.byteplus.com, go to ModelArk, and read "Create portrait videos with Dreamina Seedance models" and "Add real-human assets to asset library". Search both for "virtual", "AI-generated" and "avatar".

## The Seedance "virtual avatar" route: what a reseller says

A reseller documents an upload path for AI-generated faces that BytePlus itself does not describe. Treat it as that reseller's feature, with that reseller's rules.

> A reseller FAQ: "Virtual avatar (AI-generated realistic human, no real-world counterpart): use the 'Virtual avatar ingest' path". It calls this "fully automatic, no review" and says "AI-generated realistic-looking humans that have no real-world counterpart (e.g., generated by Nano Banana) are 'virtual avatars'".
>
> — Source: APIYI docs — Seedance 2.0 face references (reseller), read 2026-10-05 — https://docs.apiyi.com/en/faq/seedance2-asset-face-reference

What this means before you pay a reseller:

- **It is not on BytePlus's own pages.** We could not confirm whether the reseller does this through an official BytePlus feature or its own process.
- **You add a party to your chain.** Your persona's face goes through the reseller as well. Read its terms and BytePlus's.
- **A route without review can close quickly.** If BytePlus changes its filter, the reseller may have to stop. Keep a second video model ready.

## Seedance consistent character on Higgsfield and WaveSpeed

Higgsfield keeps a persona's face across Seedance clips with saved Elements. WaveSpeed's Seedance pages are silent on faces, so test with one cheap run.

> "@character references hold a face consistent within a single generation. For the same character across multiple separate generations, save it as an Element". "If the character is a real person, train a Soul ID first and create the Element from its portraits." "Seedance 2.5 is available on Pro and Plus plans and above and isn't included in Starter and Basic." First clip: "Upload a sharp, front-facing, well-lit reference image"
>
> — Source: Higgsfield Help — How do I use Seedance, read 2026-10-05 — https://higgsfield.ai/creator-hub/help-center/ai-models/how-do-i-use-seedance

Higgsfield's help page does not mention BytePlus's face rule. It does not say whether an Element of a realistic AI face is ever refused. [The Higgsfield review](https://aiofmcity.com/tools/higgsfield) covers its plans and Soul ID.

> Inputs: `prompt`, `image`, `last_image`, `duration` (4 to 30 seconds), `resolution`, `generate_audio`. Per second: 480p $0.18, 720p $0.36, 1080p $0.90, 4K $1.80. "Seedance 2.5 Image To Video starts at $0.81 per run."
>
> — Source: WaveSpeedAI — Seedance 2.5 Image-to-Video, read 2026-10-21 — https://wavespeed.ai/models/bytedance/seedance-2.5/image-to-video

> `duration`: "Video length in seconds: 4-15 (default: 5)". Shown price: "$0.54 per run".
>
> — Source: WaveSpeedAI — Seedance 2.0 Image-to-Video, read 2026-10-21 — https://wavespeed.ai/models/bytedance/seedance-2.0/image-to-video

The WaveSpeed page lists no face rule and no reference-to-video mode for Seedance. Before a batch, run one short clip at 480p with your persona as the start image. The Generate button shows the exact price first. If it goes through, you know where you stand on that day. [How to use WaveSpeed AI](https://aiofmcity.com/blog/how-to-use-wavespeed-ai) walks you through a first run, and [the WaveSpeed review](https://aiofmcity.com/tools/wavespeed) explains how billing works there.

## Seedance reference images: 2.0 vs 2.5

Seedance 2.5 takes more than three times as many reference images and makes clips twice as long. For a persona, more reference images help only if the face filter lets them in.

> Seedance 2.5 omni reference-to-video: "reference images (0–30), reference videos (0–10), reference audio clips (0–10)", "coherently generating videos up to 30 seconds long". Seedance 2.0 series: "reference images (0–9), reference videos (0–3), reference audio clips (0–3)". Images: "Width and height (px): [300, 6000]", "Single image must be less than 30 MB".
>
> — Source: BytePlus ModelArk — Create a video generation task, read 2026-10-05 — https://docs.byteplus.com/en/docs/modelark/create-video-generation-task-api

> "Create videos up to 30 seconds in a single generation, with the option to extend twice for richer, more complete storytelling."
>
> — Source: ByteDance Seed — Seedance 2.5, read 2026-10-05 — https://seed.bytedance.com/en/seedance2_5

| | Seedance 2.0 | Seedance 2.5 |
| --- | --- | --- |
| Reference images | Up to 9 | Up to 30 |
| Reference videos | Up to 3 | Up to 10 |
| Clip length | 4 to 15 s | Up to 30 s |
| Seed setting | No | No |
| Realistic face in references | Blocked unless trusted | Blocked unless trusted |
| Price on WaveSpeed (image-to-video) | Starts at $0.54 per run (480p, 5 s) | Starts at $0.81 per run (480p, 5 s); $1.80 for a default 720p 5 s clip |

The WaveSpeed "starts at" figures are for the cheapest setting on 5 October 2026; Seedance 2.5 bills $0.36 a second at its default 720p. [What generation costs](https://aiofmcity.com/model-prices) lists other video models with dates.

What to put in a Seedance reference set for one persona, once you have a face Seedance accepts:

1. **One clear front close-up**, neutral light. Higgsfield's guide also starts with "a sharp, front-facing, well-lit reference image".
2. **Two three-quarter views**, left and right.
3. **One full-body image**, so her proportions stay the same.
4. **The outfit as its own reference**, if it matters for the clip.

[How many images to train a character LoRA](https://aiofmcity.com/blog/how-many-images-to-train-a-lora) explains why variety in a set matters more than the number. The same logic applies here.

## How to prompt Seedance so her face holds

Write one fixed description of her and paste it into every prompt, word for word. After it, describe the action, the place and light, the camera move and the mood, in that order. Higgsfield's Seedance guide gives the same order, and the same fix when her face changes halfway through a clip:

> "Cover four things in order: what the subject is doing, setting and lighting, camera move, mood or atmosphere." "Character looks different halfway through. Add more specific visual anchors: hair color, clothing details, distinguishing features." "Change one thing per iteration. If something is off, change the prompt or the reference, not both at once."
>
> — Source: Higgsfield Help — How do I use Seedance, read 2026-10-05 — https://higgsfield.ai/creator-hub/help-center/ai-models/how-do-i-use-seedance

A prompt built that way:

```text
Mara, a woman in her late twenties with shoulder-length copper hair, a centre parting,
green eyes and a small mole above her left lip. Grey knit jumper, small silver hoops.
She puts a coffee cup down on a café table and looks up at the camera with a small smile.
A small café by the window, soft morning light. Slow push-in at eye level. Calm, quiet mood.
```

The first two lines never change. They are her visual anchors: things the camera sees in every shot. Only the last two lines change from clip to clip. If you give her a new outfit, change it in the fixed block and keep that block for the whole series.

When a clip goes wrong, change one thing for the next try: the prompt or the reference, never both. Then you know which change fixed it.

## Which video model to use when Seedance refuses your persona

If Seedance will not take her face, use a model that accepts your own reference images. Keep Seedance for shots where her face does not appear.

- **Move the face shots to another model.** [The best AI video model for an AI influencer](https://aiofmcity.com/blog/ai-video-models-for-personas) compares MiniMax H3, Wan and Kling, including MiniMax H3 with your own character LoRA. To copy a real movement onto her, [Kling motion control](https://aiofmcity.com/blog/kling-motion-control) takes your persona image and can bind her face.
- **Use Seedance for scenes without a face.** The face check only applies to faces. Product shots, hands, a room, the view from her window: all of that fits a persona's feed.
- **Build the stills first.** [ChatGPT AI influencer photos](https://aiofmcity.com/blog/chatgpt-ai-influencer-images) shows how to make a stable reference set for whichever video model you pick.

Whichever route you use, label the result. BytePlus's API sets its visible "AI Generated" watermark to off by default, so the AI label is your job. The [label matrix](https://aiofmcity.com/ai-label-matrix) shows what each platform asks for. None of this is legal advice.

> `watermark`, default `false`: "true: An AI Generated watermark will be displayed in the lower right corner of the generated video."
>
> — Source: BytePlus ModelArk — Create a video generation task, read 2026-10-05 — https://docs.byteplus.com/en/docs/modelark/create-video-generation-task-api

Start with one test today. Send one 4-second Seedance clip with your persona's front close-up through the platform you use. If it is refused, move her face shots to a model that takes your references, and keep Seedance for the rest of her feed.

## Frequently asked

### How do I keep a character consistent in Seedance?

Use the same reference images or saved element for every clip, paste one fixed description of her into every prompt, and change only one thing per try. For a realistic face on BytePlus, the face must come from trusted ModelArk outputs, a preset character or a verified real person.

### Why does Seedance reject my reference image?

Because it shows a realistic human face. BytePlus says Seedance 2.5 and the Seedance 2.0 series "do not support directly uploading reference images or videos that contain real human faces". Its documentation names no exception for faces you generated with another AI tool.

### Can I use an AI-generated face in Seedance?

On BytePlus, only through three routes: original face outputs from Seedance or Seedream 5.0 text-to-image (lite, pro or flash) made on the same account in the last 30 days, the preset digital characters, or a real person who verified and authorised their face. A reseller documents a "virtual avatar" upload for AI faces, but BytePlus does not.

### How many reference images does Seedance 2.5 take?

Up to 30 reference images, 10 reference videos and 10 audio clips in omni reference-to-video, according to BytePlus. Seedance 2.0 takes up to 9 images, 3 videos and 3 audio clips.

### What is the difference between Seedance 2.0 and 2.5?

Seedance 2.5 makes clips of up to 30 seconds and takes more references: 30 images against 9. Seedance 2.0 makes clips of 4 to 15 seconds. The face rule is the same for both.

