How do I rotate a photo 90 degrees without losing quality?+
Use one of the quarter-turn buttons and export as PNG or WebP. A turn of 90, 180, or 270 degrees maps every source pixel exactly onto an output pixel, so the operation is a rearrangement rather than a calculation: no colour is averaged with its neighbour and no edge softens. This page computes those three angles from an exact table instead of from a sine function, which is what keeps a 4000 by 3000 photo landing on exactly 3000 by 4000 rather than 3001 by 4000 with a soft edge. The only remaining loss is in the encoder, so choose a lossless format if the result is going to be edited again, and keep JPEG quality at 92 or above if it is not.
Why does my photo appear sideways in one app and upright in another?+
Because the camera almost certainly wrote the picture in the sensor's own orientation and added an EXIF orientation tag telling software to turn it. Modern browsers, phones, and photo apps read that tag; a surprising number of older viewers, upload forms, and printing pipelines do not, which is why the same file looks right in one place and rotated in another. Loading it here settles the argument: the browser applies the orientation tag before anything is drawn, so what you see is the upright version, and the export bakes that rotation into real pixels with no tag left to ignore. That alone fixes a file that keeps flipping on upload, even if you make no other change.
What happens to the corners when I rotate by a few degrees?+
The picture stops being a rectangle in the canvas's own axes, so something has to give and you get to choose which. Expand to fit grows the canvas to the bounding box of the tilted picture: nothing is lost, but four triangular wedges around the edge have no picture in them and are filled with whatever colour you pick, or left transparent. Crop to fill goes the other way and shrinks the canvas to the largest upright rectangle that lies entirely inside the tilted picture, so there is nothing to fill and no background at all, at the cost of the outer edges. The page shows both sizes at once, so you can see exactly what each choice costs before you take it.
How do I straighten a crooked horizon?+
Turn on the alignment grid, then drag the straighten slider until the horizon runs parallel to the centre rule. Almost every crooked photo is out by less than three degrees, which is why the straighten control covers 15 degrees each way in steps of a tenth rather than the whole circle: the resolution is where the problem actually lives. Straightening only edits the tilt and never the quarter turns, so a photo you have already turned upright stays upright while you level it. Finish with crop to fill, which is the conventional answer for a straightened photo because it removes the empty wedges the tilt opened up.
Does the order of a rotation and a flip matter?+
Yes, and it is the thing most rotation tools get quietly wrong. Rotating then mirroring is not the same as mirroring then rotating: turn a picture 90 degrees right and then flip it horizontally, and you land somewhere different from flipping first and then turning. This page fixes one order, mirror first in the picture's own axes and then rotate, and rewrites whatever sequence you pressed into that form. The chain readout under the preview always shows the canonical version, which is why pressing rotate right and then flip horizontal is reported as a flip followed by a 90 degree left turn. It is the same result on screen, described in a way that stays consistent. Flipping both ways is a special case worth knowing: two mirrors at right angles are exactly a half turn, so the chain collapses them into one.
Will this remove the EXIF data and the GPS location?+
Yes, completely, and there is no setting to keep it. The export is drawn onto a fresh canvas and encoded from scratch, and a canvas has nowhere to store the metadata that came with the original: no camera model, no lens, no shutter speed or aperture, no timestamp, and no GPS coordinates. Embedded colour profiles go with them, so a photo tagged Display P3 comes back untagged and is treated as sRGB by anything that opens it, which can shift saturated colours slightly. Orientation is the one piece of metadata whose effect survives, because the browser applies it before drawing and the result becomes real pixels. If you need the metadata preserved, this is the wrong tool. If you were trying to strip it, rotating does that as a side effect.
Does rotating a JPEG over and over degrade it?+
It would in a tool that re-encodes after every button press, and that is the usual design. This page never does: the state it keeps is a description of the transform, one angle and one mirror flag, and every preview is drawn from the file you originally loaded. Pressing rotate twenty times composes twenty operations into a single matrix and draws once, so the result is identical to pressing it once with the same net angle. Only the download encodes, and it encodes once. There is still a real distinction to know about: a quarter turn moves pixels without touching their values, while any other angle interpolates each output pixel from several source pixels, which softens fine text and hard edges very slightly however good the filter is.
Why is the exported file larger than the one I loaded?+
Usually for one of three reasons that stack. Expand to fit adds pixels, because the bounding box of a tilted rectangle is bigger than the rectangle: at 45 degrees a square grows by about 41 percent on each side and doubles in area. The export is also a fresh encode, and a browser's encoder is tuned for speed rather than for the last few percent a dedicated compressor would find. And swapping a lossy source for a lossless export, a JPEG in and a PNG out, routinely multiplies the size of a photograph several times over. Crop to fill usually produces a smaller file than the original, PNG usually a much larger one, and running the result through the image compressor afterwards takes back most of the difference.
Can I rotate a GIF and keep it animated?+
No, and the page tells you so when you load one. A GIF is decoded here as a still, one frame is transformed, and the export is a single picture. Keeping the animation would mean decoding every frame, transforming each of them, re-timing the sequence, and encoding a new GIF, which is a different tool with a very different cost in memory and time. If the animation matters, rotate it in a video or animation editor. The still export is still useful when you want a thumbnail, a cover image, or a poster frame, and it is the only frame most previews would show anyway.
What are the size limits, and why do they exist?+
One file up to 25 MB, a source up to 40 megapixels, and a finished canvas no larger than 8,192 pixels on its longest side or 40 megapixels in total. They exist because every one of those pixels is real memory in your tab: a decoded picture costs four bytes per pixel, and the rotated copy costs that again, so a 40 megapixel photo is already several hundred megabytes of working set before the encoder starts. Rotation makes the ceiling easier to hit than you might expect, because a tilted canvas is larger than the picture it holds, and switching to crop to fill is often enough to bring an oversized export back under the line. The page also warns you when the output passes roughly 16.8 megapixels, because some phone browsers quietly cap a canvas near there and hand back a blank image rather than an error.