Skip to content

Compress PDF

PDF Optimizer

Try structural rewriting and image compression, then check the returned file and reported saving.

Processed locally in your browser. Your file is not uploaded to any server. How this works

  1. 01Add your file
  2. 02PDF Optimizer
  3. 03Download

Runs in your browser · nothing uploaded

About PDF optimizer

Optimisation is a broader idea than compression, and the difference shows up in files that have been edited repeatedly. A PDF is an object graph, and most software appends changes rather than rewriting the file, so a document that has passed through several editors accumulates orphaned objects nothing references any more, resources stored twice under different names, streams left uncompressed, and layers of XMP metadata from every application that touched it. Some of that adds bytes without changing the visible page, but metadata and editing structures can still be meaningful. This tool rewrites the loaded objects with object streams and a new cross-reference stream. It does not consolidate duplicate resources or remove every unreferenced object. Optional metadata cleanup targets eight standard Info keys and detaches the catalog XMP reference; detached XMP bytes and other metadata can remain. Supported images may also be re-encoded as JPEG and downsampled where placement is measurable, including at higher quality settings. Those changes are lossy, and the tool does not validate structural conformance or predict rendering speed. It returns the rewritten PDF only if smaller; otherwise it returns the original bytes with images and metadata unchanged.

How to PDF optimizer

  1. 01

    Add the document

    Add the PDF and keep its original. Repeated editing can increase file size, but this tool does not remove every unused object or consolidate duplicate resources.

  2. 02

    Choose whether to clean metadata

    Enable limited metadata cleanup if wanted. Object-stream rewriting always runs, but duplicate consolidation does not; image compression remains a separate, potentially lossy part of the attempt.

  3. 03

    Set a sensible image ceiling

    Choose a target for the intended use. Even at 300 DPI, higher-resolution images may be downsampled and images below the target may still be re-encoded. Inspect the result before printing.

  4. 04

    Optimise and save

    Run it and check whether the report says a smaller rewrite or the unchanged original is returned. Download that file and inspect images and important document features before using it.

What this tool does

  • Rewrites registered objects with object streams and a new cross-reference stream rather than appending an incremental update
  • Reports whether the smaller rewrite or the unchanged original is returned
  • Keeps an image replacement only when its encoded stream is smaller; shared image references continue to use that object
  • Packs eligible non-stream objects into compressed object streams; existing content streams are not all recompressed
  • Image quality and resolution are adjustable; accepted image re-encoding remains lossy

Limitations worth knowing

Every PDF tool has constraints. Stating them plainly is more useful than discovering them halfway through your work.

  • A freshly generated PDF is usually already well-formed, so structural optimisation finds little to reclaim.
  • Fonts are not subsetted. Unused glyphs in an embedded font stay embedded.
  • Tagged-PDF accessibility structures and interactive form definitions are preserved rather than optimised, so they are not made smaller.
  • Optimisation cannot repair a genuinely corrupt document; it needs a parseable file to rebuild from.

How your file is handled

This tool runs entirely inside this browser tab. When you choose a file, your browser reads it from your own disk and hands the bytes to JavaScript running on this page — no network request carries your document anywhere. You can confirm that yourself: open your browser’s developer tools, switch to the Network panel, and run the tool. You will see no upload.

Nothing is stored after the fact. Closing or reloading this tab discards the file, the result and everything derived from them, because none of it ever left your machine. Read how local processing works.

Questions about PDF optimizer

How is optimising different from compressing?

This page uses the same compression engine as Compress PDF, with different starting settings. It attempts object-stream rewriting, supported image re-encoding and optional limited metadata cleanup. It does not deduplicate resources or remove every unused object. Structural rewriting is distinct from image compression, but the image changes can still be lossy and a smaller result is not guaranteed.

Will optimising make my PDF open faster?

Not necessarily. A smaller file can reduce transfer time, but opening and rendering also depend on the viewer and document content. This tool does not consolidate resources, linearize the PDF or measure rendering speed. Compare the returned file in the viewer you intend to use.

Is anything visible on the page changed?

The engine does not deliberately edit text, vector artwork or page geometry, but supported images may change through lossy JPEG re-encoding or downsampling. Neither a 300 DPI target nor high quality makes that lossless. The tool does not validate every annotation, link or rendering detail after rewriting, so inspect important features in the returned PDF. If the candidate is not smaller, the original bytes are returned unchanged.

My optimised file is barely smaller than the original. Is that a failure?

No. It means this attempt found little or no net saving, not that the document is already optimal. Unsupported image decoding, existing compression and the limited structural work can all affect the result. If the candidate is not smaller, the original is returned unchanged; another method may produce a different result.

Does optimisation remove my metadata?

The toggle requests limited cleanup of eight standard Info keys and the catalog XMP reference. Custom Info entries, page metadata, document IDs and detached XMP bytes may remain, so it is not secure erasure. Cleanup is present only if a smaller rewrite is returned. Turn the toggle off to skip this cleanup; the original-return fallback also retains all original metadata.

Read more about this