Disclosure: We run NovAI, an API gateway for Chinese AI models. This is a first-party test report, not an independent review. Every data point below comes from real API calls made on 4 August 2026.
We tested all 9 media generation models on our platform for visible watermarks. The method: real API call → download output → extract first/middle/last frames (video) → visual inspection → OCR on corner crops → 3–4× zoom confirmation.
Result: Every image model carries a visible AI生成 label. Video models split by provider — Seedance 2.0, Seedance 2.0 Fast, and CogVideoX-Flash returned no visible label in our tests. Hunyuan Video 1.5 carries one.
The pattern is provider × media type, not "free has it, paid doesn't." ByteDance video = no label. Tencent = label. Zhipu AI video = no label. All three providers label their images.
Full per-model table with method and caveats: aiapi-pro.com/watermark-notice
If you're building a product on top of a Chinese video API — ad creative, short-form content, e-commerce demos — a burned-in AI生成 corner label is a dealbreaker for client-facing output. Until now, the common assumption was that all Chinese models label everything. That assumption is wrong, and it's costing developers good options.
The flip side: we're not going to tell you the labels are gone. They're not. China's Measures for the Labelling of AI-Generated Synthetic Content (in force since 1 September 2025) require providers to label generated media. What each provider actually does varies — and that's what we tested.
Same prompt, same parameters, real API calls through our own endpoint. No simulated output.
POST /v1/video/generationsstatus: succeededPOST /v1/images/generationsA serene mountain landscape at golden hour, cinematic, high detail
Same prompt for every model. For video, 5-second duration at default resolution.
| Model | Type | Provider | Price | Visible label (4 Aug 2026) |
|---|---|---|---|---|
| doubao-seedance-2.0 | Video | ByteDance | $0.067–$1.00/s | ❌ No visible label — clean frames |
| doubao-seedance-2.0-fast | Video | ByteDance | $0.054–$0.802/s | ❌ No visible label — clean frames |
| cogvideox-flash | Video | Zhipu AI | Free forever | ❌ No visible label in video or cover |
| hy-video-1.5 | Video | Tencent | $0.21/generation | ✅ AI生成, lower right |
| cogview-3-flash | Image | Zhipu AI | Free forever | ✅ AI生成, lower right |
| doubao-seedream-5.0 | Image | ByteDance | $0.027/image | ✅ AI生成, lower right |
| doubao-seedream-5.0-pro | Image | ByteDance | $0.034/image | ✅ AI生成, lower right |
| hy-image-lite | Image | Tencent | $0.014/image | ✅ AI生成, lower right |
| hy-image-v3.0 | Image | Tencent | $0.028/image | ✅ 图片由AI生成, lower right |
No visible label ≠ no labelling at all. Providers may still embed invisible metadata watermarks. CogVideoX's cover image, for example, is served through Zhipu's watermark pipeline even though nothing is visible. We only report what we can see and OCR.
This is upstream behaviour, not ours. Providers can change how they apply labels at any time. If our next scheduled check finds a change, the watermark notice page will be updated.
Paying never removes an image label. All five labelled models except cogview-3-flash are paid. The pattern is provider × media type, not free vs paid.
China's labelling rules require providers to attach labels to AI-generated content, but they don't specify the exact method. Each provider implements compliance differently:
This means the "safest" bet for visible-label-free video is currently ByteDance or Zhipu AI video models. But — caveat #2 — upstream behaviour can change.
Seedance 2.0 (from $0.067/s at 480p) and CogVideoX-Flash (free forever) are the options that returned clean frames in our test. For client-facing work where a corner label would be a problem:
import requests, time
BASE = "https://aiapi-pro.com/v1"
KEY = {"Authorization": "Bearer sk-novai-xxx"}
# Submit a Seedance 2.0 video task
task = requests.post(f"{BASE}/video/generations", headers=KEY, json={
"model": "doubao-seedance-2.0",
"prompt": "A drone shot over a neon city at night, cinematic",
"duration": 5,
"resolution": "720p",
}).json()
# Poll until done
while True:
r = requests.get(f"{BASE}/video/generations/{task['id']}", headers=KEY).json()
if r.get("status") not in ("queued", "processing"):
break
time.sleep(5)
# r contains the video URL — clean frames in our tests
print(r.get("content", {}).get("video_url") or r.get("content", {}).get("url"))
CogVideoX-Flash is free forever, 6-second clips, and returned no visible label. Plus $2 free credit on signup to try the paid models:
# Same code, just swap the model
task = requests.post(f"{BASE}/video/generations", headers=KEY, json={
"model": "cogvideox-flash",
"prompt": "A paper plane gliding over a calm ocean",
}).json()
All image models carry the label. They're good for prototyping, internal tools, testing prompt pipelines, and research output. Not suited to client deliverables or stock assets — the label reads as Chinese text in the corner.
Text and chat models are completely unaffected. No labels of any kind. If that's what you need, the rest of the model catalogue behaves exactly as documented.
If you're evaluating Seedance 2.0, here's how the pricing compares:
| Resolution | NovAI | OpenRouter | Difference |
|---|---|---|---|
| 480p | $0.067/s | $0.067/s | Same |
| 720p | $0.163/s | $0.199/s | 18% cheaper |
| 1080p | $0.329/s | $0.496/s | 34% cheaper |
| 4K | $1.00/s | $1.36/s | 26% cheaper |
A 5-second 720p clip costs ~$0.82 on NovAI vs ~$1.00 on OpenRouter. Same model, same output quality — the difference is markup.
Most API gateways and relay services won't tell you which models have watermarks. They'll either say "no watermark" (often false) or say nothing at all. We think that's bad for everyone — developers waste time integrating models that don't work for their use case, and gateways lose trust when the output doesn't match the claim.
Our approach: test every model, publish the results with the method and date, and update it on a schedule. The watermark notice page has the full table, the three honest caveats, and a FAQ. If a provider changes their behaviour, we'll update the page and note the change.
Tested, not guessed. That's the standard we hold ourselves to.
Full per-model watermark table with methodology and FAQ: aiapi-pro.com/watermark-notice. This page tracks per-model test results and is updated on a schedule. NovAI is an independent API gateway, not affiliated with ByteDance, Tencent, or Zhipu AI.