Seedance API の料金を実測:動画トークンの計算式を解明
目次
Seedance は動画をトークン単位で課金する。実際のメーターと一致する計算式は encoded_width × encoded_height × (24 × seconds + 1) / 1024 だ。このうち 2 点は、探した限りどのドキュメントにも載っていない。1 つは +1 フレーム、もう 1 つはエンコードされた解像度が公称値と違うこと(720p は 1280×720 ではなく 1248×704 で課金される)。Seedance の 5 モデルを対象に、全解像度ティアで 27 回の生成を実行したところ、課金されたトークン数はすべてこの式とトークン単位で一致した。この記事では、まずモデルファミリー全体を整理し、次に 2 リクエスト構成の API を示す。その後、解明した計算式、そこから導かれる 1 秒あたりの価格帯、そしてレートカードが誤解を招く 2 箇所を説明する。
TL;DR
- Seedance の動画トークン数 = エンコード幅 × 高さ ×(24 × 秒数 + 1)/ 1024。+1 フレームとエンコード解像度は実測値であり、ドキュメントには記載されていない。
- 720p は 1248×704、1080p は 1920×1088 で課金される。アスペクト比は影響しない。
- 同じ 4 秒クリップは、1.5-pro 以上のすべてのティアで同一のトークン数が課金された。単価は 100 万トークンあたり $1.0 から $7.0 まで。
- 4k の $4.0/M は 1080p の $7.7/M より安いが、1 秒あたりでは $0.78 に対して $0.38、つまり 2.1 倍かかる。
generate_audioはトークン数を変えず、1.5-pro では単価を 2 倍にする。
以下はすべて 2026-07-22 に Synthorai ゲートウェイの /v1/videos エンドポイントで実測したもの。ここでは Seedance ファミリーが ByteDance の定価で稼働している。各数値はタスクごとの生ログで裏付けている。
どの Seedance モデルが何をするのか
ティアの選択は単価を変えるだけで、メーター自体は変えない。まず機能で選び、価格は次のセクションで確認すればいい。同じ 4 秒 480p のプロンプトは、Seedance 2.0、2.0-fast、2.0-mini、1.5-pro のいずれでも同一のトークン数(各 40,594)が課金された(1.0-pro-fast は少し小さいピクセルグリッドのため 39,285)。ティアを上げて支払う対価は機能であり、ファミリー内でその配分は不均等だ。
| 解像度 | 長さ | 音声 | 画像入力 | seed / camera_fixed | 単価($/M トークン) | |
|---|---|---|---|---|---|---|
| 2.0 | 480p-4k | 4-15s(+auto) | ✓ ネイティブ | 最初 + 最後のフレーム | ✗ | $7.0(1080p $7.7 · 4k $4.0) |
| 2.0-fast | 480p-720p | 4-15s(+auto) | ✓ | 最初 + 最後のフレーム | ✗ | $5.6 |
| 2.0-mini | 480p-720p | 4-15s(+auto) | ✓ | 最初 + 最後のフレーム | ✗ | $3.5 |
| 1.5-pro | 480p-1080p | 4-12s(+auto) | トグル($1.2 / $2.4) | 最初 + 最後のフレーム | ✓ | $1.2-2.4 |
| 1.0-pro-fast | 480p-1080p | 2-12s | ✗ | 最初のフレームのみ | ✓ | $1.0 |
選ぶ前に知っておくべきクセが 3 つある。再現性の流れが逆になっている。seed と camera_fixed は 1.x モデルにしか存在しないため、最も安いティアが制御可能で、フラグシップは制御できない。機能フィールドはモデルごとに厳格にゲートされている。1.0 モデルに generate_audio を送ると名前付きの 400(extension_not_supported)が返るので、共通の 1 つの形ではなく各モデルの機能リストからリクエストを組み立てること。そして 2 秒クリップまで下げられるのは 1.0-pro-fast だけで、下記の計算式の実測がこれに依存しているのはそのためだ。それより新しいモデルはすべて 4 秒からになる。表の範囲を超えると、2.0 モデルはプラットフォームが公開している場合、上流でリファレンスファイル入力(最大 9 枚の画像、3 本の動画クリップ、3 本の音声ファイル)も受け付ける。
Seedance API はどう呼び出す?
動画生成は非同期ジョブ API になっている。POST を 1 回投げるとタスクが作られ、約 2 秒でレスポンスが返る。あとはタスク URL を完了までポーリングするだけだ。Python での一連の流れは次のとおり。
import os, time, requests
BASE = "https://synthorai.io/v1"
auth = {"Authorization": f"Bearer {os.environ['SYNTHORAI_API_KEY']}"}
task = requests.post(f"{BASE}/videos", headers=auth, json={
"model": "seedance-1-5-pro-251215",
"prompt": "A paper boat drifting across a rain puddle, cinematic",
"resolution": "720p", "ratio": "16:9",
"duration": 5, "generate_audio": True,
}).json() # returns in ~2s: {"id": "vid_...", "status": "queued", ...}
while task["status"] not in ("completed", "failed", "cancelled"):
time.sleep(8)
task = requests.get(f"{BASE}/videos/{task['id']}", headers=auth).json()
print(task["data"][0]["url"]) # signed MP4, valid 24h
print(task["usage"]["total_tokens"]) # the billing meter this post is about
ポーリングではなくブロックしたい場合は、作成時に Prefer: wait=60 ヘッダーを付ける。クリップが完成するか待ち時間が切れるまでレスポンスが保持され、切れた後は通常のポーリング用オブジェクトにフォールバックする。生成そのものにかかった時間は、我々のテストの 480p と 720p クリップで 20 秒から 2 分強までばらついた。完了タスクの usage.total_tokens フィールドが課金メーターであり、この記事の残りはこれを動かす要因についての話だ。
video token とは正確には何か
video token は、時間軸上の出力ピクセルを一定量で区切ったものだ。課金対象のカウントは W × H × frames / 1024 で決まる。frame 数は 24 × seconds + 1、W×H はエンコーダーが実際に扱う解像度で、解像度ティアのラベルの値ではない。この 2 つの項はメーターそのものから逆算した。各解像度で 3 種類の長さの課金 token 数をプロットすると残差ゼロで直線に乗る。傾きが 1 秒あたりの token 数、切片は全解像度で 1 フレーム分の token 数にちょうど一致する(480p で 405、720p で 858、1080p で 2,040)。傾きから W×H を解くと、実際にエンコードされたグリッドが得られる。
| 名目上のティア | エンコード解像度(実測) | 1 秒あたり token 数 | 1 フレーム追加分 |
|---|---|---|---|
| 480p | 864×480(1.0 系列)/ 864×496(1.5/2.0 系列) | 9,720 / 10,044 | 405 / 418 |
| 720p | 1248×704(1280×720 ではない) | 20,592 | 858 |
| 1080p | 1920×1088(1920×1080 ではない) | 48,960 | 2,040 |
| 4k | 3840×2160(名目=エンコード) | 194,400 | 8,100 |
独立したクロスチェックが 1 つある。ByteDance が 2.0 向けに広く出回らせている計算例、15 秒クリップで約 308,880 token というのは、我々が実測した 720p レートのちょうど 15 倍だ。つまり 720p のグリッドは、当てはめに使った 1.0 系列を超えても成り立つ(そして彼らのマーケティング計算は +1 フレームを落としている)。
実用上の帰結は 2 つ。アスペクト比は課金に影響しない。9 組のペア実行すべてで 16:9 と 9:16 の課金 token は同一だったので、縦型出力はコストの判断材料にならない。そして広く引用されている近似式 W × H × 24 × duration / 1024 は 1 フレーム分少なく見積もり、しかも解像度が間違っている。サードパーティの見積もりが実際の請求額から数パーセントずれるのはこのためだ。
Seedance の 1 秒あたりの実際のコストは?
計測したトークンレートに各ティアの定価を掛けると、カタログ全体が 1 本のはしごに収束する。
| モデル @ 解像度 | $/秒(計測トークン × 定価) |
|---|---|
| seedance-1.0-pro-fast @ 480p | $0.0097 |
| seedance-1.5-pro @ 480p、音声なし | $0.0121 |
| seedance-1.0-pro-fast @ 720p | $0.0206 |
| seedance-1.5-pro @ 480p、音声あり | $0.0241 |
| seedance-2.0-mini @ 480p | $0.0352 |
| seedance-1.0-pro-fast @ 1080p | $0.0490 |
| seedance-2.0-fast @ 480p | $0.0563 |
| seedance-2.0 @ 480p | $0.0703 |
| seedance-2.0 @ 4k | $0.778 |
秒課金型サービスの 2026 年 7 月時点の定価(公開プライシングトラッカーによる集計)と比べてみる。Kling が約 $0.07/秒、Sora 2 が約 $0.10/秒、Veo 3.1 が約 $0.40/秒だ。Seedance 2.0 の 480p は Kling と同じ価格帯で、ネイティブのマルチトラック音声まで込みになる。1.0-fast ティアは Kling の約 7 分の 1 のレートで見られる品質の 480p を生成する。2.0 で 15 秒の 720p クリップを作ると約 $2.17、同じクリップを 1.0-pro-fast で作ると $0.31 だ。
4k は安いのか?レートカードは Yes、請求書は No
4k は Seedance 2.0 でトークン単価が最も安く、1080p の $7.7 に対して 100 万トークンあたり $4.0 だ。それでもメニューの中で一番高い。理由は計算式にある。4k は 1 秒あたりのトークンが 1080p の約 4 倍(194,400 対 48,960)で、単価が安くても 1 秒あたりのコストは 2.1 倍になる。$0.778/秒 対 $0.377/秒 だ。4 秒の 4k を基準に測ると 785,700 トークン、4 秒の動画で $3.14 の請求になった。トークン単価のレートカードは、必ずその解像度の秒間トークン数と並べて読むこと。トークン課金の動画では、値札と請求書が正反対を指すことがある。
generate_audio は何を変えるのか?
トークンではなくレートを変える。1.5-pro で同じ 5 秒のクリップを試すと、音声ありで 50,638 トークン、音声なしでも 50,638 トークンだった。定価は無音の $1.2/M から音声ありの $2.4/M へと 2 倍になる。つまり音声付き出力はきっちり 2 倍のコストで、隠れたトークン加算はない。2.0 シリーズでは音声がモデルの単一レートに含まれるので、トグルによる計算は不要だ。パイプライン側でどのみち独自の BGM を載せるなら、$0.0121/秒 の 1.5-pro 無音がカタログの中で静かなお買い得になる。
非同期動画の課金はどう振る舞うのか?
課金は前述のタスクのライフサイクルに紐づく。タスクが最初に completed を報告した時点で 1 回だけ請求が発生し、何回ポーリングしても変わらない。キャンセルは物理法則に正直だ。キュー待ちのタスクはきれいにキャンセルされて課金はゼロだが、実行が始まると upstream は削除を拒否(409)し、結果が出るまで待つことになる。失敗した生成には課金されない。
27 タスクを回して得た運用上の注意が 3 つある。1 つ目、動画レスポンスはトークン使用量を持つが、チャットの usage.cost と違って コストフィールドがない。トークン × 自分のティアのレートで予算を組むこと。2 つ目、出力は有効期限 24 時間の署名付き URL で届く。速やかに自前のストレージへ移すこと。3 つ目、create のペースを抑えること。プラットフォームは 1 ワークスペースあたり毎分 6 件の動画タスクを許可する。保留中の各タスクは最悪ケースのコストを残高から予約するため、upstream が遅延している間に create をバーストさせると、最終的な支出が問題なくても一時的なクォータ不足レスポンスで弾かれることがある。
FAQ
Seedance 2.0 の API は本当に使えるのか?
使える。2026 年初頭の頃の話(中国のアカウントが必要、waitlist、段階的ロールアウト)はもう古い。2.0 を含むファミリー全体が Synthorai ゲートウェイの /v1/videos エンドポイントで ByteDance の定価どおりに稼働している(モデルページ:Seedance 2.0、1.5-pro、1.0-pro-fast)。ほかのプラットフォームでも提供されている。「Seedance 2.0 は体験クォータ限定」と書いてあるページがあれば、それは API ロールアウト以前の情報だ。
Seedance の価格がプロバイダー間でこれほど違うのはなぜか?
多くのリセラーが token 課金を独自のマージンと丸めを乗せた秒単位・クリップ単位の定額に変換しているからだ。この変換によって、解像度と再生時間に依存する token の計算が見えなくなる。本記事の計算式が、あらゆる見積もりの根底にある事実そのものだ。エンコード後の寸法を使って W × H × (24s + 1) / 1024 を計算し、公式レートを掛ければ、どのプロバイダーの上乗せ分も正確に算出できる。
アスペクト比や縦型フォーマットで追加コストがかかるか?
かからない。テストしたすべての解像度・再生時間で、16:9 と 9:16 は同一の token を課金された。メーターを動かすレバーは解像度と再生時間だけで、再生時間は完全に線形だ。
Seedance 2.5 はどうなのか?
発表済みだが、追跡している API ではまだ提供されていない。token の計算式と、ティアとレートの構造は引き継がれる可能性が高い。提供が始まったら同じ検証を再実行する。
計測日:2026-07-22/23。/v1/videos 経由で 5 つの Seedance モデルにわたり 27 件の生成を完了。token 数はタスクごとの usage レコードから、レートは ByteDance の定価から、機能マトリクスはライブの /v1/videos/models カタログから取得。競合の秒単位の数値は定価であり、計測値ではない。計算式は計測したすべての点に正確に一致する。エンコード後の寸法はメーターから復元しているため、ByteDance がエンコーダーを変更した場合は再検証すること。モダリティシリーズの残り:画像生成、音声認識、音声セッション、テキスト token。