Design

remove.bg Figma Plugin Alternative: Three Ways to Remove Backgrounds in Figma After 1 December 2026

September 6, 20266 min readBy BG Clear Editorial

The remove.bg Figma plugin has been the default way to drop a cutout into a design without leaving Figma. It works by sending the selected image to remove.bg's API with your key — and remove.bg's own site says the standalone website and its API will no longer be available from 1 December 2026, with credits expiring the same day. So the plugin has a shelf life. Here are the three realistic replacements, from zero effort to an afternoon of code.

In this guide

Option 1: Figma's built-in AI remover

Figma added a native "Remove background" action to its AI feature set for images in Figma Design. Select an image, open the image controls (or the Actions menu), and choose Remove background. It is the least friction of all three because nothing leaves Figma. Two caveats to check on your own account: the AI features are gated by plan and region (they have rolled out to paid plans first and some regions later), and edge quality on hair and fine detail is where opinions differ. If it is available to you and the result is clean, stop reading here.

Option 2: the bgclear web tool round trip (free, HD)

For anyone without the Figma AI feature, or when its result needs a second opinion, the round trip is 30 seconds and free: select the image layer in Figma, export it at 2× or 3× as PNG (higher input resolution gives cleaner edges), drop the file on bgclear.ai, download the transparent PNG — no signup, no watermark, HD — and drag it back onto the Figma canvas. Two habits make this painless. Export the raw image, not the frame with effects, so the remover sees the original pixels. And keep the original layer hidden rather than deleted, in case you want to re-run with a different crop. For colour backgrounds or studio backdrops, use the editor before downloading — solid colours, gradients, blur and shadows are all there.

Option 3: a 60-line private Figma plugin on the bgclear API

Teams that removed dozens of backgrounds a day through the remove.bg plugin can keep that in-canvas workflow with a small private plugin. Figma plugins can make network requests from the plugin UI (an iframe) when the domain is allow-listed in the manifest. The main thread reads the selected image's bytes, the UI sends them to the API, and the main thread swaps in the result.

{
  "name": "Cutout (bgclear)",
  "id": "your-plugin-id",
  "api": "1.0.0",
  "main": "code.js",
  "ui": "ui.html",
  "editorType": ["figma"],
  "networkAccess": { "allowedDomains": ["https://www.bgclear.ai"] }
}
// code.ts — main thread: read the selected image, hand bytes to the UI, apply the result
figma.showUI(__html__, { visible: false });

const node = figma.currentPage.selection[0] as GeometryMixin & SceneNode;
const fills = node && Array.isArray(node.fills) ? (node.fills as Paint[]) : [];
const imageFill = fills.find((f) => f.type === "IMAGE") as ImagePaint | undefined;
if (!imageFill?.imageHash) figma.closePlugin("Select a layer with an image fill");

figma.getImageByHash(imageFill!.imageHash!)!.getBytesAsync().then((bytes) => {
  figma.ui.postMessage({ type: "remove", bytes });
});

figma.ui.onmessage = (msg) => {
  if (msg.type === "result") {
    const image = figma.createImage(new Uint8Array(msg.bytes));
    node.fills = [{ type: "IMAGE", scaleMode: "FILL", imageHash: image.hash }];
    figma.closePlugin(`Done — credits left: ${msg.remaining}`);
  } else {
    figma.closePlugin(`bgclear: ${msg.error}`);
  }
};
<!-- ui.html — runs in an iframe, allowed to fetch -->
<script>
const KEY = "bgc_live_YOUR_KEY"; // personal use only — for a team, call your own proxy instead
onmessage = async ({ data: { pluginMessage: msg } }) => {
  if (msg.type !== "remove") return;
  const form = new FormData();
  form.append("image_file", new Blob([new Uint8Array(msg.bytes)]), "layer.png");
  form.append("size", "full");     // preview (free, ≤800px) | full (1 credit) | auto
  form.append("format", "png");
  const res = await fetch("https://www.bgclear.ai/api/v1/remove", {
    method: "POST", headers: { Authorization: "Bearer " + KEY }, body: form,
  });
  if (!res.ok) {
    const { error } = await res.json();
    parent.postMessage({ pluginMessage: { type: "error", error: error.message } }, "*");
    return;
  }
  const bytes = await res.arrayBuffer();
  parent.postMessage({ pluginMessage: { type: "result", bytes, remaining: res.headers.get("X-Credits-Remaining") } }, "*");
};
</script>

Run it from Plugins → Development → Import plugin from manifest. Two production notes: a key inside a plugin is visible to anyone who has the plugin files, so a plugin shared across a team should call a small proxy that holds the key (the Node and Python guides show one), and images over 4 megapixels at full size should go through the async jobs endpoint — or export at a sensible size first.

Which one to choose

Occasional use, on a plan with Figma AI: option 1. Occasional use without it, or when you want HD output and the editor's backdrops: option 2 — free, and the same tool your non-designers can use. Dozens of cutouts a day inside the canvas: option 3, with a proxy if the plugin is shared. The API side costs one credit per full-resolution image — $9 for 100, $39 for 500, $129 for 2,000; credits never expire and previews are free (pricing). Nothing here needs a remove.bg account, which is the point: use your remaining remove.bg credits before 1 December 2026, then let the plugin go. Details of the API mapping for developers are on the remove.bg API alternative page.

Frequently asked questions

Will the remove.bg Figma plugin stop working exactly on 1 December 2026?

remove.bg's notice says the standalone website will no longer be available from 1 December 2026 at 9:00 CET and that background removal moves to Leonardo.Ai. The plugin calls remove.bg's API, so plan for it to stop then; test a replacement before.

Is there an official bgclear Figma plugin?

Not in the Community yet. The private-plugin code above is complete and takes about ten minutes to set up; the web tool round trip needs nothing installed.

Does the web tool keep full resolution?

Yes — output matches your upload's resolution, with no watermark and no signup. Export from Figma at 2× or 3× for the cleanest edges.

Can I get a coloured or studio background instead of transparent?

In the bgclear editor, yes: solid colours, gradients, studio backdrops, blur and shadows. Via the API, bg_color gives any solid hex colour.

Ready to remove background in Figma?

Open BG Clear and try it on your own photo. Free, no signup, transparent PNG in seconds.

Try BG Clear free →

Tools for this guide

Background Removal API Free

background removal api free

Canva Background Remover Alternative

canva background remover alternative

Cheapest Background Remover API

cheapest background remover api

Keep reading

API

remove.bg Zapier Integration Alternative: Keep Your Zaps Running After 1 December 2026

The remove.bg Zapier app depends on an API that closes with the standalone site on 1 December 2026. Here is the field-for-field replacement using Webhooks by Zapier, with the three most common Zaps rebuilt.

API

remove.bg Is Shutting Down on 1 December 2026: Migrate Your API Integration in 10 Minutes

remove.bg's standalone site and API close on 1 Dec 2026 (9:00 CET) as it folds into Canva's Leonardo.Ai, and unused credits expire the same day. A field-by-field migration to a drop-in compatible API, with code.

API

Remove Image Backgrounds in Node.js with fetch and FormData (No SDK)

Node 18+ built-in fetch, a file upload, a URL input, an Express proxy endpoint so your browser never sees the key, and retries that cannot double-charge.

Comparison

I Tested 7 Free Background Removers in 2026 — Here's What I'd Actually Use

I ran the same eight test images through seven free background removers. The gap between the best and worst was bigger than I expected. Here's what held up.