Rotate images online for free. Supports JPEG, PNG, WEBP, HEIC, TIFF and more, in 90° turns or by a fine angle.
Photos and scans frequently land at the wrong orientation. Phone cameras rely on the EXIF Orientation tag (values 1 to 8 in the TIFF/Exif spec) to record how the sensor was held, and software that ignores or strips that tag displays the image rotated 90 or 180 degrees. Document scanners feed pages at fixed angles regardless of the page content. Rotating physically rewrites the pixel order so the image renders correctly everywhere — including on viewers that don't read EXIF, in print, and after re-encoding.
| Angle | What it does | Lossless? |
|---|---|---|
| 90 clockwise | Sideways landscape becomes upright portrait (and vice versa) | No interpolation; exact when saved as PNG, TIFF or BMP; JPG, WebP and AVIF output is re-encoded (lossy) |
| 90 counter-clockwise | Mirror of 90 clockwise — picks the other rotation direction | Same as 90 clockwise |
| 180 | Flips upside-down content; no dimension swap | Same as 90 clockwise |
| 270 (= 90 counter-clockwise) | Equivalent to one CCW step | Same as 90 clockwise |
| "Fine angle" (−45° to 45°) | Straightens; exposed corners filled ("Transparent", "White", "Black") or trimmed ("Auto-crop corners"); resamples pixels | No — small quality loss from interpolation |
| Format | Right-angle rotation | Custom angle | EXIF orientation written? |
|---|---|---|---|
| JPEG | Re-encoded as a new JPG at the "Quality" you set (85 by default) | Resampled (small loss) | Output file is upright pixels; EXIF kept with Orientation reset to 1 |
| PNG | Always lossless | Resampled — output remains lossless RGBA | N/A (no EXIF written) |
| WEBP | Re-encoded; WebP output is always lossy, even from a lossless source | Resampled, lossy | Not kept |
| TIFF / TIF | Lossless (Deflate) | Resampled | No Orientation tag written (read as normal) |
| HEIC / HEIF | Saved as JPG (a browser cannot write HEIC) | Resampled, saved as JPG | EXIF kept in the JPG, Orientation reset to 1 |
| GIF | First frame only (animation not kept), 256-colour palette | Resampled, first frame only | N/A |
The phone stores the photo with EXIF Orientation set to a non-default value (commonly 6 or 8) and lets the viewer rotate on display. Apps that respect EXIF (Apple Preview, Chrome, modern Windows Photos) show it upright. Older viewers, some browsers, email clients that strip metadata, and printers ignore the tag and show raw pixels — sideways. Rotating with this tool rewrites the pixel data so every viewer renders the same way.
Right-angle rotations (90, 180, 270 degrees) saved as PNG, TIFF or BMP are pixel-exact — no quality loss. Saved as JPG, WebP or AVIF, every rotation is re-encoded, so there is a small, usually invisible loss; the editor does not do the lossless block-swap rotation that jpegtran can do for JPEG, and its WebP output is always lossy. Raise "Quality" (85 by default) toward 100 to narrow the loss. Custom angles always involve resampling and introduce a small amount of softening regardless of format.
EXIF orientation is metadata — a single tag that tells viewers how to display the file. The pixel data stays as the camera stored it, so any viewer that ignores EXIF (or any process that strips metadata) shows the original orientation. Rotating the actual pixels burns the orientation in permanently. For photos that need to display correctly everywhere — print labs, email forwards, batch image pipelines — rotate the pixels.
Yes. Use "Fine angle" in Rotate: drag it anywhere from −45° to 45° (0.1° steps), nudge it with the "−0.5°" / "+0.5°" buttons or type the angle — for example −2 to level a horizon that slopes up to the right. Combine it with "90° left" or "90° right" for larger turns. "Background for exposed corners" decides what fills the new corners: "Auto-crop corners" trims them away, or pick "White", "Black" or "Transparent" (transparent needs a format with alpha, such as PNG or WebP).
Yes, either here or after one conversion step. RAW files hold undeveloped sensor data that a browser cannot open, so the editor either processes them on our servers — saved as JPG unless you pick another format, and deleted automatically afterward — or says it skipped them. A skipped file can be converted first — CR2 to JPG, NEF to JPG, ARW to JPG or DNG to JPG (TIFF works too) — then rotate the result here. Rotating and saving back to RAW is not possible in any tool: the camera format cannot be re-created from pixels.
Rotation and flip are different transforms — rotation pivots around the center, flip reflects across an axis. For horizontal or vertical mirroring use Flip Image, or rotate 180 to combine a horizontal and a vertical flip in one step.
No. An animated GIF, WebP or APNG is detected when it opens, with a note that an edit keeps only the first frame, and the rotated result is a still image of that frame. Downloading the file without an edit gives back the original animation. There is no frame-by-frame rotation and no animated output.
Yes — drop up to 50 images at once (a mixed batch works too). The rotation angle you set applies to every file in the batch; "Download all (.zip)" saves every rotated result in one ZIP, or use "Download one by one" to save them separately.
For lossless right-angle rotations on PNG/TIFF, file size is usually within a few percent of the original. JPEG often grows or shrinks slightly because the new pixel layout encodes differently. Custom angles add transparent corners (PNG) or filled corners (JPEG/BMP) that change file size more noticeably. To keep size in check after rotation, lower the "Quality" slider for JPG, WebP or AVIF output, or use the dedicated JPEG compressor.
For format-specific tools, see Rotate JPG, Rotate PNG, Rotate HEIC, and Rotate GIF.