Convert a PNG
Menu
Documentation
Type to search. Use the down arrow to browse results, or Escape to close them.

File limits

Prepare an image that fits the upload and image-size limits before sending a request.

At a glance

Requirement Limit
Input PNG or JPEG; PNG is recommended for logos
File size Up to 10 MiB (10,485,760 bytes)
Image dimensions Up to 4,000,000 pixels in total
Request body Multipart form with an image file field
Output SVG, returned inside a JSON response

The server checks image bytes, rather than trusting the filename extension. Renaming another format to .png does not make it a PNG.

Prepare your image

Use the clearest original you have. Crop unnecessary canvas space, preserve transparent backgrounds when you have them, and keep the artwork at a useful resolution. Enlarging a small image does not restore missing detail.

Pixel count is width × height. A 2,000 × 2,000 image contains 4,000,000 pixels. A 3,000 × 2,000 image exceeds the limit even when its compressed file is small.

Validate before upload

Client validation can give someone useful feedback before the request starts. The server still validates the file, so your application must also handle its error response.

const MAX_BYTES = 10 * 1024 * 1024;
if (file.size > MAX_BYTES) {
  throw new Error("Choose an image no larger than 10 MiB.");
}

const bitmap = await createImageBitmap(file);
const pixels = bitmap.width * bitmap.height;
bitmap.close();
if (pixels > 4_000_000) {
  throw new Error("Resize the image to 4 million pixels or fewer.");
}

A limit is not an output guarantee

An accepted input may still contain photographic detail, soft shadows, or very small text that does not translate well into shapes. Inspect the result at its intended size before using it in a final deliverable.

A useful next step? Read the journal