Back to blog

Estimate AI Video Cost Before You Generate: A Credits Walkthrough

How Tinulo prices a generation job — duration, resolution, and model tier mapped to exact credit numbers — and how to use the quote-before-submit workflow so you never burn credits on a surprise.

Aug 21, 2026Adrian ValeAdrian Vale
Estimate AI Video Cost Before You Generate: A Credits Walkthrough

The worst workflow in AI video is the one where you find out what a clip cost after it renders. You write a prompt, pick a model, hit generate, and discover the number when your balance drops. At hosted-model prices — a 5-second Veo 3 clip runs 500 credits, five dollars — that surprise is expensive.

Tinulo works the other way: the composer shows you the credit cost before anything is queued, and the number you see is the number you are charged. This post is how that number is computed, with the actual figures, so you can estimate cost in your head before you even open the composer.

The one formula behind every quote

Every job is priced by the same function, whether you are looking at the quote or submitting for real:

cost = model rate × units × resolution multiplier × margin, rounded up to a whole credit.

One credit is one cent. Rounding always goes up, never down, so the display can never understate the charge. That is the whole formula — the rest is knowing the four inputs.

Input 1: the model rate

There are two pricing families, and the difference matters more than any other factor.

Local models run on our own GPU. MiniMax-H3 and LTX-2.3 currently cost $0.20 per second of video. That number is not the electricity — a clip draws about a cent of power. It is a queue-time floor: the 5090 serves one job at a time at roughly seven minutes per clip, so what you are really buying is the slot. Local models carry no separate hosted-provider margin, but their rate still reflects scarce GPU time.

Hosted models are resold from a provider at their published rate, times a 2.5 margin that absorbs payment processing, storage, egress, and the failed jobs we refund but still get billed for. Kling 2.5 costs us $0.07 per second; Veo 3 costs us $0.40 per second.

FLUX Schnell, the image model, sits in between: its queue-time floor is currently $0.04 per image, then the shared hosted-capable model margin produces 10 credits per image — even when a free user's copy happens to run locally. One model, one price, for everyone. Pricing by backend would mean two users seeing different numbers for the same request, which is exactly the drift the shared quote function exists to prevent.

Input 2: units

For video, units are seconds — 5 or 10, defaulting to 5 if unspecified. For images, one unit is one image. This is the linear term: double the duration, double the base cost.

Input 3: the resolution multiplier

Resolution scales video jobs only (an image's single unit already carries its full cost):

| Resolution | Multiplier | Notes | |---|---|---| | 480p | 0.8× | cheapest draft tier | | 768p HD | 1.0× | the default and local ceiling (1344×768) |

Legacy 720p jobs also resolve to 1344×768, exactly like 768p HD, so they now use the same 1.0× price. The composer offers one HD option rather than charging two prices for the same output. Anything above the local ceiling will only be sold once a job at that size is genuinely routed to a hosted provider.

Input 4: margin, already covered

2.5 on anything with a hosted backend, 1.0 on local-only models. It is one constant, so every hosted model reprices consistently instead of drifting apart.

The numbers, worked out

Putting it together for a 5-second HD clip at 1344×768:

| Model | Math | Cost | |---|---|---| | MiniMax-H3 or LTX-2.3 | $0.20 × 5 × 1.0 | 100 credits | | Kling 2.5 | $0.07 × 5 × 1.0 × 2.5 = $0.875 → round up | 88 credits | | Veo 3 | $0.40 × 5 × 1.0 × 2.5 | 500 credits |

Legacy 720p and public 768p HD requests carry the same price because they return the same frame. Drop to 480p and H3 is 80 credits. A 10-second H3 HD clip is 200 credits.

The rule of thumb this produces: a local 5-second HD clip costs about one dollar. 100 credits versus 500 for a hosted Veo 3 clip. The local rate is intentionally anchored to the scarce GPU slot, so a new account's 100-credit grant is roughly one default video rather than a batch of ten.

How to use this: the draft-up workflow

This is the workflow the pricing is designed around:

  1. Draft locally at 480p. An H3 test costs 80 credits. Iterate on the prompt — the five-part structure — until the motion is right.
  2. Render the winner at HD 1344×768. The 100-credit signup grant covers one complete 5-second HD result.
  3. Only go hosted when the concept is proven. If the shot genuinely needs Veo 3's ceiling, you are spending 500 credits on a prompt you have already watched work — not on a guess.

Against the free tier, the 60-credit monthly grant works as a top-up toward a full video, while the one-time 100-credit signup grant is enough for one default 5-second HD clip. The grant is deliberately sized around the first complete result: the product should prove the workflow without opening an unlimited GPU lane.

If you climb, the paid ladder improves strictly per credit — Creator is $12 for 1,400 monthly credits, Studio is $32 for 4,200 — and bought credit packs never expire, while monthly grants reset each billing month. Steady use belongs on a plan; an occasional burst belongs on a pack.

What happens to your balance during a job

One mechanical detail worth knowing: Tinulo holds credits when a job is accepted and settles when it finishes, rather than charging up front and refunding on failure. A hold keeps your available balance honest while the job is in flight, and a failed job releases the hold instead of routing money through a refund path. The number can only ever move in one direction you have already seen — the quote — and only when the job actually runs.

Sign in, open the composer, and the quote is there before the submit button is. That is the entire trick: there is no trick, just the same function called twice.