Skip to content

Free PDF tool

Rotate PDF pages

Fix scanned pages that are sideways or upside down. Rotate the whole document or only the pages you list.

Your PDF stays on your device

  • Free, no account needed
  • Built on the open-source libraries pdf-lib and PDF.js
Runs in your browser. Files are not uploaded.

How it works

Rotate PDF pages in 4 steps

  1. 1

    Add a PDF

    Drop the document onto the tool or choose it from your device.

  2. 2

    Pick the rotation

    Choose 90° clockwise, 180° or 90° counter-clockwise.

  3. 3

    Select pages

    Keep all pages or enter a selection such as 2, 5-7 or even.

  4. 4

    Rotate and download

    Select Rotate pages and save the corrected PDF.

Questions

Frequently asked questions

Are my files uploaded to a server?

No. The tool runs entirely in your browser: the PDF is read, changed and saved on your device, and its contents are never sent to our servers.

Is the rotation permanent?

Yes. The rotation is stored in the PDF itself, so the pages appear turned in every viewer and when printed. Content is not re-rendered, so quality is unchanged.

What happens to pages that were already rotated?

The new rotation is added to the existing one. A page stored with a 90° rotation that you rotate by another 90° ends up at 180°.

Can I use password-protected PDFs?

Not in the browser tool. Encrypted PDFs cannot be modified without the password, so the tool reports them instead of producing a broken file. Remove the protection with the software that created it, then try again.

Automate it

Do the same in your application with Dynamic Document API

Rotate pages server-side as part of a document pipeline, for example after merging scanned attachments.

POST /v1/pdf-tools/rotatePlanned endpoint

This endpoint is specified in the public API but not released yet; the request shape may still change.

curl -X POST https://api-eu.dynamicdocumentapi.com/v1/pdf-tools/rotate \
  -H "Authorization: Bearer $DYNAMIC_DOCUMENT_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "source": {
    "url": "https://example.com/scans/delivery-note-7731.pdf"
  },
  "pages": "2,4-5",
  "degrees": 90
}'