Rotate PDF Online
Rotate every page or only a selected range.
Drop a PDF here
or choose a file
A quarter turn of the page dictionary
Rotate PDF asks for 90, 180, or 270 degrees and an optional page list. pdf-lib applies that rotation and writes a new file. The content stream is not sent through a canvas. Landscape tables that were landscape on purpose must stay out of the list. “Everything after page 60” once included a schedule that was already correct, and the columns fell off the screen.
Encrypted files do not open. Fix orientation on an unlocked copy. HTTPS covers the site. The PDF bytes are not a POST body, so there is no server copy and no retention window to configure.
| Control | Effect |
|---|---|
| 90 / 180 / 270 | Quarter turns only |
| Page list | Viewer indexes. Empty means all pages |
| Text layer | Preserved |
| Deskew | Not available |
Packets that arrive turned
The last third of a copier stack
Pages 61–92 were loaded sideways and two of them were upside down from a duplex flip. Rotate the range, then a second pass on the two exceptions. Do not rotate the whole range again and hope.
Phone photos before a merge
A sideways page stays sideways after a clean merge, which is honest and annoying. Rotate first, then merge, so you are not hunting one page inside a larger file.
A wide table that is already right
Leave it. Thumbnail grids look tidier when every page is portrait. Paper does not. Consistency with the grid is the wrong goal.
OCR prep
Upright pages, then OCR. A model can sometimes read sideways text and will also invent corrections to justify the angle.
One planned turn
- Drop the PDF and confirm it opens.
- Pick the angle by looking at one wrong page, not by counting clicks from memory.
- Type the indexes, or leave the field empty for the whole file.
- Download and open page 1 of the range plus the page just outside it. The neighbor should be unchanged.
Keep the source until someone confirms the packet matches the paper stack. Export is not version history. A 94-page lunch-hour scan walks through the same sequence.
The neighbor page is the control
After a partial rotation, open the page before the range and the page after it. Both should match the source orientation. If they turned too, the list was wider than you thought, often because a hyphen included an extra index. Rotation is stored on the page. A viewer that ignores the rotate flag is rare. A viewer that caches the old thumbnail is common. Judge the file in a second program before you rotate again and compound the angle.
Do this before any tool that paints pixels. Compress and lock bake the current orientation into a JPEG. Turning the JPEG later turns the picture, including the margin, and you cannot get the text layer back from that file.
Ninety, one hundred eighty, and two hundred seventy are the only choices in the control. A page that needs six degrees of deskew is still crooked after a perfect quarter turn. Fix that on a rescan. This page will not invent an angle the widget does not offer.
Frequently asked questions
Does rotation rasterize the text?
No. The script updates rotation on the page and saves. Highlightable text stays highlightable. Compress and Lock are the tools that paint JPEGs. This one does not.
Can I rotate a subset?
Yes. A page list uses the same comma-and-hyphen style as Split. Leave it empty to rotate every page. One off-by-one leaves a single sideways page in an otherwise upright file.
Will this deskew a crooked scan?
No. 90, 180, and 270 are the only angles. A horizon that is 7 degrees off stays 7 degrees off, inside a page box that you turned. Four clicks of 90 degrees is the identity.
A chat thumbnail still looks sideways.
Messengers cache previews. Open the downloaded file in a second reader. If both readers are sideways, that index was not in the list you submitted.
Should I rotate before OCR?
Yes. OCR and chat read more reliably from upright text. Rotating after you have already trusted a sideways transcript means redoing the transcript.
Where is the file size limit?
In the tab. There is no upload and no stored copy. A huge scan can still exhaust a phone while pdf-lib holds the document.