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 post covers how those plans work, how they compare, and a drop-in Python function for moving to an API with a lower cost per image.

Want to compare cutouts first? Try the Background Removal API on one of your own product photos.

Photoroom API pricing per image

Prices from Photoroom's pricing page and docs, checked in October 2026:

  • Remove Background API (Basic): $0.02 per image
  • Image Editing API (Plus): $0.10 per image, adds AI backgrounds, AI shadows and virtual try-on
  • Enterprise: contact sales, annual commitment
  • Free: 10 Remove Background calls with an account, plus 1,000 watermarked Image Editing sandbox calls a month

Plans are prepaid monthly in fixed amounts, such as $20 for 1,000 images, and unused images do not roll over. At 10,000 images a month, Photoroom Basic comes to $200.

Photoroom vs Clipdrop

  • Photoroom Basic: $0.02 per image
  • Clipdrop: $0.144 to $0.50 per image in prepaid credit packs
  • remove.bg: self-service API closes on 1 December 2026

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 the full market, see the background removal API comparison.

Request mapping

  • sdk.photoroom.com/v1/segment becomes background-removal-ai.p.rapidapi.com/remove-background
  • x-api-key becomes x-rapidapi-key plus x-rapidapi-host
  • image_file becomes image (or send image_url)
  • bg_color becomes the /color-background endpoint, with R,G,B,A values such as 255,255,255,255
  • format, size and crop are handled with Pillow on the returned image
  • Image bytes in the response become JSON with an image_url to download

A drop-in segment() function in Python

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

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:

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") 

On a 1200x1500 sneaker photo, PNG and WebP came back with an alpha channel, JPEG came back flattened on white, and all three kept the input size.

New backgrounds in one call

Each background has its own endpoint, so you can produce catalog and lifestyle versions from the same photo:

The same sneakers on a white background, a beige gradient and a blurred original background

Migration checklist

  • Search your codebase for sdk.photoroom.com and x-api-key
  • 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 R,G,B,A
  • Move usage monitoring to the x-ratelimit-requests-remaining header

Read the full guide with the before and after code and the cost tables on ai-engine.net.