Paint by Numbers

No-upload paint by numbers: how to verify it yourself

Check what happens to your photo with tools already built into your browser. Inspect outgoing requests while you generate and edit a template, then try the same workflow offline. These checks let you verify local processing for yourself.

Check 1 — watch the network while it works

  1. Open your browser's developer tools (F12, or ⌘⌥I on a Mac) and choose the Network tab.
  2. Go to the editor, let it finish loading, then clear the request list.
  3. Load a photo and click Generate. Merge a few regions. Export the SVG.
  4. Keep All request types visible. Inspect each request's URL, query parameters, and Payload (request body), including analytics requests. Look for image data, file attachments, or encoded copies of the photo.

The expected result is no outgoing request containing your image. The Network Size column measures downloaded response data; small responses or an empty Fetch/XHR filter do not prove that nothing was uploaded. Inspect the outgoing data across all request types.

Static scripts or worker files may load when a feature is first used. Google Analytics may send page views and usage events. When home-page advertising is enabled, Google AdSense and its partners may also make advertising, measurement, and consent-related requests. Those requests are separate from image processing; inspect their contents instead of expecting an empty request list.

Check 2 — turn your network off

  1. Load the editor, generate one template and export it once, so every part of the app has loaded.
  2. Switch your network off — Network → Offline in developer tools, or just turn off Wi-Fi.
  3. Load a different photo and generate again. Merge some regions. Export the SVG.

Generating, editing and exporting should still work. This demonstrates that those steps can run locally. Offline operation alone does not establish what a page sends while connected, so use it together with the request inspection above.

Expected network requests, and what they are for

Use this list to understand the services used by the app. Exact hosts can vary with analytics and advertising configuration; check the requests your browser actually sends. The app does not include your photo in these requests.

Request What it is for Sees your photo
paintbynumbers.build The page itself, plus JavaScript, worker files, CSS, and icons. Some static files may load when a feature is first used. No
fonts.googleapis.com, fonts.gstatic.com Web fonts. No
googletagmanager.com; google-analytics.com and its subdomains Google Analytics scripts and collection requests for page views and usage events, such as generation and export actions. The app does not attach photos or image data to those events. No
googlesyndication.com, doubleclick.net, and advertising or consent partners When enabled, Google AdSense loads a home-page ad and may use cookies and device information for ad delivery and measurement. The ad placement is removed when you start a project. Removing it does not unload scripts already executed or erase cookies. Hosts vary by the ad and consent configuration. The app does not send image data
amazon.com Only if you click a paint-set link. These are affiliate links; nothing loads from Amazon unless you choose to follow one. No

Local image processing coexists with usage analytics and optional home-page advertising. See our privacy policy for cookies and advertising choices. Verify the requests during the workflow you use.

What actually happens to your photo

After you choose an image, the editor automatically saves one local project, including the original image, edited template and recent undo history, in this browser's IndexedDB. The home screen lets you resume it, download a project-file backup or delete it. Clearing this site's data can also remove the local project. You can turn off "Remember this project on this device" to stop new saves; use "Delete saved project" to remove an existing copy. Exported images and project files remain wherever you saved them on your device.

Why this is worth checking at all

A photo can contain personal details about your family, pets or home. Checking where processing happens helps you choose a tool based on observed behavior. These checks describe the workflow you inspected; they are not a guarantee about every version or every possible action on a site.

The processing model is the floor, not the reason to use this editor. The reasons are manual control over individual regions and true vector SVG export. See the full paint by numbers generator comparison.

Related guides

Create an editable SVG template →