New Sign up free, 10 calls on us. Up to $1, no card needed.

Veo 2

Released 2024-12

videoVision

Veo 2 is Google's legacy generally-available video model, announced in December 2024, before native audio joined the Veo line.

Input
text image
Output
video
Price
$0.5/s

Price in context

Where the price sits among 5 comparable models

Per second$0.5/s
$0.1 · Sora 2 Veo 2 · $0.5

The bar shows how this model’s price compares with every other model of the same kind on Synthorai. The cheapest and the most expensive are named at each end. These are base rates; batch, region and cache-write discounts are on the pricing page.

Specs & limits

Video

Resolution 720p
Clip length 5-8 s A continuous range, not a fixed set.
Frame rate 24 fps
Aspect ratios 16:9 · 9:16
Video inputs text-to-video · first-frame image-to-video (single image)
Format .mp4

Model

Modalities text + image → video
  • Google's legacy Veo 2 GA video model (announced December 2024, before native audio joined the Veo line): silent 720p output only, text-to-video plus single first-frame image-to-video, 24 fps, 5-8 s, 16:9 and 9:16
  • no audio track and no last-frame or reference-image input (those arrive in the Veo 3.x generations). Google now lists Veo 3.1 as the recommended replacement. Synthorai serves it via the async /v1/videos job API and bills per output second (upstream returns no usage, so duration is metered from the request)

per Google official docs ↗

Use Veo 2 in 30 seconds

Asynchronous job API: create a task and poll it, or hold the request open with Prefer: wait. POST /v1/videos

import time

import requests

BASE = "https://synthorai.io/v1"
HEADERS = {"Authorization": "Bearer sk-syn-..."}

# 1) create the video generation job (POST /v1/videos)
task = requests.post(
    f"{BASE}/videos",
    headers=HEADERS,
    json={
        "model": "veo-2.0-generate-001",
        "prompt": "a watercolor lighthouse at dawn, waves rolling in, camera pulling back",
        "resolution": "720p",
        "duration": 5,
    },
).json()

# 2) poll the job until it reaches a terminal state
while task["status"] in ("queued", "in_progress"):
    time.sleep(5)
    task = requests.get(f"{BASE}/videos/{task['id']}", headers=HEADERS).json()

# 3) completed → signed video URL (valid ~24h - download and store it promptly)
if task["status"] == "completed":
    print(task["data"][0]["url"])
else:
    print(task["error"])

About Veo 2

  • It generates silent .mp4 clips from a text prompt or a single first-frame image at 720p, 24 fps, 5 to 8 seconds long, in 16:9 or 9:16, and it is the only Veo whose duration is a continuous range rather than the fixed 4, 6, or 8 seconds of the later generations.
  • It also predates video extension, which arrives with Veo 3.1, and it is the one model in the line whose prompt rewriter can be turned off, so prompts reach the model exactly as written instead of being expanded first.
  • Shared request controls apply: up to four videos per call, a seed for reproducibility, a negative prompt, camera-motion selection for image-driven clips, a choice between padding and cropping when the input aspect ratio does not match, and optimized or lossless compression, with Content Credentials embedded in the output.
  • Google now lists Veo 3.1 as the recommended replacement, but Veo 2 remains available for existing workflows and cost-sensitive silent output.
  • Synthorai serves it through the asynchronous /v1/videos job API and bills per output second (the upstream returns no usage, so duration is metered from the request).
  • Create a task and poll it, or use Prefer: wait for short jobs.

FAQ

Is the Veo 2 API free to try?

Yes: new accounts get 10 trial calls and up to $1 in free credit, no card required. That's enough to try Veo 2 against your real workload before adding a payment method.

What is Veo 2 best at?

Legacy GA model, silent 720p output; text- and single-image-to-video; 5-8 seconds at 24 fps. See the About section for the full picture from the vendor's own release notes.

How much does Veo 2 cost?

Veo 2 costs $0.5 per second of generated video on Synthorai. Only successful generations are billed: pay-as-you-go, no platform markup, no subscription.

How do I generate videos with the Veo 2 API?

POST to /v1/videos on Synthorai with model="veo-2.0-generate-001" to create an asynchronous job, then poll the task (or hold the request open with a Prefer: wait header) until the video URL is ready. No vendor SDK is needed.

How do I get access to Veo 2?

Point your existing OpenAI SDK at base_url="https://synthorai.io/v1", set model="veo-2.0-generate-001", and you're done. One API key covers every model on the gateway.

Related models

Compare

Every value on this page is transcribed from the vendor's own documentation, linked above, and carries the date it was checked. Prices are compared across the catalogue; specification values that vendors define differently are shown with the difference stated rather than charted. Nothing here is measured by us, and nothing is scored.

Get your API key Compare your cost →