TL;DR

A file refuses to become a PDF. The output is blank, or the tool sits there, or you get something that looks nothing like the source.

Almost every case is one of six things:

  1. The extension is lying about the format — a .csv that's actually a spreadsheet, a .txt that's actually a PDF
  2. The encoding is wrong — text file saved in a non-UTF-8 encoding, showing as mojibake or nothing
  3. The format genuinely isn't supported.docx, .xlsx, .pptx and friends are containers, not documents
  4. The file is enormous — not a limit in the tool, a limit in your machine's memory
  5. The file is corrupt or truncated — an interrupted download
  6. The content is empty — a CSV with headers and no rows, an HTML file whose content is fetched by JavaScript

Convert: Anything to PDF handles 14 formats locally with no size cap and no conversion limit — which means when something fails, it's almost never a quota. It's one of the six above, and this post is how to tell which.


First: what should happen

Convert: Anything to PDF supports these, on-device:

CategoryFormats
ImagesJPG/JPEG, PNG, WebP, SVG, GIF, BMP
Text & markupTXT, HTML (local file), Markdown, JSON, XML
DataCSV (auto-formatted table)
WorkflowExcel → CSV → PDF
WebActive browser tab

Everything runs in your browser. Nothing is uploaded, there's no size limit imposed by us, no watermark, and no cap on how many files you convert.

That last point matters diagnostically: with a hosted converter, "it stopped working" is often just the free tier's daily limit. With local conversion, a failure is a real failure, and it has a real cause.


Cause 1: The extension is lying

Symptom: the file converts, and the output is gibberish, blank, or a wall of unreadable symbols.

A file extension is a naming convention, not a fact. Nothing enforces it. Rename a JPEG to .txt and your OS will happily let you, and every tool downstream will believe it.

This is more common than it sounds because of how files reach us:

  • Export tools that write .csv but produce a tab-separated file, or a full .xlsx
  • "Download as text" buttons that emit HTML
  • Files renamed by someone trying to get past an upload filter
  • Cloud storage that appends or strips extensions on download

How to check: open the file in a plain text editor.

  • Starts with %PDF- → it's a PDF already
  • Starts with PK and then binary noise → it's a ZIP container (which means .docx, .xlsx, .pptx, or an actual zip)
  • Starts with <!DOCTYPE html or <html → it's HTML
  • Starts with { or [ → JSON
  • Starts with <?xml → XML
  • Readable columns separated by commas → genuinely CSV
  • Binary noise from byte one → an image or other binary format

The fix: rename it to what it actually is, then convert.

Cause 2: Encoding

Symptom: the text converts but shows é where é should be, or question marks, or empty boxes.

Text files don't record their own encoding. A file saved as Windows-1252, ISO-8859-1, or UTF-16 read as UTF-8 produces predictable garbage.

Common sources: older Windows applications, database exports with default settings, CSVs from accounting or banking software, anything from a legacy line-of-business system.

How to check: open in a text editor that shows encoding — VS Code displays it bottom-right, Notepad++ has an Encoding menu.

The fix: re-save as UTF-8.

  • VS Code: click the encoding indicator → "Save with Encoding" → UTF-8
  • Notepad++: Encoding → Convert to UTF-8
  • Excel: Save As → "CSV UTF-8 (Comma delimited)" — a genuinely different option from plain "CSV"

That last one solves a large share of real-world CSV problems on its own. If you export from Excel regularly and see accented characters break, this is why.

Related but different: empty boxes (□□□) rather than wrong characters usually means a font problem, not an encoding one — the characters decoded fine, but no installed font has glyphs for them. Install a font covering that script.

Cause 3: The format genuinely isn't supported

Symptom: you select a .docx or .xlsx and nothing happens, or the output is nonsense.

Modern Office files are ZIP archives containing XML, plus a rendering model, plus fonts, plus embedded objects. Converting one faithfully means implementing a large part of a word processor. That's not a gap in a browser extension — it's a different product.

What to do instead, per format:

FormatRoute
.docx, .docWord / Google Docs / LibreOffice → Export as PDF
.xlsx, .xlsSave as CSV → convert. Or Excel's own Export as PDF
.pptx, .pptPowerPoint / Slides → Export as PDF
.pages, .numbers, .keyApple apps → Export as PDF
.odt, .odsLibreOffice → Export as PDF
.psd, .ai, .inddAdobe app → Export as PDF
.eml, .msgOpen in mail client → Print to PDF
.heicConvert to JPG first, then convert

The Excel-to-CSV route is worth knowing properly, because it's the one people use most. Save the sheet as CSV, then convert — Convert: Anything to PDF renders CSV as a formatted table and switches to landscape automatically when there are 6+ columns, which is much better output than most tools manage.

What you lose: formulas become their computed values, formatting and colours go, charts don't survive, and multi-sheet workbooks need one CSV per sheet. What you gain: a clean, readable table with no upload. For data, that's usually the right trade. For a formatted financial report you're presenting, use Excel's own PDF export.

Cause 4: The file is too large

Symptom: the tab freezes, the conversion never finishes, or Chrome shows the "page unresponsive" dialog.

There's no size limit in the extension. The limit is your machine — specifically the memory available to a browser tab, which is finite regardless of how much RAM you have.

Where it bites:

  • Very large CSVs (tens of thousands of rows), each becoming a table row to lay out
  • Extremely high-resolution images, especially uncompressed BMP or PNG
  • Merging dozens of large images at once
  • A single very long text or Markdown file

The fixes, in order:

  1. Split the file. A 40,000-row CSV as four 10,000-row files converts fine and is more readable anyway.
  2. Resize images before converting. A 6000px-wide photo has far more detail than any PDF page needs. 2000px on the long edge is plenty.
  3. Merge in batches. Twelve images at a time rather than sixty.
  4. Close other tabs. They're competing for the same memory.

Cause 5: The file is corrupt

Symptom: nothing happens at all, or the output is truncated partway through.

Usually an interrupted download or a bad transfer.

How to check: open it in its native application. If Preview won't show the image and your editor shows a truncated file, it's the file.

The fix: download it again. Check the file size against what the source says it should be — a truncated download is often obviously short.

Cause 6: There's nothing in it

Symptom: a PDF is produced. It's blank, or a single page with a header row and nothing else.

Three flavours:

Empty CSV. Headers, no rows. Common with filtered exports where the filter matched nothing.

JavaScript-dependent HTML. A local .html file whose actual content is fetched at runtime. Converting the file converts the shell. Open it in a browser tab and use Convert: Web to PDF instead — that captures the rendered result after JavaScript runs.

Whitespace-only text. A file that's technically non-empty but contains only spaces and newlines.


The five-step routine

When something won't convert:

  1. Open it in a text editor and look at the first line. Resolves cause 1 immediately.
  2. Check the encoding indicator. Resolves cause 2.
  3. Check it's a supported format. If it's an Office file, export from the source app.
  4. Check the size. Over ~50MB or 10,000+ rows, split it.
  5. Open it in its native app. If that fails too, the file's broken.

Five checks, under two minutes, and one of them is the answer nearly every time.


How this compares to hosted converters

Different tools fail differently, and knowing which kind you're using tells you where to look.

Local extensionHosted converter (Smallpdf, iLovePDF, PDFCrowd)
Size limitsYour machine's memoryHard caps on free tiers, often 5–10MB
Daily limitsNoneUsually 2–3 free conversions
Where the file goesNowhereTheir servers
Failure causesThe six aboveThe six above, plus quotas, timeouts, and queues
Diagnosing a failureYou can inspect the fileOften just "conversion failed"
Office formatsNot supportedOften supported
WatermarksNeverSometimes, tier-dependent

The honest trade: hosted services handle .docx and .xlsx because they run real conversion software server-side, and that's a genuine advantage if you convert Office files constantly. What you pay for it is that the file leaves your machine, plus quotas that appear at inconvenient moments.

For everything in the 14 supported formats, local conversion is faster, unmetered, and doesn't put your document on someone else's infrastructure. For a .docx, use Word's own export — it's better output than any converter will give you anyway.


Frequently asked questions

Why is my converted PDF blank?

Either the source is genuinely empty (a CSV with only headers, a whitespace-only text file), or it's a local HTML file whose content loads via JavaScript — converting the file gets the empty shell. For the second case, open the file in a browser tab and use Convert: Web to PDF, which captures the page after JavaScript has run.

Why can't I convert a Word or Excel file directly?

.docx and .xlsx are ZIP archives of XML plus a full rendering model — converting them faithfully means implementing most of a word processor. Export to PDF from the app that made them, or for spreadsheets, save as CSV and convert that. The CSV route produces a clean formatted table and auto-switches to landscape for wide data.

My text file shows strange characters like é instead of é. Why?

The file isn't UTF-8 — it's probably Windows-1252 or ISO-8859-1, common from older Windows software and database exports. Open it in VS Code or Notepad++ and re-save as UTF-8. If you're exporting from Excel, choose "CSV UTF-8" rather than plain "CSV".

Is there a file size limit?

Not one we impose. The practical limit is your browser tab's memory. Very large CSVs (tens of thousands of rows), huge uncompressed images, or merging many large files at once can exhaust it. Split large files, resize images to around 2000px on the long edge, and merge in batches.

The file has the right extension but converts to gibberish. What's wrong?

The extension is probably wrong. Nothing enforces file extensions, and export tools frequently mislabel their output. Open the file in a text editor: %PDF- means it's a PDF, PK plus binary means a ZIP-based Office file, <html means HTML. Rename to the true format and convert again.

Why do I see empty boxes instead of characters?

That's a font issue rather than an encoding one — the characters decoded correctly, but no installed font has glyphs for them. Common with CJK, Arabic, or Indic scripts on a system without those fonts. Install a font covering the script (Noto is the free, comprehensive family) and re-convert.

Do I get a limited number of free conversions?

No. Convert: Anything to PDF has no conversion cap, no row limit, no watermark, and no paid tier. Because everything runs on your machine, there's no server metering anything.


Bottom line

Conversion failures feel opaque and almost never are. Six causes cover essentially all of them, and the first diagnostic — opening the file in a text editor and reading the first line — resolves the most common one on its own.

Mislabelled extension, wrong encoding, unsupported container format, memory exhaustion, corrupt download, empty content. Check in that order.

And when it's an Office file: don't fight it. Export from the app that made it. That's not a workaround, it's the correct route — the source application knows the document's layout better than any converter ever will.

Convert: Anything to PDF is free, unmetered, and local. If your problem is a web page rather than a file, Convert: Web to PDF has a full troubleshooting section in its FAQ.

Also free, also ours: CineMan AI — for when the file finally converts and you've earned an evening off.