Poof Logo
FeaturesPricingDocsPlayground
Log inSign up

New

AI video background remover API

Upload a clip, get it back with the background gone. Choose a video with a transparent background, a green-screen video or a black-and-white mask, with the sound untouched. Works on people, products, animals and objects, no green screen needed.

Start for Free View API Docs
Transparent WebM & MOV No green screen needed Audio preserved

See it on real footage

Drag the handle on any clip. Every one went through Poof exactly as shot: no green screen, no masks drawn by hand, no clean-up afterwards.

OriginalBackground removed
Talking to cameraHair, glasses, a camera in the shot
OriginalBackground removed
Dance studioFast arms, bright windows behind
OriginalBackground removed
Dog on grassBlack fur at full speed
OriginalBackground removed
Chef at workHands and tools moving
OriginalBackground removed
Toy robotSmall moving parts, wooden floor
OriginalBackground removed
Basketball drillBall in flight, busy gym

Shown at reduced size. The API returns up to 1080p with the original frame rate and sound.

How to remove the background from a video

Three steps from your code, with the API key you already have. No green screen, no masks to draw, no editor in the loop.

1

Upload a video

Send the file (up to 100 MB) or a link to it (up to 500 MB) and pick the output you want: transparent, green screen or mask. You see the length and the price straight away.

2

Poof removes the background

Every frame is cut out by the same AI that powers the image API, then smoothed across time so edges stay steady instead of flickering. Check progress as often as you like; it is free.

3

Download the result

A direct download link to the finished video, no API key needed. Links stay live for 24 hours.

Three calls: upload, wait, download

With the Python or TypeScript SDK, or plain HTTP from any language.

remove_video.py
# pip install poofbg
from poof import Poof

client = Poof(api_key="YOUR_API_KEY")

# 1. Upload (transparent WebM is the default)
job = client.remove_background("clip.mp4", format="webm")
print(f"{job.duration_seconds} s of video, {job.credits} credits")

# 2. Wait, with free progress checks
job = client.wait_for_job(job, on_progress=lambda j: print(f"{j.progress:.0%}"))

# 3. Save
client.download(job, "no-bg.webm")

No code needed

Not writing code today? The same video background remover is one click away in your Poof dashboard and one sentence away in your AI assistant.

Studio in your dashboard

Drop a video into Studio, pick transparent, green screen or mask, and watch it process. Preview the result right there, download it, and find it again in your history for 30 days.

  • MP4, MOV or WebM up to 100 MB, straight from your browser
  • Progress bar while it runs, preview when it is done
  • Same credits as the API, so your free seconds work here too
Open Studio

In Claude, ChatGPT and other AI agents

Poof is in the Claude connector directory and the ChatGPT apps directory. Connect it once and ask your assistant to remove the background from a video you link to; it hands you the download.

Claude on the web, in the desktop app or on your phone.

  1. Open claude.ai/directory/poof, or go to Settings, then Connectors, and search for Poof.
  2. Click Connect and sign in to your Poof account when asked.
  3. Ask: “Remove the background from this video: <link>”.

Cursor, Windsurf, VS Code and any other MCP client connect to https://api.poof.bg/mcp. Setup guide for every client

For developers

Everything you need to wire video into your product. Authentication, errors and request IDs work as they do for images; the full reference lives in the docs.

POSThttps://api.poof.bg/v1/removemultipart/form-data

Poof detects whether you sent an image or a video from the bytes. An image comes back in the response; a video comes back as a job with a progress link. The image-only fields crop, padding, width, height and fit are rejected with a 400 validation_error on video.

Request Parameters

fileone required

Image or video file. Video: MP4, MOV, WebM, M4V or MKV, up to 100 MB and 5 minutes. Poof detects the media type from the bytes.

urlone required

HTTPS URL of the video, fetched server-side. Up to 500 MB.

formatoptional

'webm' (default), 'mov' or 'mp4'. MP4 has no alpha channel, so the subject is composited onto bg_color. See the output formats table.

channelsoptional

'rgba' (default, transparent background), 'rgb' (subject composited onto bg_color) or 'alpha' (grayscale matte video, no audio).

bg_coloroptional

Background colour whenever the output has no alpha (format=mp4 or channels=rgb): hex, rgb() or CSS name. Default white. Pass #00FF00 for a green screen.

sizeoptional

Output size preset, same values as the image API: 'preview', 'medium', 'hd' or 'full' (default). 'full' is the source resolution capped at 1080p.

Response

{
  "id": "job_8f3a1c2e9b7d4a10",
  "status": "queued",
  "progress": 0,
  "created_at": "2026-10-12T10:12:00Z",
  "started_at": null,
  "completed_at": null,
  "duration_seconds": 12.4,
  "fps": 29.97,
  "width": 1920,
  "height": 1080,
  "frames": 372,
  "credits": 65,
  "format": "webm",
  "channels": "rgba",
  "status_url": "https://api.poof.bg/v1/jobs/job_8f3a1c2e9b7d4a10",
  "result_url": null,
  "expires_at": null,
  "error": null,
  "stats": null
}

Errors: missing_image (400), video_too_long (400), validation_error (400), payment_required (402), video_too_large (413), invalid_video (422), rate_limit_exceeded (429).

GET/v1/jobs/{id}

The same job object. status is queued, processing, completed or failed; progress runs from 0 to 1, and error explains a failure.

Poll every few seconds. Free, exempt from the rate limit. Unknown ids return 404 job_not_found.

GETresult_url

Once the job is completed, result_url is a direct https://cdn.poof.bg/... link to the finished file, served with the matching Content-Type and a Content-Disposition: attachment header. No API key needed.

Valid for 24 hours after completion; expires_at gives the exact time. Free.

Works with your existing key and credits

If you already remove image backgrounds with Poof, video needs no new account, key or billing setup. The options you know (format, channels, bg_color, size) mean the same thing; only the format values change to webm, mov and mp4. bg_color fills in whenever the output has no transparency, white by default.

Transparent video, green screen or mask

Get a video with a transparent background for the web (WebM) or for your editor (ProRes MOV), a green-screen MP4 that works in any tool, or a black-and-white mask (an alpha channel video) if you do your own compositing. Frame rate, length and aspect ratio always stay the same; resolution is the source, up to 1920×1080.

FormatTransparent (default)On a colourMask onlyAudioBest for
webm
video/webm
VP9 with transparencyVP9 on your colourVP9 black-and-white maskOpus
none for alpha
Web, HTML5 video, Chrome and Firefox
mov
video/quicktime
ProRes 4444 with transparencyProRes 422 on your colourProRes black-and-white maskAAC
none for alpha
Premiere, Final Cut, After Effects, DaVinci
mp4
video/mp4
H.264 on your colour (MP4 has no transparency)H.264 on your colourH.264 black-and-white maskAAC
none for alpha
Green screen for any editor, social video

MP4 cannot hold transparency, so MP4 output always sits on a background colour of your choice. Pick green and you have a green screen.

Max duration

5 min

Max input size

100 MB upload · 500 MB by URL

Max output

1080p (1920 longest side)

Works best with

The model separates the main subject from everything behind it. Here is what that means for your footage, based on our tests on real clips.

Best results

  • A clearly separated main subject: a person, product, animal or object in front of the background.
  • Steady lighting without strong flicker or fast exposure changes.
  • Source footage up to 1080p. Larger inputs are downscaled to 1080p.
  • Talking heads, product spins, demos, pets and hands, with or without camera motion.

Good to know

  • Burned-in captions, logos and overlays are treated as foreground and kept in the output.
  • Crowds, or people only partly visible at the edge of the frame, may be dropped in favour of the main subject.
  • Edges are smoothed over time so they do not flicker; very fast motion can still wobble a little from frame to frame.
  • You cannot drop in a new background yet: place the transparent file over one in your editor, or use the green-screen MP4.

Pricing

5 credits per second of video, from the same credit pool as images. 1 credit is 1 image or 0.2 s of video. Charged when the upload is accepted, refunded if processing fails.

A minute of video is 300 credits. Above 30 fps it is 600, because the GPU processes twice as many frames.

PlanPriceCredits / monthMinutes of video / monthPer minute of video
Free$010020 s free trialfree
Pro$9/mo2,0006.7$1.35
Megapopular$29/mo10,00033$0.87
Ultra$99/mo50,000167$0.59
Giga$299/mo200,000667$0.45

Top-ups apply to video too. Image pricing stays at $0.002/image on volume plans. View full pricing

Poof vs other video background removers

Looking for an Unscreen alternative? Unscreen, remove.bg's video product, shut down in December 2025. The services that remain charge several times more per minute and are built around a web upload rather than an API.

FeaturePoofvideobgremover.comremovebgvideo.comVEED (via fal.ai)
Price per minute of video$0.45–$1.35$2.50–$4.80$2.50–$4.80$0.48–$1.35
Free trial20 s a month———
Developer API with SDKs—
Images and video, one account———
Transparent WebM for the web———
Transparent ProRes MOV for editors———
Green-screen MP4 with any colour———
Mask-only output———
Audio preserved———
Any subject, not only people———
Shared credits with the image API———

— no comparable figure or feature listed. Competitor prices are public list prices, September 2026.

Frequently Asked Questions

Everything you need to know about the Poof video background removal API.

How much does the video background removal API cost?

5 credits per second of source video, rounded up, so a minute costs 300 credits. Credits are the same ones the image API uses: 1 credit is 1 image or 0.2 s of video. That works out to $0.45–$1.35 per minute depending on the plan ($0.87 on Mega), against $2.50–$4.80 at videobgremover.com and removebgvideo.com, $0.48–$1.35 for VEED via fal.ai and $8.40 for Bria via fal.ai. Videos above 30 fps cost 10 credits per second because there are twice as many frames to process. Credits are charged when the upload is accepted and refunded automatically if processing fails; progress checks and downloads are free.

Is there a free trial for video?

Yes. The Free plan's 100 monthly credits cover 20 seconds of video, enough to run a real clip through every output format before you pay anything. No credit card required.

Do I need a separate account or API key for video?

No. Your existing Poof account, API key and credits work for video as they do for images: send the file or a link and pick a format. Nothing new to sign up for or learn. The developer docs cover the details.

Do I need a green screen?

No. Poof separates the subject from whatever is behind it, so footage shot against a wall, outdoors or at a desk works as well as a studio shot. It is a green screen alternative that also does the keying for you: ask for a green-screen MP4 if your editor expects one, or skip the green screen entirely with a transparent WebM or MOV.

Which output formats does the video API return?

Three file types: WebM (transparent, plays in Chrome, Firefox and Edge), MOV (ProRes 4444 with transparency, for Premiere, Final Cut, After Effects and DaVinci Resolve) and MP4 (H.264). For each you can keep the transparency, put the subject on a colour of your choice, or get a black-and-white mask for your own compositing. MP4 cannot hold transparency, so MP4 output always sits on a colour; choose green and you have a green-screen export.

Is the audio kept?

Yes. The original sound is carried over to WebM, MOV and MP4 outputs. Only the mask-only output is silent, because it is meant to be laid over your source clip.

What about frame rate, duration and resolution?

Frame rate, duration and aspect ratio are preserved exactly, so the output lines up frame for frame with your source. Output resolution is the source resolution capped at 1920×1080; larger inputs are downscaled with the aspect ratio kept. Limits are 5 minutes per video, 100 MB for uploads and 500 MB when you pass a URL. 4K output is not available yet.

Does it work on products, animals and objects, or only people?

Any subject. Video uses the same AI as the Poof image API, which handles people, products, cars, animals, hair and fur. It is not limited to portraits or talking heads, unlike tools built only for people.

Can I use the output commercially?

Yes. Everything Poof returns is yours: use it in products, ads, client work and anything you sell, on every plan including Free, with no attribution and no watermark. Your videos are only processed to fulfil your request and are never used to train models.

How do I know when my video is ready?

Videos take a little while, so the upload returns straight away with a job you can check on. Your code asks for the progress every few seconds (free, and it does not count against your rate limit) and gets a download link as soon as the clip is finished. The upload reply already tells you the duration, frame count and credit charge, so you can show that to your users at once. Most clips are ready in about their own running time.

How long are my videos and results stored?

Download links stay live for 24 hours after the clip is finished, then the file is deleted; the exact expiry time comes with the result. Your videos are only processed to fulfil the request and are never used to train models. Poof is an EU company and GDPR compliant.

Do the Python and TypeScript SDKs and the MCP server support video?

Yes. Give the SDK a video instead of an image (poofbg 0.3 and @poof-bg/js 1.2 or later), wait for it to finish and you get the download link, with progress reported along the way. Claude, ChatGPT and other AI assistants can remove the background from a video link through the Poof connector. Plain HTTP from any other language works too; the cURL example above is the whole flow.

Is there a free video background remover?

Every Poof account gets 100 free credits a month with no credit card, which is 20 seconds of video at full quality, every month. Use them from your own code, from an AI assistant, or in Studio in your dashboard, and pay per minute only above the free allowance.

Remove the background from your first video today

100 free credits a month, no credit card required. Your first 20 seconds of video are on us.

Get Your Free API Key

Removing backgrounds from images too? See the image API.

Poof Logo

The developer-first standard for background removal. precise, fast, and scalable.

Product

  • Pricing
  • Documentation
  • API Reference
  • Playground
  • Background Removal API
  • Video Background Removal API
  • Changelog
  • remove.bg alternative
  • Alternatives

Company

  • About
  • Blog
  • Support & Feedback
  • Contact

Legal

  • Privacy
  • Terms
  • Cookies
  • Imprint
© 2026 Poof. All rights reserved. Made with 💜 in 🇪🇺