Decompress PDF
Decompress PDF streams for analysis and debugging - 100% client-side
Expand compressed PDF streams and inflate internal object data for inspection, debugging, or compatibility with tools that require uncompressed PDF structure. Runs entirely in your browser.
When and Why You Need to Decompress PDF Streams
PDF files use zlib/Deflate compression on content streams, cross-reference streams, and object streams by default to reduce file size. While this is ideal for distribution, it creates a barrier when developers, archivists, or forensic analysts need to directly inspect raw PDF structure. Compressed streams appear as binary blobs when opened in a text editor — decompression makes the content streams human-readable PostScript-like operators that describe page rendering, text placement, and drawing commands.
Decompression is also relevant for certain legacy PDF processing pipelines. Some older PDF manipulation libraries, compliance checkers, or proprietary document management systems require PDF 1.4 compatibility without cross-reference streams (xref streams were introduced in PDF 1.5). Decompressing and linearizing a PDF can restore compatibility with these systems.
For security and forensic analysis, a decompressed PDF exposes all embedded objects — JavaScript actions, launch annotations, embedded files, and URI actions — in plaintext, making it much easier to audit a suspicious document for malicious payloads without executing its contents.
Inspect PDF structure for debugging
Read content streams as human-readable PDF operators to diagnose rendering issues or understand document structure.
Compatibility with legacy PDF tools
Produce uncompressed PDFs compatible with older libraries that don't support PDF 1.5+ cross-reference streams.
Security audit of suspicious PDFs
Expose all embedded objects, JavaScript, and URI actions in plaintext for safe analysis without executing the document.
Prepare PDFs for low-level editing
Decompress before manually patching specific PDF objects or bytes using a hex editor or custom processing script.
- 1
Upload the compressed PDF
Select or drag in the PDF whose streams you want to decompress. Most PDF files use compression by default, so nearly any standard PDF is a valid input.
- 2
Decompress streams
Click Decompress PDF to inflate all FlateDecode streams and convert xref streams to traditional cross-reference tables, making the full object graph visible as ASCII text.
- 3
Download the decompressed file
Download the resulting PDF — it will be substantially larger than the original but fully inspectable in any text editor or PDF analysis tool.
FlateDecode stream inflation
Inflates all zlib-compressed content streams so PDF drawing operators are readable as plain text in the output file.
xref stream to table conversion
Converts PDF 1.5+ cross-reference streams back to traditional xref tables for compatibility with legacy parsers and viewers.
Client-side processing
Decompression runs in your browser — no sensitive document contents are transmitted to any server.
Full object graph exposure
All embedded objects including JavaScript, annotations, and attachments become plaintext-visible for comprehensive auditing.
Found this tool useful?
Share your experience and help others discover it.