skwish
private
browser-based
Compress images for Claude vision — match the native resolution and stop paying for pixels it throws away
Claude does not process pixels, it processes patches. Each patch is a 28x28-pixel block and counts as one visual token, so an image costs ceil(width / 28) multiplied by ceil(height / 28) tokens. Sending a 3,000 px photo to a model whose standard native long edge is 1,568 px means paying to upload detail that gets downscaled away before the first patch is counted. The high-resolution tier on Claude 4.7 and later raises the ceiling to a 2,576 px long edge and 4,784 visual tokens, but that is still far below a modern camera original. There are two hard rules on top. Each image is limited to 8000x8000 px and 10 MB base64 on the Claude API, 5 MB on Amazon Bedrock. And once a single request carries more than 20 images, a stricter per-image dimension limit applies to every image in that request unless you resize so neither dimension exceeds 3,000 px. Supported formats are JPEG, PNG, GIF and WebP, with animations unsupported and only the first frame used, and Claude does not read metadata at all. Skwish resizes to the exact long edge you need, converts format and compresses in the browser, batched into one ZIP.
Search match

This page is tuned for compress image for claude vision so visitors land in the right workflow immediately.

Fast output

See original size, compressed size, and percentage saved before you move on.

Batch ready

Compress multiple files and pull the results down as a ZIP.

Get to the compressor fast
Exact-intent SEO page first. Clear next step. Pretty later.

People usually search for a specific task, not a brand story. So this page keeps the promise simple: compress images without sending them to a third-party server.

Built for people searching “compress image for claude vision”, not a generic landing page.

No uploads, no accounts, no waiting on a server.

See the savings before you download anything.

Batch export stays available when the job is bigger.

Best for this search

Resize a document-scan batch to 1,568 px long edge so each page costs the standard-tier patch count instead of being downsampled server-side.
Cap every image at 3,000 px per side before sending a request that carries more than 20 images.
Compress base64 source images under 10 MB so an encoded request does not trip the per-image size limit.
Convert animated GIFs to a still JPEG when only the first frame would be analysed anyway.
Compress images now

Opens the upload box on the free browser compressor.

Drop images in the browser
Keep the whole workflow local. Nothing leaves your device unless you download it.
Set the output you need
Adjust compression until the file size and quality fit the job instead of guessing.
Download a clean result
Save one file or a ZIP bundle with skwish-prefixed names so the output is easy to find.
Sizing for Claude vision
Use these before you upload or share the page.
Standard tier native long edge is 1,568 px, high-resolution tier 2,576 px. Resize to the tier you are actually using.
More than 20 images in one request triggers a stricter per-image limit: keep neither dimension above 3,000 px, or batch 20 at a time.
Token cost is pure geometry. Halving both dimensions cuts visual tokens by roughly four times, with no change in prompt.
Metadata is stripped anyway, so compressing an EXIF-heavy original costs you nothing analytically.

Ready to compress images?

Open the free browser upload box, keep files local, and download the optimized result.

Compress images now