Generate videosEnhance videosUpscale images

Magnific Video Upscaler API: Pricing and How It Works

Frame by frame billing makes the Magnific video upscaler API cheap for short clips and costly at scale. See the per-frame rates by resolution, how tasks, webhooks, and parameters work, what the rate limits mean for batches, and a no-code option for one-off clips.

Magnific Video Upscaler API: Pricing and How It Works
Cristian Da Conceicao
Founder of Picasso IA

Upscaling a video is expensive in a way that image upscaling never is. A 60-second clip at 24 frames per second is 1,440 separate images, and every one of them gets billed. That single fact explains almost everything about how the Magnific video upscaler API is priced, and why a quick test on a short clip looks cheap while a big batch job does not. This article walks through how the API works, what each parameter does to your footage, what the per-frame rates add up to, and what to use when an API integration is more work than the job deserves.

What the Magnific Video Upscaler Does

Magnific began as a Spanish AI image upscaler that became popular for adding invented detail to soft, low-resolution pictures. Freepik acquired it in 2024, and the company now runs its AI tools under the Magnific name, with developer docs at docs.magnific.com. The video upscaler applies the same idea to moving footage: you send a clip, pick a target resolution up to 4K, and get back a sharper file with reconstructed detail.

Colorist comparing a soft and a sharp version of the same seaside street clip on two monitors

This is a hosted, asynchronous service. You never run a model yourself. You submit a task, wait, and collect a URL. That makes it easy to wire into an app, a render queue, or an automation tool, and it also means every quality decision happens through a handful of numeric parameters.

Creative vs Precision Modes

Magnific exposes two flavors of video upscaling, and picking the right one matters more than any slider.

ModeEndpointBest forSignature control
CreativePOST /v1/ai/video-upscalerSoft, noisy, or heavily compressed clips that need new detailcreativity (0 to 100), flavor
Creative turboPOST /v1/ai/video-upscaler/turboFaster turnaround on the same kind of footageSame as creative
PrecisionPOST /v1/ai/video-upscaler-precisionFootage that must stay faithful to the sourcestrength (0 to 100, default 60)

The creative upscaler is allowed to invent texture, which helps when the source is mushy. The precision upscaler blends the result back toward the original through its strength setting, so faces, logos, and fine patterns stay closer to what was filmed. The overview page also lists a separate turbo route for faster processing, and rate limits are shared across the standard and turbo endpoints.

Who Actually Needs It

Product designer and colleague reviewing footage on a large monitor in a bright office

  • Restoration studios bringing old tape and early phone clips up to modern screens
  • Product teams that want 4K demo videos from 1080p screen recordings
  • Developers building upscaling into an app that reacts to webhooks
  • Agencies pushing dozens of social clips through the same settings every week

If you fit none of those groups, skip ahead to the section on when the API is overkill.

How the API Works Step by Step

The whole flow is three moves: create a task, wait for it, fetch the result. Nothing is streamed, and nothing blocks while the upscale runs.

Developer typing at a cafe window table with a blurred code editor on a laptop

Authentication and the First Request

Every call carries a single API credential in a custom request header. The exact header name is printed at the top of each endpoint page in the docs, so copy it from there instead of guessing. The only required field in the body is video, a publicly accessible HTTPS URL that points straight to the file.

{
  "video": "https://example.com/clips/harbour-720p.mp4",
  "resolution": "4k",
  "creativity": 20,
  "sharpen": 15,
  "smart_grain": 5,
  "flavor": "natural",
  "fps_boost": false,
  "output_format": "h264",
  "webhook_url": "https://example.com/hooks/upscale-finished"
}

A successful call returns 200 with a small envelope:

{
  "data": {
    "task_id": "00000000-0000-0000-0000-000000000000",
    "status": "CREATED",
    "generated": []
  }
}

Failures come back as 400 for validation problems, 401 for a missing or invalid credential, and 500 or 503 when the service itself is struggling.

Polling and Webhooks

You have two ways to know that a task is done. Poll GET /v1/ai/video-upscaler/{task-id} until the status changes, or pass a webhook_url and let Magnific call you. A task moves from CREATED to IN_PROGRESS and ends in FAILED or a final success state, at which point the generated array holds the output URLs. A GET on /v1/ai/video-upscaler lists your tasks, which is handy after a crash, when you need to find tasks you lost track of.

💡 Tip: Save the task_id the moment you get it, and copy finished files to your own storage right away. Treat returned URLs as temporary until the docs promise otherwise.

For a handful of clips, polling with a growing delay is fine. For batches, webhooks save you a loop and a lot of wasted requests.

Input Rules That Trip People Up

  • The URL must be HTTPS and public. If you use a presigned link, make sure it stays valid long enough for Magnific to fetch the file.
  • The docs do not publish limits for duration, file size, or container format, so test your longest and heaviest clip before building a pipeline around the service.
  • A badly compressed source still limits the result. Upscaling can invent texture, but it cannot bring back a face that the encoder already smeared away.

Every Parameter in Plain English

Nine settings shape the output. Most of them default to zero or off, which means a bare request gives a clean, conservative result at 2K.

Hand turning a brushed aluminium dial on a color grading panel

ParameterRangeDefaultEffect
resolution720p, 1k, 2k, 4k2kOutput size, and the biggest price lever
creativity0 to 1000How much new detail the model may invent (creative modes)
strength0 to 10060How strongly the upscale is applied (precision mode)
sharpen0 to 1000Edge definition and clarity
smart_grain0 to 1000Film grain added to the result
flavorvivid, naturalvividOverall processing style (creative modes)
fps_boosttrue or falsefalseRaises the frame rate of the output
output_formath264, prores_422_hqh264MP4 delivery file or ProRes 422 HQ
webhook_urlHTTPS URLnoneCallback for task updates

Creativity, Sharpen and Smart Grain

Creativity is the dial that separates a faithful upscale from a repainted one. At 0 the model stays cautious. Higher values add texture, which flatters landscapes and fabric but can change faces. A reasonable starting point is somewhere between 0 and 25 for people, and higher for scenery or old footage with little detail left.

Sharpen should stay low. Pushed too far it produces halos around edges that look worse than the blur it replaced. Smart grain adds film grain on top, and a small amount (say 5 to 10) is a cheap way to hide the plastic look that very clean upscales sometimes have.

Flavor and FPS Boost

Flavor has two options. Treat vivid as the punchier look and natural as the restrained one, then run both on the same three-second clip before you commit a whole batch.

FPS boost raises the frame rate for smoother motion, and it carries a billing consequence explained below. On the precision endpoint the docs state that strength is disregarded when fps_boost is on, and the full upscale is applied.

H.264 or ProRes Output

The default h264 returns a regular MP4. Choose prores_422_hq when the file is headed for a grading or editing timeline: you receive an H.264 preview plus a ProRes 422 HQ .mov file. ProRes files are large, so budget storage and transfer time before you switch it on for a long clip.

The Real Cost of Upscaling

Magnific's docs describe frame-based pricing that varies with output resolution, and they send you to the pricing page for the numbers. The clearest public per-frame rates come from Runway's API pricing page, which lists the Magnific creative video upscaler. Use them as a reference point and confirm against Magnific's own page before you commit a budget.

Television showing a sharp aerial mountain lake view in a cozy living room

Frame-Based Pricing Math

The formula is simple: cost = frames x rate, where frames equal frames per second times duration in seconds.

Output resolutionPrice per output frame
720p and 1K$0.007
2K$0.009
4K$0.012

Runway converts dollars to credits at one cent per credit and rounds up, with a minimum of one credit per generation. Notice the shape of the curve: 4K costs about 33% more per frame than 2K and about 71% more than 720p. The jump from 720p to 4K is not dramatic per frame, but across thousands of frames it adds up.

Flat lay of a calculator, notepad, clapperboard, and smartphone on an oak desk

Three Worked Examples

ClipFrames720p2K4K
10 seconds at 30 fps300$2.10$2.70$3.60
60 seconds at 24 fps1,440$10.08$12.96$17.28
5 minutes at 30 fps9,000$63.00$81.00$108.00

Scale that to a batch: 100 clips of 15 seconds at 30 fps is 45,000 frames, which comes to $405 at 2K or $540 at 4K. That is the number to check before you automate anything.

Hidden Multipliers to Watch

  • FPS boost changes the output frame count, so the bill follows the new count rather than your input.
  • On the precision endpoint, the docs say B2B accounts see the billed frame count in an X-Frames-Billed response header, with a 12-frame minimum and a 1.60x multiplier when fps_boost is active.
  • The default resolution is 2K, so a request without resolution is billed at the 2K rate even if you only needed 720p.

💡 Tip: Run every new source through a 3 to 5 second test clip at the resolution you intend to ship. It costs pennies and shows you the real look before the real bill.

Rate Limits and Production Planning

Throughput is the second constraint after price. According to the docs, the free tier allows 10 requests per day and Tier 1 allows 125 requests per day, shared across both the standard and turbo endpoints. Anything higher is arranged with Magnific directly.

Aisle of grey server cabinets in an ordinary data centre

Those numbers shape your plan more than the price does. At Tier 1, a 100-clip batch fits inside one day, while 500 clips need four days unless your limit goes up. A sturdy pipeline usually does five things:

  1. Stores every task_id in a database before doing anything else
  2. Submits clips up to the daily request limit and queues the rest
  3. Uses webhooks for results, with a slow polling job as a safety net
  4. Retries FAILED tasks with a delay, and caps the retries
  5. Logs billed frames per task so invoices can be reconciled

When the API Is Overkill

The API is the right tool when upscaling is a feature of your product or a repeating job. It is the wrong tool for one clip on a Tuesday afternoon.

Elderly hands holding a VHS family tape beside a shelf of cassettes and a laptop

SituationAPIBrowser tool
One family video to restoreNeeds a script, a public URL, and pollingUpload, click, download
500 product clips every monthBuilt for thisToo much manual clicking
Non-developer on the teamHardEasy
Custom processing inside an appBuilt for thisNot an option

Setup cost is the hidden line item. Hosting the source at a public HTTPS address, handling failures, and storing results can take longer than the upscale itself on a small job.

How to Use Video Upscale on PicassoIA

For single clips, Video Upscale on PicassoIA runs in the browser with no credentials, no public hosting, and no polling. It takes three inputs: video (required), target_resolution (720p, 1080p, or 4k, default 4k), and target_fps (15 to 120, default 30).

Smiling creator at a home studio desk looking at a sharp video frame on a laptop

Step by Step Settings

  1. Open the Video Upscale model page and upload your clip.
  2. Set target_resolution. Pick 4k for archive footage and large screens, or 1080p when the clip is headed for social feeds.
  3. Set target_fps. Keep it equal to the source for a pure sharpness upgrade, or raise 30 fps footage to 60 for smoother action.
  4. Run the model and download the watermark-free result.
  5. Compare one frame of the output against the original at full screen before you publish.

The model rebuilds fine detail instead of stretching pixels and interpolates frames in the same pass, so one run handles both resolution and motion smoothness.

Runway Upscale v1 for Short Clips

Upscale v1 from Runway takes a single input and magnifies the clip 4x, up to 4K. Its limits are clear: videos must be shorter than 40 seconds, under 4096 pixels per side, and under 16 MB. That fits reels, promos, and demos well, including clips generated with Veo 3.1 or Seedance 2.0. For still frames, Topaz Image Upscale handles enlargements up to 6x.

OptionInput styleResolution controlBest fit
Magnific APIPublic HTTPS URL, async task720p to 4KPipelines and batches
Video UpscaleBrowser upload720p, 1080p, 4K plus fpsOne-off clips and smooth motion
Upscale v1Browser upload4x up to 4KShort clips under 40 seconds

These are different engines from Magnific, so results will not match frame for frame. Run the same clip through each and judge with your own eyes.

Try It on Your Own Footage

The best test costs nothing: take the softest clip on your drive, run it through Video Upscale on Picasso IA at 4k, and put the result next to the original on a full-screen player. If the difference convinces you, make it a habit. If you need the clip in an app pipeline, you will know exactly what to ask the API for.

Browse the full catalog at picassoia.com/en/all-models, try both upscalers on a clip that matters to you, and see how much of the old footage you thought was lost can come back.

Share this article