Guide

Photoroom API Pricing per Image and a Lower-Cost Alternative

Photoroom's remove background API costs $0.02 per image, $0.10 on Plus. See how it compares to Clipdrop, plus a drop-in Python alternative.

Pair of sneakers on a pale background next to the same sneakers cut out on a transparent background by one background removal API call

This tutorial uses the Background Removal API. See the docs, live demo, and pricing.

If you are checking Photoroom API pricing, you probably want the cost per image and a clear idea of your options. Photoroom charges $0.02 per image for background removal and $0.10 per image for its Image Editing API. This guide covers how those plans work, how they compare to other APIs, and a drop-in Python function for moving to an API with a lower cost per image. We ran the alternative code below against the live API before publishing.

The Photoroom Remove Background API Today

The Photoroom documentation describes the endpoint like this:

  • Endpoint: POST https://sdk.photoroom.com/v1/segment with a multipart body.
  • Auth: an x-api-key header.
  • Input: image_file in PNG, JPEG, WebP or HEIC, up to 50 MB and 6,000 pixels on the widest side.
  • Options: format, channels, bg_color, size and crop.
  • Output: the image itself, PNG by default, or JPEG or WebP.

Photoroom API Pricing per Image

These are the prices in Photoroom's pricing page and docs, checked in October 2026:

Photoroom optionPrice per imageWhat it covers
Remove Background API (Basic)$0.02Background removal, crop and resize, color backgrounds
Image Editing API (Plus)$0.10Adds AI backgrounds, AI shadows, AI expand, virtual try-on
EnterpriseContact salesAnnual commitment, all APIs, volume discounts
Free production calls$010 Remove Background calls with an account
Sandbox$01,000 Image Editing calls a month, watermarked

Three billing details affect your real cost. Plans are prepaid monthly in fixed amounts, such as $20 for 1,000 images or $40 for 2,000. Unused images do not roll over. A Plus call made from a Basic plan is billed at the Plus price, so one Image Editing call counts as five background removals. Beyond its largest plan, Photoroom asks you to contact sales.

Photoroom vs Clipdrop: Cost per Image

APICost per imageNote
Photoroom Basic$0.02Prepaid monthly
Photoroom Plus$0.10Includes generative editing
Clipdrop$0.144 to $0.50Prepaid credit packs
remove.bgSelf-service API closes 1 December 2026See the migration guide below

At 10,000 images a month, Photoroom Basic comes to $200. The AI Engine Background Removal API has a lower cost per image than both Photoroom plans, with flat monthly plans and a free tier for testing. For the full market, see our background removal API comparison. The rest of this guide moves a Photoroom integration to AI Engine.

When Each Option Fits

  • Photoroom Plus: you need generative features such as AI shadows or virtual try-on.
  • AI Engine: you need background removal and background replacement at a low cost per image, with a single API key.

Photoroom to AI Engine: Request Mapping

PhotoroomAI EngineNotes
sdk.photoroom.com/v1/segmentbackground-removal-ai.p.rapidapi.com/remove-backgroundPOST, multipart
x-api-key headerx-rapidapi-key + x-rapidapi-hostKey from your RapidAPI dashboard
image_fileimageOr send image_url
bg_color/color-background with bg_colorUses R,G,B,A, for example 255,255,255,255
formatConvert with PillowPNG, WebP and JPEG in the function below
size, cropApply with PillowOn the returned image
Response: image bytesResponse: JSON with image_urlThe function below downloads the PNG
-/gradient-background, /blur-background, /image-backgroundMore backgrounds in one call

The AI Engine response from our test looks like this:

json
{
  "image_url": "https://images.ai-engine.net/background-removal-ai/4e8af86b-....png",
  "width": 1200,
  "height": 1500,
  "size_bytes": 692010
}

Before: A Photoroom Call

This is a Python version of the request in the Photoroom quickstart:

python
import requests

with open("shoes.jpg", "rb") as image_file:
    response = requests.post(
        "https://sdk.photoroom.com/v1/segment",
        headers={"x-api-key": "YOUR_PHOTOROOM_KEY"},
        files={"image_file": image_file},
    )
response.raise_for_status()
with open("shoes-cutout.png", "wb") as out:
    out.write(response.content)

After: A Drop-In segment() Function in Python

The function takes the same image and returns image bytes, so the code that saves or uploads the result stays the same.

python
import io
import os
import requests
from PIL import Image

API = "https://background-removal-ai.p.rapidapi.com"
HEADERS = {
    "x-rapidapi-host": "background-removal-ai.p.rapidapi.com",
    "x-rapidapi-key": os.environ["RAPIDAPI_KEY"],
}


def segment(image_file, output_format="png", bg_color=None):
    """Replaces a Photoroom /v1/segment call and returns image bytes."""
    endpoint, data = "/remove-background", {}
    if bg_color:
        endpoint, data = "/color-background", {"bg_color": bg_color}
    with open(image_file, "rb") as f:
        resp = requests.post(API + endpoint, headers=HEADERS, data=data,
                             files={"image": f}, timeout=60)
    resp.raise_for_status()
    png = requests.get(resp.json()["image_url"], timeout=60).content
    if output_format == "png":
        return png
    image = Image.open(io.BytesIO(png))
    out = io.BytesIO()
    if output_format == "webp":
        image.save(out, "WEBP")
    else:  # jpeg has no alpha channel, so flatten on white
        flat = Image.new("RGB", image.size, (255, 255, 255))
        flat.paste(image, mask=image.getchannel("A"))
        flat.save(out, "JPEG", quality=92)
    return out.getvalue()

The call site becomes:

python
png = segment("shoes.jpg")
with open("shoes-cutout.png", "wb") as out:
    out.write(png)

# Same photo on a white catalog background (R,G,B,A)
white = segment("shoes.jpg", bg_color="255,255,255,255")

We ran it on the 1200x1500 sneaker photo from the cover. PNG and WebP came back with an alpha channel, JPEG came back flattened on white, and all three kept the input size.

Test Your Key With cURL

bash
curl -X POST 'https://background-removal-ai.p.rapidapi.com/remove-background' \
  -H 'x-rapidapi-host: background-removal-ai.p.rapidapi.com' \
  -H 'x-rapidapi-key: YOUR_API_KEY' \
  -F 'image=@shoes.jpg'

New Backgrounds in One Call

Each background has its own endpoint, so you can produce catalog and lifestyle versions from the same photo. These are real outputs from the API:

The same sneakers on a white background, a beige gradient and a blurred version of the original background, each from one API call
One product photo, three endpoints: white, gradient and blurred original background. Photo: Pexels.

Migration Checklist

  • Search your codebase for sdk.photoroom.com and x-api-key to find every call site.
  • List the options you send, especially format, bg_color, size and crop.
  • Swap the call for segment() and run it on 20 to 50 of your real images.
  • Convert bg_color values to the R,G,B,A format. A hex value returns a 422.
  • Move your usage monitoring to the x-ratelimit-requests-remaining response header.

Coming from remove.bg instead? Its self-service API closes on 1 December 2026, and the remove.bg migration guide maps its parameters the same way. Also comparing Clipdrop? See the Clipdrop API alternative. For large catalogs, read background removal at scale.

Sources

Try the swap on your own product photos with the free tier of the AI Engine Background Removal API.

Frequently Asked Questions

What is the per-image cost of the Photoroom API?
The Remove Background API (Basic plan) costs $0.02 per image and the Image Editing API (Plus plan) costs $0.10 per image, checked in October 2026. Plans are prepaid monthly in fixed amounts, such as $20 for 1,000 images, and unused images do not roll over.
Is the Photoroom API free to try?
Yes. An account includes 10 free production calls on the Remove Background API, and the Image Editing API has 1,000 sandbox calls a month with watermarked results.
How does Photoroom compare to Clipdrop on price?
Photoroom's $0.02 per image is lower than Clipdrop's credit packs, which run from $0.144 to $0.50 per image.
How do I migrate from Photoroom to another background removal API?
Keep your call site and replace the function behind it. The segment() function in this guide takes the same image, calls the AI Engine Background Removal API, and returns image bytes in PNG, WebP or JPEG, so the code that saves or uploads the result stays the same.

Ready to Try Background Removal?

Check out the full API documentation, live demos, and code samples on the Background Removal spotlight page.

Related Articles

Continue learning with these related guides and tutorials.