AI video API · Luma
Luma Ray 3.2 API pricing per second
Generate video with Luma's Luma Ray 3.2 through the Cut.Pro API. You see the price before you generate and pay only for what you use.
- Pay as you go, no subscription
- 15 free credits on a new account
- Free quote before every call
From$0.17per secondR$0.57 · 10 credits5 seconds at 720p: $0.86Updated November 07, 2026
Pricing
Luma Ray 3.2 pricing by mode and resolution
| Mode | Resolution | Price per second | In reais | Credits |
|---|---|---|---|---|
| First and last frame | 720p | $0.17 | R$0.57 | 10 credits |
| First and last frame | 1080p | $0.69 | R$2.30 | 39 credits |
| From an image | 720p | $0.17 | R$0.57 | 10 credits |
| From an image | 1080p | $0.69 | R$2.30 | 39 credits |
| Text only | 720p | $0.17 | R$0.57 | 10 credits |
| Text only | 1080p | $0.69 | R$2.30 | 39 credits |
Updated November 07, 2026. Prices use the cheapest credit pack: 1 credit costs $0.0179 (R$0.0599).
Limits
What Luma Ray 3.2 accepts in each request
- Modes
- First and last frame, From an image, and Text only
- Duration
- 5 or 10 seconds
- Resolutions
- 720p, 1080p
- Aspect ratios
- 21:9, 16:9, 4:3, 1:1, 3:4, 9:16
- Reference images
- up to 2
Code
How to call Luma Ray 3.2 free quote, generation and result
BODY='{"model":"luma/ray-3.2","prompt":"a dog surfing at sunset","seconds":5,"resolution":"720p","aspect_ratio":"9:16"}'
CREDITS=$(curl -s -X POST https://api.cut.pro/api/v1/generations/quote \
-H "X-Api-Key: $CUTPRO_API_KEY" \
-H "Content-Type: application/json" \
-d "$BODY" | jq .credits)
curl -X POST "https://api.cut.pro/api/v1/generations?wait=60" \
-H "X-Api-Key: $CUTPRO_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d "$(jq -c --argjson credits "$CREDITS" '. + {credits: $credits}' <<< "$BODY")"const api = "https://api.cut.pro/api/v1";
const headers = { "X-Api-Key": process.env.CUTPRO_API_KEY, "Content-Type": "application/json" };
const body = {
model: "luma/ray-3.2",
prompt: "a dog surfing at sunset",
seconds: 5,
resolution: "720p",
aspect_ratio: "9:16",
};
const quote = await fetch(`${api}/generations/quote`, { method: "POST", headers, body: JSON.stringify(body) }).then((res) => res.json());
let generation = await fetch(`${api}/generations?wait=60`, {
method: "POST",
headers: { ...headers, "Idempotency-Key": crypto.randomUUID() },
body: JSON.stringify({ ...body, credits: quote.credits }),
}).then((res) => res.json());
while (generation.status === "processing") {
generation = await fetch(`${api}/generations/${generation.id}?wait=60`, { headers }).then((res) => res.json());
}
console.log(generation.output?.url ?? generation.error_code);import os, uuid, requests
API = "https://api.cut.pro/api/v1"
headers = {"X-Api-Key": os.environ["CUTPRO_API_KEY"]}
body = {
"model": "luma/ray-3.2",
"prompt": "a dog surfing at sunset",
"seconds": 5,
"resolution": "720p",
"aspect_ratio": "9:16",
}
quote = requests.post(f"{API}/generations/quote", json=body, headers=headers).json()
generation = requests.post(
f"{API}/generations",
params={"wait": 60},
json={**body, "credits": quote["credits"]},
headers={**headers, "Idempotency-Key": str(uuid.uuid4())},
).json()
while generation["status"] == "processing":
generation = requests.get(f"{API}/generations/{generation['id']}", params={"wait": 60}, headers=headers).json()
print(generation["output"]["url"] if generation["status"] == "ready" else generation["error_code"])Read the docsQuestions
API questions before your first call
- At 720p, each second costs $0.17 and a minute comes to $10.30 (R$34.45, 576 credits). Each generation runs 5 or 10 seconds.
- Create an account, make a key and send the request to the quote, which charges nothing. The smallest Luma Ray 3.2 generation costs 48 credits, more than the 15 free ones: use those to try a cheaper model from the catalog.
- First and last frame: two images become the start and the end of the video. From an image: the image you send becomes the first frame. Text only: the prompt describes everything.
- No. Buy a credit pack by card, or in reais with Pix from Brazil, and spend it on Luma Ray 3.2 and every other model with the same key.
- No. The Cut.Pro key calls Luma Ray 3.2 without a Luma account, with one balance for every model in the catalog.
- Yes. With a CPF or CNPJ and full address in your billing details, the nota fiscal is issued after each payment is confirmed.
Still missing one? Help center
Compare
Other models of the same kind
- Wan 3Alibaba · from $0.10 per secondSee price
- Kling O3 ProKling · from $0.25 per secondSee price
- Kling 3.0 ProKling · from $0.25 per secondSee price
- Kling 3.0 StandardKling · from $0.19 per secondSee price
- Seedance 2.0 FastByteDance · from $0.0706 per secondSee price
- Seedance 2.0ByteDance · from $0.24 per secondSee price
Generate with Luma Ray 3.2 today
Create a key, get a free quote and pay only for what you generate.
Create API key