SEO Tutorial Guide

Learn how to install ZeroBG as an offline desktop/mobile app.

Back to Background Remover

How to Remove Image Backgrounds Offline (PWA)

ZeroBG installs as a Progressive Web App and, once primed, keeps working with no internet connection at all: the same segmentation, the same compositor, the same touch-up brush, the same batch ZIP export. Why it can do this, an AI model running inside the browser tab instead of on a remote server, is covered in full on the privacy page. This page covers the practical side: what actually has to happen first, what installing does and doesn't buy you, what still needs a network even after everything is cached, and where offline genuinely helps.

What has to happen before you go offline

Offline use isn't a toggle. It's a side effect of caching, and there is exactly one thing that triggers the caching: complete one background removal while you have a normal internet connection. Opening the page, or even opening an installed copy of the app, downloads almost nothing by itself. The model (44.3MB) and the ONNX Runtime WebAssembly build (23MB), about 65MB together, start downloading the moment you show intent to use the drop area: hovering a mouse over it, dragging a file over it, tapping it on a touchscreen, or clicking it to open a file picker. Wait for an actual cutout to appear. That result is your confirmation the whole ~65MB finished downloading and got cached, not just that the app shell loaded.

Once that first result appears, disconnect: turn off wifi, switch on airplane mode, whatever is convenient. Drop another photo in and it processes exactly as before, because the computation was always happening on your own hardware rather than being sent anywhere. With the network off entirely, a removal runs identically to one done online.

Installing is a convenience, not a requirement

You do not have to install ZeroBG for offline use to work. Complete one removal in an ordinary browser tab, and that tab, in that specific browser, on that specific device, keeps working offline too, because the cache lives in the browser rather than in an installed wrapper. What installing adds is a launcher icon and a window with no address bar or tabs around it. Useful, but not what makes offline work.

On desktop Chrome or Edge, look for an install icon at the right of the address bar, or open the browser menu for "Install ZeroBG" (Chrome) or "Apps" (Edge). On iPhone or iPad, open the site in Safari, tap the Share icon, and choose "Add to Home Screen"; Safari has always supported this, while other iOS browsers historically couldn't, since only Safari was allowed to expose the install flow on Apple's WebKit engine. That restriction has started to loosen for some browsers in some regions, so if a non-Safari install option is missing for you, Safari remains the reliable route. On Android, open the site in Chrome and look for an "Install app" prompt, or the same option in the three-dot menu.

Where this is actually worth it

The obvious case is a flight or train with no wifi, or paid wifi that isn't worth it for a five-minute job, and the same goes for fieldwork where signal is unreliable, an event photographer cutting out product shots between venues, or a factory floor where devices are kept off the network for reasons that have nothing to do with this tool.

Restricted or monitored corporate networks are a related but different case, worth being precise about. If a device has never had a network connection at all, ZeroBG cannot prime itself there; the one-time ~65MB download above still has to happen somewhere, at least once. What ZeroBG is genuinely good for is the more common version of that problem: you know you're about to be on a network that blocks or logs outbound traffic, so you prime the app on an ordinary connection first, then move to the restricted one. From that point there's nothing outbound for a network policy to catch, because there's no outbound traffic to catch. The same logic covers client work you're contractually barred from sending to third-party servers, cloud-based or not, as long as you prime the app before that restriction applies rather than after.

What still needs a network, even after caching

A few things in ZeroBG do reach outside the app on purpose, kept separate from the parts that don't. Fifteen of the seventeen preset backdrop photos (office, nature, cyber, marble, beach, and others) are images hosted on an external photo CDN rather than bundled with the app, and the service worker deliberately leaves cross-origin requests alone. So a preset photo you haven't already loaded in that browser session won't appear while you're genuinely offline. The two solid-colour presets, any gradient you build with the colour picker, and any backdrop you upload yourself are unaffected, since none of them touch the network. The same rule is why this help page's typeface comes from Google Fonts: offline, the text still renders, just in your browser's default font rather than ZeroBG's usual one. Neither limitation touches the actual background removal, the touch-up brush, or the batch queue and ZIP export, all of which run entirely on the cached model and never needed a network connection to begin with.

Troubleshooting: offline isn't working

If you disconnect and the app won't load, or loads but hangs on processing, work through these:

  • The priming step didn't actually finish. Opening the app while online isn't enough by itself; the download only starts once you interact with the drop area, and only a completed cutout proves it finished downloading and got cached. Go back online, drop one test image, and watch the result actually appear before disconnecting again.
  • The browser cleared its cache. Browsers can evict cached site data under storage pressure, more often on phones running low on space. If it's been a long time since that first successful run, or storage has been tight, treat the cache as possibly gone and redo the online step.
  • You're in a different browser or profile than the one you primed. The cache belongs to the specific browser, and on desktop the specific profile, that ran the first removal. Opening the site in a different browser, or an Incognito or InPrivate window, starts from nothing.
  • You're using a private or incognito window. These clear all cached data on close by design, so nothing persists between sessions no matter what was cached earlier. Use a normal window, or the installed app, if you need this to last.
  • The browser lacks WebAssembly, or has it disabled. Rare outside heavily locked-down corporate builds, but if the tool won't load even while online, this is worth raising with whoever manages the device.