What Is Programmatic Video? A Developer's Explainer
Programmatic video means two unrelated things. For developers it means rendering a video file from JSON - one POST, no editor, from $0.10 a minute.
Phil Duong
Founder

Search Google for "programmatic video" and seven of the eight domains you get back are about buying advertising inventory. Add one word - "generation" - and all eight are about rendering video files with code. Same phrase, two industries, almost no overlap.
Both meanings are legitimate. They are also completely unrelated, and the collision is the single biggest source of confusion for a developer scoping this work. The advertising industry got there first and owns the phrase; the rendering industry got the qualifier.
This explainer covers the developer meaning: what programmatic video generation is, how a render request actually works, what a finished minute costs, and which parts break first in production. Every price and claim below is linked to a primary source or to a committed artifact in our own repository.
Key Takeaways
- "Programmatic video" means two unrelated things: automated ad-inventory buying, and rendering a video file from structured data. Developers want the second
- Programmatic video generation is deterministic assembly - same input, same output, every time. It is not AI video generation, which synthesises new footage from a prompt
- A render request is one authenticated POST carrying a template id and the values that change; the response is a job id, not a video
- One finished 1080p minute runs $0.10 to $1.38 across five vendors on entry paid tiers, an 8x spread driven entirely by how each one meters
- Short renders finish faster than the videos play: three variants of a 20-second vertical composition took 13, 14 and 19 seconds
- The first thing to break in production is not the API. It is a replacement value too long for the box it was designed into, and the render still reports success
What Is Programmatic Video?
What is programmatic video?
Programmatic video is the practice of producing a finished video file from structured data instead of from a timeline editor. You describe the video once - layers, text, media, positions, timing - and then produce as many variations as you have data for, by changing values rather than by editing.
The description usually travels as JSON. A renderer reads it, draws every frame, encodes the result, and hands back a file. No human opens an editing application at any point in that loop, which is the whole point: the work scales with your data rather than with your headcount.
This is also called programmatic video generation, programmatic video creation, or simply video automation. In a developer context those terms are interchangeable.
Why does searching "programmatic video" return advertising articles?
Because in advertising, "programmatic" has meant automated media buying for over a decade, and that industry is far larger and far older than video rendering APIs. Programmatic video advertising is real-time bidding for video ad slots: a demand-side platform buys impressions at auction, in milliseconds, without a human negotiating each placement.
The IAB, which sets the standards for that side of the business, defines the term plainly: "IAB defines programmatic very simply: the automated buying and selling of inventory" (IAB, 2016).
Even inside advertising the term is contested. The same document opens by noting that vendors "all tout programmatic video capabilities in a marketplace where there appears to be little consensus on what the term 'programmatic' even means." That was 2016. It did not get clearer.
We measured this rather than asserting it. On 2026-08-25 we ran both queries through a real Google search (headed Chrome, hl=en&gl=us&pws=0) and classified every domain that came back:
Exactly one domain appeared in both result sets. Everything else sat cleanly on one side or the other, which is the practical takeaway: if you are researching this category, the qualifier is not optional. Drop it and you will spend an afternoon reading about real-time bidding.
That is one search, from one location, on one day, and it is a spot check rather than a study. The method and the raw results are committed next to this post so the next person can re-run it instead of trusting the number.
Is programmatic video the same as AI video generation?
No. Programmatic video assembles footage you already have into a layout you already defined; AI video generation synthesises footage that did not previously exist. The difference that matters in production is determinism. Assembly gives you the same output every run. Generation gives you a different output every run, because a diffusion model is sampling.
| Programmatic video generation | AI video generation | Programmatic video advertising | |
|---|---|---|---|
| What it produces | A rendered file from your assets | New synthesised footage | A placed ad impression |
| Input | JSON, a template, variable values | A text prompt, sometimes a reference image | A budget, targeting rules, a creative |
| Output for identical input | Byte-comparable, every time | Different every time | n/a |
| Who buys it | Engineering and product teams | Creative teams | Media buyers |
| Typical unit price | Cents per minute | Dollars per clip | CPM |
| Best for | Many versions of a known design | Footage that does not exist yet | Distributing the finished video |
The three are complementary rather than competing. A realistic pipeline uses AI generation to produce a background clip, programmatic generation to assemble it into 40 localised variants, and programmatic advertising to distribute them. We cover the first two in depth in template-based video versus AI-generated video.
How Programmatic Video Generation Works
How does programmatic video generation actually work?
A renderer draws every frame of the video as an independent image, then encodes those images into a file. Almost every modern engine works this way, which is why video output is deterministic: frame 340 is a pure function of the composition and the number 340.
Remotion, the engine underneath Renderly, states the model directly: the idea is "to give you a frame number and a blank canvas, to which you can render anything you want using React" (Remotion). A video in that model is four properties - width, height, durationInFrames, and fps - plus a function that draws frame n.
That is the whole trick. Because a frame is a function of its index, a renderer can distribute the work: split the frame range across machines, render chunks in parallel, and concatenate. It is also why a render is a job rather than a request, and why every serious API in this category is asynchronous.
What does a programmatic video request look like?
One authenticated POST carrying a template identifier and the values that change. Everything about the design - fonts, positions, animation, timing - lives in the template. The request supplies only the variables:
curl -X POST https://renderly.video/api/v1/renders \
-H "Authorization: Bearer $RENDERLY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"projectId": "proj_9fa2c1",
"replacements": {
"headline": "48 hours only",
"discount": "30% off",
"hero_clip": "https://cdn.example.com/clips/autumn.mp4"
}
}'The response is a job, not a video:
{
"success": true,
"data": {
"jobId": "clx456def789",
"status": "PENDING",
"creditsUsed": 0.5
}
}This shape is close to universal across the category. Vendors differ on what the template is called and how variables bind to it. The loop does not vary: POST a description, receive a job id, collect the file later.
What makes a field "dynamic"?
A dynamic field is a layer explicitly marked as replaceable, which turns it into a named variable the API will accept. On Renderly, setting isDynamic: true on an overlay makes that layer's name a key in the replacements object. Which field gets swapped depends on the layer: text and shape layers swap content, video, image and audio layers swap src.
Everything not marked dynamic is fixed. That is what makes a template a contract rather than a suggestion. A caller can change the headline and the background clip. A caller cannot move the logo or restyle the brand colours. Dynamic video templates covers the binding model in detail.
How long does a render take?
For short template work, less time than the video runs. Rendering three variants of a 20-second vertical ad composition took 13, 14 and 19 seconds respectively, producing files of roughly 2.7 MB each. Those timings come from a committed artifact in our repository, not an estimate, and the prop files that produced them ship alongside the batch-render walkthrough.
Do not generalise that to every render. Duration scales with output resolution, the number of layers, and how much source footage has to be decoded and re-encoded. A minute of 4K with three video layers is a different job from a 20-second text-and-shape template, and the 4x credit multiplier at 4K exists because the underlying work really is roughly 4x.
What It Costs and When to Use It
How much does programmatic video cost?
Between $0.10 and $1.38 per finished 1080p minute on entry paid tiers, checked against each vendor's published rate card in August 2026. The 8x spread is not a quality difference. It is a metering difference:
| Vendor | Entry plan | 1080p per minute | Meters by |
|---|---|---|---|
| Renderly | Creator $29 / 300 credits | $0.10 | Minute x resolution multiplier |
| Shotstack | $39 / 200 minutes | $0.20 | Minute, any resolution |
| JSON2Video | Professional $49.95 / 12,000 credits | $0.25 | Second x resolution |
| Creatomate | Essential $54 / 2,000 credits | $0.84 | Pixel volume |
| Plainly | Starter $69 / 50 minutes | $1.38 | Second, any resolution |
A "credit" means four different things across those five rate cards, which is why comparing plan prices tells you almost nothing. The full per-minute pricing math shows every calculation so you can re-derive them when the rate cards move.
Two costs the headline rate hides. Resolution multipliers: Renderly charges 2x at 2K and 4x at 4K, and most pixel-metered vendors reach the same 4x at 4K by arithmetic. Generated audio: text-to-speech narration runs 0.5 credits per 1,000 characters, and transcribing that narration into word-synced captions runs 0.25 credits per caption-minute. That keeps a narrated, captioned video to one API call instead of three services.
Every vendor in the table has a free tier or trial. Renderly's is 5 credits, which is enough to render roughly ten 20-second clips before you decide anything.
Should I use an API or self-host a renderer?
Self-host when sustained render spend exceeds the cost of the engineer maintaining the pipeline, and use a hosted API before that point. The engines are open source - Remotion and FFmpeg are both freely available - so the licence is never what you are paying for.
What you are paying for is everything around the engine: a job queue, autoscaling workers, font and codec management, browser instances that leak memory under load, retry semantics, and storage with signed delivery URLs. That list is a quarter of engineering work to build and a permanent maintenance cost to keep.
The honest threshold is volume plus predictability. Steady, high, well-understood load favours self-hosting. Bursty or exploratory load favours a hosted API, because you pay nothing when nothing renders.
When is programmatic video the wrong choice?
When the video is a one-off, or when the design changes more often than the data does. Programmatic video pays back by amortising a design across many renders. If you need one video, an editor is faster and the result will be better.
It is also the wrong tool when every output needs genuinely different creative judgement - a documentary, a brand film, anything where the value is in the edit. Assembly is excellent at producing 500 correct variations of a known design and incapable of deciding what the design should be.
Running It in Production
How do I know when a render is finished?
Register a webhook endpoint and let the renderer call you; poll only as a reconciliation backstop. A render is a queued job, so there is no response to wait on. Polling a queue at any useful frequency burns rate limit for no benefit.
Register the endpoint once with POST /api/v1/webhooks and you get deliveries signed with a secret only you hold, plus a stable delivery id to key idempotency on. Per-render one-off callbacks exist and are convenient for a smoke test, but on Renderly they carry no delivery id and are signed with a constant that authenticates nothing.
One caveat that applies to most vendors, ours included: retry windows are short. Renderly retries 3 times over roughly 3 seconds, so a one-minute outage on your side loses the event permanently. A periodic status sweep over jobs you have not heard about is not optional. The webhook setup walkthrough has the full verification code.
What breaks first in production?
Not the API. The first failure is almost always a replacement value that does not fit the box it was designed into - and the render still reports success.
This is the failure mode that surprises teams, so it is worth being concrete. In our own batch-render test, a fixed-size 980x152px text layer that fit "OFF EVERYTHING" on one line received "OFF ORDERS OVER $150" instead. The longer string overflowed the box and lost its second line. The API returned COMPLETED, credits were charged, and the video was wrong.
| What breaks | What you see | What to do |
|---|---|---|
| Replacement text longer than its layer | Clipped or missing text, render reports success | Audit character counts against the template's fixed-size layers before rendering the batch |
width / height used to change aspect ratio | Canvas resized, composition not re-laid-out, content cut off | Build a separate template per aspect ratio |
| Webhook missed during a brief outage | Job completes, your system never learns | Reconciliation poll over jobs with no terminal status |
| Source media URL expired or private | Render fails or renders a blank layer | Use durable, publicly readable asset URLs |
The general lesson is that a video renderer has no opinion about whether the output looks right. It will faithfully produce a broken frame. Validate the inputs, and render one frame of a new variant before committing a batch of 500.
Do I need to be a developer to use programmatic video?
No, though someone has to design the template first. The render call has to come from somewhere, but that caller does not have to be your own code. No-code platforms issue it from a visual workflow, and MCP connectors let an AI assistant issue it conversationally on your behalf.
What no tier of abstraction removes is the design step. A template with no dynamic fields is just a video; the value appears only once someone has decided which fields vary and what they are called. That work is closer to design systems than to programming, but it does have to happen before the first API call.
Related Resources
- Video APIs in 2026: The Developer's Complete Guide - the full hub: architectures, vendor selection, and shipping your first render
- Video API Pricing Comparison 2026 - every per-minute calculation, re-derivable from published rate cards
- Template-Based Video vs AI-Generated Video - when to assemble and when to synthesise
- How to Embed Video Generation in Your SaaS Product - putting a render loop behind your own product's UI
- Remotion documentation - the frame-as-a-function model, from the engine's own docs
Ready to try one? A Renderly account starts with 5 credits, which is about ten 20-second renders - enough to find out whether your design survives contact with real data.
Frequently asked
What is programmatic video?
Is programmatic video the same as programmatic video advertising?
What is the difference between programmatic video and AI video generation?
How much does programmatic video cost?
How long does a programmatic video render take?
Do I need to be a developer to use programmatic video?
Related Articles

Video APIs in 2026: The Developer's Complete Guide
What a video API costs, how the three architectures differ, and how to ship your first render. One 1080p minute runs $0.10–$0.84 across four verified rate cards.
August 12, 2026

Template-Based Video vs AI-Generated Video: Which Should You Choose?
Template video vs AI video in 2026: costs, brand safety, and a decision framework for picking the right approach at scale. Per-render math included.
April 16, 2026

Video API Pricing Comparison 2026: The Real Cost Per Video
Five video APIs, every rate card re-checked in August 2026. One finished 1080p minute costs $0.10 to $1.38 depending on who you buy it from — and the credit math hides most of it.
August 14, 2026

How to Embed Video Generation in Your SaaS Product
Wire a video API into your SaaS as a customer-facing feature. Multi-tenancy, quota metering, webhook routing, and the async UX — with working code. A 30s render costs $0.05.
August 13, 2026

Dynamic Video Templates: Variable-Based Video Creation
91% of businesses use video and 82% report good ROI (Wyzowl 2026). Dynamic video templates let you build one design and render thousands of unique videos.
July 16, 2026