Optimize
Resize Image
Set width and height in pixels, or resize by percentage. Lock aspect ratio to avoid distortion. Choose from common presets for Instagram, YouTube, LinkedIn, and web. Export as JPG, PNG, or WebP.
Input formats
Output formats
Common uses
- Resize photo for a form upload limit
- Prepare social media images at exact sizes
- Reduce image dimensions for faster website loading
- Create thumbnails from large images
Limitations
- Upscaling beyond original dimensions reduces quality.
- Animated GIF resizing uses the first frame only.
- SVG resizing exports a rasterized PNG output.
Resizing by exact pixels, percentage, or social preset
This tool gives you three ways to set output dimensions. Type an exact width and height in pixels, tap a percentage button (25%, 50%, 75%, 150%, or 200%) to scale relative to the original, or pick a social preset that fills both fields for you: Instagram square (1080×1080), Instagram story (1080×1920), YouTube thumbnail (1280×720), or LinkedIn post (1200×627).
The lock toggle next to the dimension fields keeps proportions intact. With it on, editing the width recalculates the height automatically (and vice versa) so the image never stretches. The percentage presets always preserve the original ratio. Choosing a social preset intentionally turns the lock off, because those target sizes have fixed aspect ratios that may differ from your source image.
When you load a file, its current pixel dimensions and file size appear above the controls, so you have a reference point before deciding how far to scale down or up.
Quality, format, and the prevent-upscale guardrail
You can export resized output as JPG, PNG, or WebP. For JPG and WebP, a quality slider from 60 to 95 trades file size against fidelity; lower values shrink the file more aggressively. PNG is lossless and ignores the slider, so it keeps sharp edges and transparency at a fixed quality. If you need a small file for a web page or an upload limit, WebP at a mid-range quality is usually the leanest choice.
The Prevent upscale checkbox is on by default. While enabled, requesting dimensions larger than the original will not stretch the image past its native size, which avoids the soft, blocky look of fake enlargement. Turn it off only when you deliberately need a larger canvas and accept that upscaling beyond the original dimensions reduces quality.
After processing, any notes the resize step produced are shown alongside the download, and you can compare the original and output file sizes before saving.
Browser-side processing and format edge cases
Resizing happens entirely in your browser. The image is decoded and redrawn on a local canvas, then exported, so the file is never uploaded to a server. That means your photos stay on your device, and the speed depends on your own machine rather than a network connection. Large images are capped by a maximum canvas size, so extreme dimensions may be rejected rather than silently failing.
Two format cases are worth knowing in advance. Animated GIFs are resized using the first frame only, so the result is a single still image, not an animation. SVGs are rasterized on export: a vector file comes out as a fixed-resolution PNG, which is fine for a one-off bitmap but loses the infinite scalability of the original vector.
If a file will not process, try a different source format or a smaller target size. Because resizing down discards pixels and resizing up cannot truly add detail, keep a copy of your original whenever you might need the full-resolution version later.
Frequently asked questions
Yes. Enable 'Lock aspect ratio' to maintain proportions. If you set only width or height, the other dimension is calculated automatically.
Instagram post (1080×1080), Instagram story (1080×1920), YouTube thumbnail (1280×720), LinkedIn post (1200×627), Website hero (1440×810).