GPT Image 2.5 is live — OpenAI's newest image model, targeted edits that leave the rest of the frame alone
Seedance Face Detected: Real Person Errors, Explained
2026/08/09

Seedance Face Detected: Real Person Errors, Explained

Troubleshoot Seedance face detected errors by checking supported references, media rules, automated review, and refund status without guessing the cause.

Did Seedance reject a reference that contains a face? Do not use the wording alone to decide which system rejected it or why. Start with two questions: does the request match the published media rules, and did a valid task then fail automated review?

Seedance 2.5 supports reference images and videos that may contain real people, while reAPI documents an automated review before generation and a full refund when a task fails.[1] This guide stays with observable behaviour: validate the request, distinguish a submit-time error from a reviewed task failure, and choose a compliant next step.

TL;DR

  • Read the status before interpreting the message. A synchronous HTTP 400 points to request validation; a task that starts and later fails must be handled as a task failure. The parameter guide documents both paths.[2]
  • Do not infer how a face was classified. The published material does not disclose classifier features, thresholds or the internal component behind every possible error string.
  • Check the media contract first. Public HTTP(S) URLs, supported formats, file limits and valid field combinations can be verified directly.[2]
  • Seedance 2.5 is built around references. ByteDance describes up to 30 images, 10 video clips and 10 audio clips per generation.[3] That capacity does not guarantee that every reference will pass review.
  • reAPI accepts real-person reference images and video. Material passes automated review before generation, and anything rejected fails with an error and a full refund.[1]

Start with the response you actually received

The public documentation gives you a useful distinction without requiring a theory about hidden systems.[2]

What you observeWhat the documentation supportsNext step
HTTP 400 names a file formatThe reference file is not in an accepted formatRe-encode the actual file; renaming its extension is not enough
HTTP 400 names fields or parametersThe request violates a submit-time constraintCorrect the field combination, duration or aspect-ratio setting
A task starts, then reports a parameter or task-type errorThe selected task type and prompt or parameters do not agreeAlign omni_reference_task_type, prompt, duration and size
A task fails citing sensitive contentThe reference or generated output did not pass moderationReplace the material or revise the request; the failed task is refunded

Record the HTTP status, task ID, task status and complete error text. The documentation does not map every wording to a named internal service, so wording and response time are not reliable proof that a host, upstream model or particular classifier produced it.

A face-related message tells you that the submitted material did not pass the applicable validation or review. It does not prove that the person is real, that the system checked provenance metadata, or that a particular visual feature crossed a documented threshold. Those implementation details are not present in the cited product documentation.

A synthetic origin therefore does not guarantee acceptance, but rejection does not establish that the reference depicts a real person either. Keep the provenance record for your own rights and production checks; for API troubleshooting, work from the request contract and the returned task result.

If a previously accepted file stops working, do not jump straight to a threshold-change explanation. Confirm that the bytes at the public URL are unchanged, compare the model ID and parameters with a recorded successful request, and retry with a minimal valid input. Escalate with those records if the result remains inconsistent.

Troubleshoot the request instead of trying to evade review

Overlays, selective blur and other changes made solely to evade a review are not useful diagnostic tests. They change the input, so even an accepted retry would not show which part of the original request was invalid. They can also undermine the reference details the generation is meant to preserve.

Keep an untouched source, document consent where a real person appears, and test one variable at a time. Fix a documented format or parameter error directly. If valid material fails content review, replace it or select a model whose published policy fits the intended, lawful use rather than attempting to conceal the subject.

The useful question is whether the request is valid and the intended use is supported—not how to get around the review.

Reference material as a first-class input

Seedance 2.5's design assumes reference material. ByteDance's launch post leads with it: up to 30 images, 10 video clips and 10 audio clips in a single pass, with reference capabilities spanning motion, style and multi-subject scenes.[3] These capabilities sit alongside content review; they do not promise acceptance for every file.

On reAPI the model id itself reflects the position. There is one customer-facing Seedance 2.5 id, doubao-seedance-2.5-face, with no faceless variant to fall back to.[2] The published behaviour is that real-person reference images and videos are accepted, that reference material passes an automated review before generation runs, and that anything rejected fails with a clear error and a full refund of the reserve.[1]

The refund is the practical part: a reviewed task that fails costs time, but the reserved amount is returned.[1] Use that result to choose a different compliant reference instead of repeatedly modifying a file to probe an undocumented rule.

Two obligations do not move. Obtain consent and any necessary likeness rights for people in the reference material, and follow the applicable content policy. An API accepting an upload does not acquire permission for you, while a refund after rejection is not approval to resubmit the same material in disguised form.

What reAPI accepts, exactly

Keep these limits in one place because a format or field error has a different fix from a moderation failure.[2]

FieldLimitFormats
image_urlsup to 30, each under 30 MBjpeg, png, webp, bmp, tiff, gif, heic, heif
image_with_rolesfirst frame, or first + last (max 2)same as above
video_urlsup to 10, each 2–30 s and under 200 MB, combined 30 smp4, mov, 480p to 4K
audio_urlsup to 10, each 2–30 s and under 15 MBwav, mp3

One platform rule is easy to miss: every reference must be a public HTTP(S) URL. Base64 and data: payloads are rejected across the whole reAPI surface, not just this model.[2] Confirm that the URL remains reachable and serves the expected file bytes when the task runs.

Two more constraints are enforced before submit rather than minutes later: image_urls and image_with_roles are mutually exclusive, and a first/last-frame job only accepts size: adaptive.[2] Both return immediately instead of failing after the task starts.

FAQ

What does the Seedance face detected error actually mean?

It means the request or reference did not pass the applicable validation or review. The exact HTTP status and task state tell you which documented troubleshooting path to use; the phrase alone does not prove the person's identity or expose the internal review method.[1][2]

Why does it reject my AI-generated character?

The published documentation does not disclose that internal decision. Confirm the URL, format, size and field combination first. If those are valid and the task fails review, use another compliant reference; being AI-generated does not override the review step.[1][2]

Can I upload a real person's photo to Seedance 2.5 on reAPI?

Yes. Real-person reference images and video are accepted and go through automated review first, with a full refund if the review rejects them.[1] Consent and likeness rights remain your responsibility.

Why did the same images stop working overnight?

The error alone cannot establish that a threshold changed. Compare the current request, referenced file bytes, model ID and parameters with a recorded successful job, then retry with a minimal valid input. If the difference cannot be isolated, send those records to support.

Does turning off the safety checker fix face rejections?

Do not assume an unrelated setting overrides reference review. The documented fix depends on the returned error: correct request constraints for a validation error, or replace material that fails content review.[2]

Will a rejected reference still charge me?

Not on reAPI. A task that fails review refunds the reserve in full.[1]

What should I save before contacting support?

Save the model ID, request parameters without credentials, reference URL and file metadata, HTTP status, task ID, final task status and complete error text. That is enough to separate a reproducible input problem from a task-review result.

Should I alter the image to get around the review?

No. Altering a file solely to evade review changes the test input and may remove details needed for character consistency. Fix documented validation issues, or replace material that does not pass review.

A production-safe preflight for face references

Before building a narrative workflow, submit one compliant reference and retain the exact request and response. Correct any synchronous validation error against the parameter table. If the task starts and then fails review, accept that verdict, confirm the refund, and replace the reference rather than trying to reverse-engineer an undocumented classifier.[1][2]

This preflight tests what the public interface actually promises: accepted fields, supported media, task status and refund handling. It does not claim to identify an internal review component from timing or wording that the documentation does not define.

References

  1. reAPI. Seedance 2.5 — model page, real-person reference support and refund behaviour. Retrieved August 2026 from reapi.ai/models/seedance-2-5
  2. reAPI. doubao-seedance-2.5-face — reference field limits, formats and submit-time constraints. Retrieved August 2026 from reapi.ai/docs/seedance-2-5
  3. ByteDance Seed. One-take Creation, Flexible Referencing: Introducing Seedance 2.5. Published 31 July 2026, retrieved August 2026 from seed.bytedance.com/en/blog/one-take-creation-flexible-referencing-introducing-seedance-2-5

Further reading