Luma API Pricing: Ray 3.2 API Docs and Cost Per Clip
Ray 3.2 costs $0.30 for a 5-second 720p clip on the Luma API and $1.20 at 1080p. See every SDR, HDR and EXR rate, the request format, rate limits, 429 errors and ways to cut the bill, plus a no-code route on PicassoIA.
A single 5-second 720p clip from Ray 3.2 costs $0.30 on the Luma API. Push the same clip to 1080p and the price jumps to $1.20. Add HDR and EXR export at 1080p and one five-second shot costs $3.60. Those numbers come straight from Luma's own Pricing page, and they decide whether a 200-clip project costs the price of a lunch or the price of a laptop. This article lays out every Ray 3.2 rate, walks through the API docs so you can send a first request, flags the parameter combinations the API rejects, and shows how to keep the invoice small. If you would rather skip the code entirely, there is also a section on running Ray 3.2 on PicassoIA from a browser.
💡 Luma states that video rates are subject to change ahead of general availability. Re-check the Pricing page at docs.agents.lumalabs.ai before you lock a budget.
Ray 3.2 API Pricing at a Glance
Luma bills Ray 3.2 by clip length and output quality, not by token count. Every generation lands in a fixed 5-second or 10-second block, and the price climbs with resolution and dynamic range. Text-to-video and image-to-video share one rate card, so a clip animated from a photo costs the same as one written from a prompt.
Standard Dynamic Range Rates
Standard dynamic range (SDR) is the default output, and it is the rate most projects pay.
Resolution
5-second clip
10-second clip
Best for
360p (draft)
$0.06
$0.18
Testing prompts
540p
$0.15
$0.45
Quick previews
720p
$0.30
$0.90
Social posts and web
1080p
$1.20
$3.60
Final delivery
The jump from 720p to 1080p deserves a second look. A 1080p frame holds 2.25 times the pixels of a 720p frame, yet the price rises 4 times. Unless the destination really shows 1080p, the cheaper tier is the smarter default.
HDR and EXR Export Rates
HDR is limited to 5-second clips at 720p or 1080p. EXR export, the raw colour file for professional grading, sits on top of HDR.
Mode
720p
1080p
SDR
$0.30
$1.20
HDR
$0.60
$2.40
HDR + EXR export
$0.90
$3.60
HDR doubles the SDR price, and adding EXR triples it. If the clip is headed to Instagram or a landing page, nothing in the viewing chain will show the extra range, so skip HDR and EXR and pay a third.
Reframe and Extend Rates
Two other operations have their own rates, both for standard dynamic range only.
Reframe (change the aspect ratio of an existing video) is billed per second: $0.03 at 360p, $0.06 at 540p, $0.12 at 720p and $0.36 at 1080p.
Extend from a single anchor frame bills as one 5-second block: $0.15 at 540p, $0.30 at 720p and $1.20 at 1080p.
Video edit has separate SDR, HDR and HDR + EXR rates with 5-second and 10-second tiers, all with higher base rates than plain generation. Read the exact edit numbers on the Pricing page.
Here is a number worth remembering. Reframing a 5-second 720p clip costs 5 × $0.12 = $0.60. Generating a fresh clip natively in 9:16 costs $0.30. If you only need the vertical version and not the exact original shot, generate it at the right ratio from the start.
What One Clip Really Costs
Cost Per Second by Tier
Dividing each block by its length gives a number that is easier to compare against other video tools.
Tier
Block price
Per second
360p draft
$0.06
$0.012
540p
$0.15
$0.030
720p
$0.30
$0.060
1080p
$1.20
$0.240
720p HDR
$0.60
$0.120
1080p HDR
$2.40
$0.480
1080p HDR + EXR
$3.60
$0.720
One minute of finished footage built from twelve 5-second clips costs $3.60 at 720p and $14.40 at 1080p. That assumes you keep every take, which nobody does.
Two 5-Second Clips Beat One 10
A 10-second clip at 720p costs $0.90. Two 5-second clips cost $0.60. That makes the longer block 50% more expensive per second, and the same pattern holds at every resolution. At 1080p the gap is $3.60 against $2.40.
The 10-second option also comes with restrictions. The API rejects 10s together with HDR, a start frame, an end frame or loop. So the cheaper route is often the more flexible one too. Generate the first clip, grab its last frame, and pass that image as the start frame of the second clip so the motion continues without a visible jump.
Budget Examples
Project
Clips
Settings
Cost
Social test batch
40
540p, 5s
$6.00
Weekly channel
100
720p, 5s
$30.00
Product launch reel
60
1080p, 5s
$72.00
Grading pipeline
25
1080p HDR + EXR, 5s
$90.00
Now add the part most budgets forget. If you keep one take in three, multiply by three. The weekly channel with 100 keepers becomes 300 generations, or $90 instead of $30.
Build that multiplier into every estimate you send to a client. A flat per-clip price looks cheap until a director asks for the fourth variation of the same shot. Track accepted clips against generated clips for the first week, and you get a real retry rate. That one figure makes every later forecast more honest.
Ray 3.2 API Docs Walkthrough
Luma publishes Ray 3.2 through its Agents API documentation. Three things matter before your first call: the base URL, the authentication header and the shape of the request.
Base URL and Authentication
The base URL is https://agents.lumalabs.ai/v1. Authentication uses a bearer token in the Authorization header. Store the token in an environment variable and never commit it to a repository. Official SDKs exist for Python and TypeScript (both named luma-agents) and for Go (luma-agents-go), plus a command-line tool.
The Generation Request
Everything starts with POST /v1/generations. Three fields are required:
model: set to "ray-3.2"
type: set to "video"
prompt: 1 to 6,000 characters describing subject, motion, camera movement, lighting and pacing
Optional fields tune the output. aspect_ratio accepts 9:16, 3:4, 1:1, 4:3, 16:9 or 21:9. The video object takes resolution (360p, 540p, 720p by default, or 1080p), duration ("5s" by default or "10s"), plus hdr and loop booleans.
That request bills at $0.30: 720p, 5 seconds, standard dynamic range.
Polling the Job Status
A successful submit returns HTTP 201 with the state queued. Poll GET /v1/generations/{id} until the job reaches a final state, either success or failed. On success the output includes a presigned URL to the MP4. Presigned links are temporary by design, so copy the file to your own storage right away.
Plan for roughly 80 to 200 seconds per clip. The example runs on PicassoIA's Ray 3.2 page took between 79 and 204 seconds, so polling every 5 to 10 seconds is plenty.
Parameter Rules That Trigger Errors
A rejected request wastes a round trip, and a misunderstood rule wastes an afternoon. Luma's docs spell out which options cannot be combined.
HDR, Loop and 10s Conflicts
Option
Rejected together with
10s duration
HDR, start frame, end frame, loop
HDR
360p, 540p, 10s, loop
Loop
10s, HDR, end frame, multi-frame control
360p or 540p
HDR
Validate these rules in your own code before calling the API. A small function that checks the combination takes ten minutes to write and removes a whole class of failed jobs.
Rate Limits and 429 Errors
Two independent limits apply to POST /v1/generations:
Requests per minute (RPM): the maximum number of requests in a 60-second sliding window.
Concurrent jobs: the maximum number of active generations at any moment.
Luma does not publish exact numbers. Your limits depend on your plan and appear in the Luma platform dashboard. Both limits return HTTP 429, and the response body tells them apart.
Size a semaphore in your worker to the concurrency limit shown in your dashboard, and honour Retry-After instead of retrying on a fixed timer. Spread a large batch across the minute instead of firing every request at once, and the RPM window stops being a problem.
Ways to Keep the Bill Low
Draft at 360p First
The 360p draft tier costs $0.06, one fifth of a 720p clip and one twentieth of a 1080p clip. Test every prompt there, then promote only the winners.
Take 25 shots you need at 1080p. Rendering all 25 straight at 1080p costs $30.00. Rendering 20 drafts ($1.20) and promoting 5 winners to 1080p ($6.00) costs $7.20, a saving of 76%.
One caution: a draft is a separate generation, so treat it as a test of the prompt and the motion idea, not as a pixel-exact preview. Check whether a re-render keeps the same shot before you plan a pipeline around it.
💡 Put a hard retry limit in your worker: three attempts, then stop and log the prompt. A loop that resubmits on every failure turns a $0.30 mistake into a real invoice.
Match Resolution to Destination
Destination
Setting
Cost per 5s
Vertical social story
720p, 9:16
$0.30
Website hero background
720p, loop
$0.30
YouTube B-roll
1080p, 16:9
$1.20
Colour grading pipeline
1080p HDR + EXR
$3.60
Set aspect_ratio at generation time instead of reframing later, and use the loop flag for background clips instead of stitching a loop by hand.
Ray 3.2 Without Writing Code
The API suits a product or a scheduled pipeline. For a one-off project, a browser interface removes the token handling, the polling loop and the rate-limit code. PicassoIA hosts Ray 3.2, so you pick settings from a form and download the MP4.
PicassoIA also has its own Replicate-style API. At the time of writing it exposes four PicassoIA models, including PicassoIA Video and Seedance 2.5 Lite. Ray 3.2 is not on that list, so it stays in the web interface.
What PicassoIA Gives You
Control
Options
Resolution
540p, 720p, 1080p
Duration
5s or 10s
Aspect ratio
9:16, 3:4, 1:1, 4:3, 16:9, 21:9
HDR
720p or 1080p, 5s only
EXR export
Requires HDR
Loop
Not with 10s, HDR or an end image
Start image and end image
5s only
The same combination rules as Luma's API apply. One difference: the PicassoIA form does not list the 360p draft tier. Check your plan on PicassoIA for how Ray 3.2 generations are counted.
Write a prompt that names the subject, the motion, the camera movement, the lighting and the pacing.
Start at 720p and 5 seconds while you test.
Choose an aspect ratio, or upload a start image to animate a photo.
Switch on HDR or loop only if the rules above allow it.
Generate, review the clip, adjust the prompt and run again. Once the motion looks right, re-render at 1080p.
A prompt that works well on the model page: "Slow cinematic dolly shot through a misty greenhouse at sunrise, golden sun rays filtering through condensation on vintage glass panels, lush ferns and orchids, anamorphic lens flares."
Cheaper and Free Alternatives
Ray 3.2 is not the only way to get cinematic motion, and at $1.20 per 1080p shot it is not always the cheapest. These PicassoIA models handle the same text-to-video and image-to-video jobs:
A practical split: prototype on a free model, then spend Ray 3.2 credits on the shots that need HDR, EXR or the 21:9 frame. PicassoIA also lists video upscaling and super resolution categories on its all models page. It is worth testing whether a 720p Ray 3.2 clip, upscaled, meets your quality bar before paying the 4× rate for native 1080p.
Run Your First Clip Today
The numbers are simple once they sit side by side. 720p costs $0.30, 1080p costs $1.20, HDR doubles the price, EXR triples it, and two 5-second clips beat one 10-second clip. Draft at 360p, generate at the aspect ratio you need and cap your retries.