REST API · Video · Paid plan

Cheapest I2V API — Image-to-Video

The cheapest I2V API for developers: POST any photo and a motion prompt, get back a 5-second 720p MP4. One HTTP call. $0.20 per video (200 credits) — lower than Runway, Pika, and Kaiber per generated clip. Paid plans start at $10 for 10,000 credits.

$0.20 / 5-second MP4 720p output Identity-preserving Paid plan required Auto-refund on failure SOC2-aligned infra
Start — plans from $10 Quick start See pricing API docs

Why PixelAPI is the cheapest I2V API

Most image-to-video APIs are priced as consumer subscription products, not developer tools. Runway and Pika bundle credits into monthly tiers optimised for their web editors — not for API throughput. PixelAPI is priced purely on per-call economics: 200 credits = $0.20 per 5-second clip at the $10/10K starter rate, with no monthly seat fee. At scale (Scale plan, 100K+ credits), the per-credit cost drops further. No hidden video-specific surcharges, no minimum monthly commitment, no watermarks.

Quick start — cheapest I2V API in one call

Sign up, purchase a plan, and POST your image. The endpoint returns a generation_id; poll until status=completed, then download the 5-second MP4 from output_url.

# Step 1 — submit image + prompt (multipart form)
curl -X POST https://api.pixelapi.dev/v1/seedance/generate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "image=@photo.jpg" \
  -F "prompt=gentle breeze, natural movement" \
  -F "resolution=720p" \
  -F "camera_fixed=true"
# Response: {"generation_id": "uuid", "status": "processing", "estimated_seconds": 120, ...}

# Step 2 — poll until completed
curl https://api.pixelapi.dev/v1/seedance/UUID \
  -H "Authorization: Bearer YOUR_API_KEY"
# Response: {"status": "completed", "output_url": "https://..."}
pip install pixelapi
---
from pixelapi import PixelAPI
import time

client = PixelAPI(api_key="YOUR_API_KEY")

# Submit image-to-video job
result = client.image_to_video(
    image="photo.jpg",
    prompt="gentle breeze, natural movement",
    resolution="720p",
    camera_fixed=True
)

# Poll for completion
while result.status != "completed":
    time.sleep(10)
    result = result.refresh()

result.save("output.mp4")  # 5-second 720p MP4
npm install pixelapi
---
import { PixelAPI } from "pixelapi";
import { writeFileSync } from "fs";

const client = new PixelAPI({ apiKey: process.env.PIXELAPI_KEY });

const job = await client.imageToVideo({
  image: "./photo.jpg",
  prompt: "gentle breeze, natural movement",
  resolution: "720p",
  cameraFixed: true,
});

const result = await job.waitForCompletion(); // auto-polls
await result.save("output.mp4"); // 5-second 720p MP4
composer require pixelapi/pixelapi
---
<?php
use PixelAPI\Client;

$client = new Client(getenv("PIXELAPI_KEY"));

$job = $client->imageToVideo([
    "image"        => "photo.jpg",
    "prompt"       => "gentle breeze, natural movement",
    "resolution"   => "720p",
    "camera_fixed" => true,
]);

$result = $job->waitForCompletion();
file_put_contents("output.mp4", $result->getBody());
gem install pixelapi
---
require "pixelapi"

client = PixelAPI::Client.new(api_key: ENV["PIXELAPI_KEY"])

job = client.image_to_video(
  image:        "photo.jpg",
  prompt:       "gentle breeze, natural movement",
  resolution:   "720p",
  camera_fixed: true
)

result = job.wait_for_completion
File.binwrite("output.mp4", result.body)
go get github.com/pixelapi/pixelapi-go
---
import "github.com/pixelapi/pixelapi-go"

client := pixelapi.New("YOUR_API_KEY")
job, err := client.ImageToVideo(pixelapi.I2VParams{
    Image:       "photo.jpg",
    Prompt:      "gentle breeze, natural movement",
    Resolution:  "720p",
    CameraFixed: true,
})
if err != nil { panic(err) }

result, err := job.WaitForCompletion()
if err != nil { panic(err) }
result.Save("output.mp4")

Pricing — cheapest I2V API vs Runway, Pika, Kaiber

ProviderPlan requiredPer 5-second clipOutput
PixelAPI Paid ($10/mo starter) $0.20 720p MP4
RunwayStandard+ ($12/mo)see runway.com/pricingMP4
PikaCreator+ ($8/mo)see pika.art/pricingMP4
KaiberPaid tiersee kaiber.ai/pricingMP4

Rival per-clip pricing was not publicly verifiable at time of writing (October 2026) — see each provider's pricing page for current rates. PixelAPI pricing: 200 credits × $0.001/credit = $0.20 per 5-second clip at Starter plan rates.

What you get back

5-second 720p MP4

The completed job returns a direct download URL (output_url) pointing to your rendered MP4. 720p resolution, H.264 encoded, ready for web, mobile, and social media publishing.

Natural in-scene motion

With camera_fixed=true (default), the camera holds still and only scene elements animate — hair moves, water ripples, leaves sway. No unwanted camera drift or zoom artifacts.

Identity-preserved output

When a portrait or product photo is supplied, the pipeline locks face, outfit, and body shape from the source image. Useful for social content, product demos, and marketing without re-shooting.

Prompt-controlled motion

Describe the movement you want in natural language — "slow pan right", "fire flickering", "crowd cheering". The prompt steers both the type and intensity of motion in the output clip.

API reference — key parameters

ParameterTypeDefaultNotes
imagefile (form)—Required for I2V. JPEG or PNG input.
promptstring—Required. 1–2000 chars. Describe desired motion.
resolutionstring720p720p only for I2V (1080p is coerced to 720p when image is provided).
durationint5Currently fixed at 5 seconds.
camera_fixedbooltrueLock camera for natural subject motion. Set false for dynamic camera movement.

Common workflows

The cheapest I2V API is used in production for these creative and marketing workflows:

Social media content

Animate product photos into 5-second clips for Instagram Reels, TikTok, and YouTube Shorts.

Marketing agency

Bulk-animate client product shots for campaign assets at a fraction of video-shoot cost.

AI-generated campaigns

Chain image generation + I2V to go from text brief to animated social asset in seconds.

E-commerce listings

Bring product photos to life in marketplace listings to improve click-through rates.

Marketplace sellers

Automated video thumbnails for catalogue listings — one API call per image at $0.20.

Batch creative pipelines

Schedule overnight I2V jobs across an entire photo catalogue using the generation status endpoint.

More use-case guides: all industries →

Integrations & SDKs

Shopify

Animate product images on upload — webhook-triggered, zero manual effort.

Zapier

Connect any photo source to I2V generation with a no-code Zap.

Make.com

Drag-and-drop I2V in Make scenarios — chain with image editing and delivery.

Webflow

CMS-triggered video generation for Webflow product detail pages.

Python SDK

pip install pixelapi — auto-polling, retry-on-429, binary MP4 return.

Node.js SDK

npm install pixelapi — Promise-based, streams the MP4 directly to disk.

Comparison vs alternatives

vs Runway

Runway bundles credits into subscription tiers aimed at editors, not API developers. PixelAPI charges per-call with no monthly seat fee.

vs Pika

Pika's top-up credits don't transfer to their API. PixelAPI uses one credit pool across web and API, with straightforward per-call billing.

vs Kaiber

Kaiber focuses on the consumer editing experience. PixelAPI is built for programmatic generation — REST endpoints, SDK support, and SLA-backed uptime.

I2V API overview

Full documentation for all image-to-video parameters, status polling, and batch workflows.

Rate limits & error handling

60 requests/minute on Starter, 120 on Pro, and 300 on Scale. Parallel concurrent video jobs: 10 / 20 / 50 respectively (see parallel processing docs). Exceeding the rate limit returns HTTP 429 with a Retry-After header. Recommended: exponential backoff starting at 2s, doubling on each retry up to 30s. The Python and Node SDKs handle this automatically.

# Python SDK — auto-retries 429 with exponential backoff
from pixelapi import PixelAPI
client = PixelAPI(api_key="...", max_retries=4)
job = client.image_to_video(image="photo.jpg", prompt="gentle breeze")
result = job.wait_for_completion()  # auto-polls; auto-retries on 429
result.save("output.mp4")

Video jobs that fail are auto-detected and auto-refunded — you are never charged for a job that does not produce a downloadable MP4. The status=failed response includes an error_message with the reason.

Frequently asked questions

What is the cheapest I2V API available?

PixelAPI charges $0.20 per 5-second 720p MP4 (200 credits at $0.001/credit). Runway and Pika price image-to-video through subscription credit bundles aimed at consumer editors — direct API cost comparison depends on usage volume and plan tier. PixelAPI's per-call price is fixed regardless of plan.

How do I call the I2V API?

POST a multipart/form-data request to https://api.pixelapi.dev/v1/seedance/generate with the image field containing your photo file and prompt describing the desired motion. Poll GET /v1/seedance/{generation_id} until status=completed, then download the MP4 from output_url. The Quick Start above has code in 6 languages.

What image formats are accepted?

JPEG and PNG. The API normalizes the input to RGB PNG internally. RGBA/transparent PNG inputs are flattened against a white background before processing.

What is the output format?

A 5-second 720p H.264 MP4 video. The output_url field in the completed status response points to the downloadable file. There is currently no other output resolution or container format for I2V.

Is the camera fixed or does it move?

Default is camera_fixed=true — the camera stays still and only scene content animates. Pass camera_fixed=false to allow the pipeline to add camera movement. For product and portrait shots, fixed camera is almost always the right choice.

Does the I2V API preserve faces and identity?

Yes. When an image is provided, an identity-preservation instruction is applied automatically: the pipeline keeps the exact face, hairstyle, skin tone, body shape, and outfit from the input image. No identity swap, no added people, no outfit replacement.

How long does a generation take?

Typically 60–180 seconds for a 5-second 720p clip. The submission response includes an estimated_seconds field. Poll the status endpoint every 10–15 seconds to avoid unnecessary requests.

Is the I2V API available on the free plan?

No. Video generation requires a paid PixelAPI plan. Free trial credits cover image tools; video generation is a premium feature. Paid plans start at $10 for 10,000 credits — enough for 50 generated videos.

What rate limits apply?

60 requests/minute on Starter, 120 on Pro, 300 on Scale. Concurrent parallel video jobs: 10 / 20 / 50. Higher limits are available for batch pipelines — contact support@pixelapi.dev with your expected volume.

What happens if a video generation fails?

Credits are automatically refunded for failed jobs — you are never charged for a clip that doesn't complete. Check the error_message in the status response for the specific failure reason.

Can I get a GST invoice?

Yes. PixelAPI is a registered Indian business and issues GST invoices — 18% IGST for international clients, CGST/SGST for domestic. Invoice download is built into the dashboard.

Start — plans from $10 Read full API docs Compare all plans