Home / Image Tools / Online Batch Image Rotation Tool
Free online tool

Online Batch Image Rotation Tool

Batch process multiple images: rotate by any angle. Processing takes place locally in your browser.

Start using

What this tool actually does

The batch page accepts up to 30 browser-decodable images through multiple selection or drag and drop. Per-file limits are 25 MiB and 24,000,000 decoded pixels; total limits are 100 MiB and 40,000,000 decoded pixels.

Checkable behavior

Angle mode offers preset left 90 degrees, right 90 degrees (default) and 180 degrees, or a custom angle from 0 to 360 with clockwise or counterclockwise direction. Additional margin ranges from 0 to 1000 pixels.

Controls, output and limitations

Expand canvas to fit is enabled by default. With it enabled, output bounds are ceil(width*abs(cos)+height*abs(sin) + 2*m) by ceil(width*abs(sin)+height*abs(cos) + 2*m). Without it, source dimensions are retained when the margin is zero and rotated corners can be cropped.

Transparent background is selected initially; solid background uses the chosen color. A 1200 by 800 image rotated 90 degrees with fit and no margin produces an 800 by 1200 canvas. Arbitrary-angle resampling is handled by browser canvas.

Outputs download individually as PNG files ending in -rotate.png. There is no ZIP, EXIF orientation rewrite, lossless JPEG rotation, metadata retention or animation preservation. Processing remains local to the browser.

Here m is the additional margin in pixels. With fit disabled, dimensions are ceil(source width+2*m) by ceil(source height+2*m); the original dimensions are preserved only with m=0. Each final output is limited to 24,000,000 pixels and the complete batch to 40,000,000, including margins. Equal limits are accepted; exceeding either rejects the batch before output canvases are allocated.

3×2 px; 90°; m=1; fit → 4×5 px; no fit → 5×4 px

Per image: ≤25 MiB and ≤24,000,000 pixels. Per batch: ≤100 MiB and ≤40,000,000 pixels. Selecting over 30 files or any invalid image rejects the whole batch.

Processing takes place locally in your browser.