KKwikfig.

Image Resizer & Converter

Resize any image to exact pixels, a percentage, or presets for Instagram, YouTube, X and Facebook — and convert between JPEG, WebP and PNG on-device. Runs entirely in your browser — your numbers never leave this device.

Choose the image to resize
Click to browse, or drag and drop a file here — it never leaves your device.

No image loaded yet. The resized file is rendered on this device at exactly the dimensions you choose — nothing is uploaded.

How it works

Pixels mode: output = exactly the width × height entered | Aspect lock: height = round(source height × width ÷ source width), and symmetrically for width | Percent mode: each side = round(source side × percent ÷ 100) | Output bytes = the encoded file's exact size
Resize presets — exactly the options the widget offers
PresetWidthHeightTypical use
OriginalSource widthSource heightConvert format without resizing
Instagram post10801080Square feed post
Instagram story10801920Full-screen vertical story or reel cover
YouTube thumbnail1280720Video thumbnail (16:9)
X post1600900In-feed image on X (16:9)
Facebook cover1640924Page or profile cover photo
HD19201080Full-HD wallpaper, slides and video stills

The resizer draws your decoded image — EXIF orientation corrected on load, so a sideways phone photo is measured and resized by its upright dimensions — onto a new canvas at exactly the dimensions you ask for, then encodes it as JPEG, WebP or PNG. There are two ways to name the target size. Pixels mode takes an exact width and height, with an aspect lock that keeps the source proportions: type a width and the height follows as round(source height × width ÷ source width), so a 4000 × 3000 photo given width 1000 lands on exactly 1000 × 750. Percent mode scales each side by the same percentage — 50% turns 1920 × 1080 into 960 × 540.

The preset list covers the sizes people actually resize for: an Instagram post at 1080 × 1080, a story at 1080 × 1920, a YouTube thumbnail at 1280 × 720, an X post at 1600 × 900, a Facebook cover at 1640 × 924, and plain HD at 1920 × 1080. Choosing a preset sets both fields at once and releases the aspect lock, because most presets deliberately differ from a camera photo's shape — a square Instagram post made from a 4:3 photo fills the square by stretching, so crop first with the Image Cropper if you would rather cut than stretch. The full preset table is printed below, identical to what the widget offers.

Everything renders on your device: the image is decoded locally, the resized canvas is encoded locally, and the before/after panel reports the original dimensions and bytes beside the output dimensions and the output file's exact byte count. Your image is never uploaded to any server at any point — the tool has no server side, and works offline once the page has loaded.

Worked examples

Shrinking a photo by width, aspect locked

Input
Photo 4000 × 3000 px (3,214,500 bytes), Pixels mode, width = 1000, lock on, JPEG
Working
Height follows the lock: round(3000 × 1000 ÷ 4000) = 750. The image is drawn at 1000 × 750 and encoded as JPEG; the recorded output file is 182,340 bytes.
Result
4000 × 3000 → 1000 × 750, 3,214,500 bytes → 182,340 bytes

Half size by percent

Input
Screenshot 1920 × 1080 px, Percent mode, 50%
Working
Each side scales independently: round(1920 × 0.50) = 960 and round(1080 × 0.50) = 540.
Result
1920 × 1080 → 960 × 540

YouTube thumbnail preset from a matching source

Input
Video still 2560 × 1440 px, preset = YouTube thumbnail, WebP
Working
The preset sets width 1280 and height 720. The source is already 16:9 (2560 ÷ 1440 = 16 ÷ 9, and 1280 ÷ 720 = 16 ÷ 9), so the resize is a clean half-scale with no stretching.
Result
2560 × 1440 → 1280 × 720 exactly

Frequently asked questions

Is my image uploaded for resizing?

No. The image is decoded, drawn at the new size and encoded entirely inside your browser; nothing leaves your device and nothing is stored or logged anywhere. The tool keeps working with the network disconnected, which is the simplest way to confirm it.

What happens when the preset's shape differs from my photo's?

The image is stretched to fill the preset exactly — a 4:3 photo resized to the square Instagram preset becomes a square, with circles turning slightly oval. If that distortion matters, crop to the target shape first with the Image Cropper (it has a 1:1 aspect lock), then resize the crop here.

How does the aspect lock calculate the other side?

Proportionally, rounded to the nearest whole pixel: height = round(source height × width ÷ source width). For a 4000 × 3000 photo at width 1000 that is exactly 750. Rounding can move the far side by at most half a pixel, which is invisible in the output.

Which format should I convert to?

WebP gives the smallest files for the web at a given quality and every modern browser displays it. JPEG is the safest choice when the destination is unknown — email, older software, print shops. PNG is the only one of the three that keeps transparency, and the only lossless one, so it is right for graphics and screenshots but heavy for photos.

Can I make an image bigger?

Yes — percent values above 100 and pixel sizes above the source both work, and presets will upscale a small source to their stated size. Be aware the result is interpolated: enlarging cannot invent detail the source never captured, so a 400 × 300 upscaled to 1920 × 1080 will look soft. The Favicon Generator flags exactly this case for its 512 size.

Related tools

More in Image Tools · Browse all tools